Books
Algorithms and Complexity Theory
Main
Regulament
Guidelines
Midterm
Examen final
Syllabus
Lectures:
1. Introduction
2. The Turing Machine
3. Computing
4. The Universal Turing Machine
5. Undecidable Problems
6. Reductions
Labs:
1. Turing Machines
2. Computing
3. Turing Reductions
4. More Turing Reductions
5. Asymptotic Notations
6. Recurrence
7. Algoritmi nedeterministi
8. Reduceri polinomiale
9. P, NP, NPC, NPH
10. Invarianti la ciclare
11. Tipuri de date abstracte
Formal Languages and Automata
LFA 2020-2021
Echipa
Regulament 2022-2023
Examen 2022-2023
Proiect Etapa 1
Proiect Etapa 2
Proiect Etapa 3
Labs
1. Introduction to Scala/Python
2. Deterministic finite automaton
3. Regular Expressions
4. Regex to NFA
5. Minimal DFA
6. DFA to Regex
7. Closure properties
8. The pumping lemma
9. Context-free languages
10. Context-Free Languages & Lexers
11. Context-Free Languages, Regular grammars and CNF
12. Recap
Programming Paradigms
PP 2021-2022
Team
Rules
Plagiarism
Resurse
Scala Environment
Scala Cheatsheet
Haskell Environment
Ghid de utilizare Hoogle
Haskell Cheatsheet
Lecture
C02: Functii recursive
C03: Functii de ordin superior
C04: Tipuri de date functionale
C05: Liste
C06: Aplicatii cu liste
C07: For expressions si companion objects
C08: Covarianta tipurilor
C09: Introducere in Haskell
C10: Evaluare lenesa
C11: Programare dinamica lenesa
C12: Typeclasses
C13: Monads
C14: The Parser Monad
Labs
L00: Scala Environment Setup
L01: Recursivity in Scala
L02: High Order Functions
L03: Lists in Scala
L04: Data types in Scala
L05: Polymorphism in Scala
L06: For Expressions & More
L07: Lambda Calculus. Intro to Haskell
L08: Lazy Evaluation
L09: Algebraic Data Types
L10: Monads
Homework
Homework 1
Homework 2
Homework 3
Functional Programming
Functional Programming 2022
Team
Rules
Plagiarism
Submission guidelines
Homework 1
Homework 2
Homework 3
Homework 4
Lecture notes
Lec. 02: Recursive functions
Lec. 03: Higher-order functions
Lec. 04: Algebraic datatypes
Lec. 05: Functional vs OO decomposition
Lec. 06: List applications
Lec. 07: For expressions and matrices
Lec. 08: Polymorphism
Lec. 09: Polymorphic expressions
Labs
Lab 01: Scala IDEs
Lab 02: Recursive functions
Lab 03: Higher-order functions
Lab 04: Algebraic Types
Lab 05: Functional vs OO decomposition
Lab 06: List applications
Lab 07: Matrices
Lab 08: Polymorphism