Lecture presentations (in Slovak)
|
Introduction (symbolic AI, ancient logic and reasoning)
|
|
Propositional logic basics (syntax, semantics, equivalence, entailment, grounding)
|
|
Representation of sentences in propositional logic
|
|
Sentences in Conjunctive Normal Form
(transformations, simplification)
|
|
Inference in propositional logic
(basic inference types)
|
|
Resolution principle for propositional logic
|
|
Conflict-driven clause learning (CDCL) model search for propositional logic
|
|
Problem modelling in propositional logic
|
|
Introduction into SMT (Satisfiability Modulo Theories)
|
|
Late checking for SMT satisfiability and model search
|
|
Early checking for SMT satisfiability and model search
|
|
Predicate logic basics (the 0-th and 1-st order predicate calculus
- syntax and interpretation)
|
|
Resolution principle for predicate logic
|
|
Horn logic (forward and backward chaining of rules)
|
|
Production systems
(Three little pigs
simulation,
99 bottles song)
|
|
Prolog programming language
(Island of liars
and honest people,
99 bottles song)
|
Internet materials/demos
Code experiments
|
Software online tools
|
|
Software download
|
|
Code snippets
|
Students' projects (2018)
Final exam topics
Symbolic AI and logic reasoning
Rational agent
Symbolic artificial intelligence
- Sylogisms (ancient India and Greece)
- Propositional logic
- Foundations of propositional logic
- Syntax (symbols, operators)
- Logical values and interpretation (rules, truth tables)
- Operator characteristics (precedence, commutativity,
associativity, idempotence, truth/falsity preservation)
- Possible worlds (un/satisfiability, validity)
- Equivalence of logical sentences (transformation rules, minimal operator set)
- Grounding of logical sentences (granularity, natural sentence encoding)
- Logical sentence representations
- Basic representations
- Focus on visualisation
- Focus on syntactic simplicity
- Creation of CNF
- Naive transformation to CNF
- Tseitin transformation
Plaisted-Greenbaum encoding
Transformation to kCNF
- Logical entailment and resolution
- Simplification of CNF
- Symbol elimination (from sentence, from clause)
- Clause elimination
- Blocked clause elimination
- Inference in propositional logic
- Inference main tasks (deduction, validity, satisfiability)
- Characteristics of inference procedures
- Inference vs representation (BDD, DNF, CNF - in/direct approach)
- Inference using truth tables
- Enumeration of possible worlds algorithm
- Resolution based inference
- Resolution and contradiction detection
- Resolution algorithm structure
- Special cases treatment (pure literal, tautology, multipresence, clause subsumption)
- Derivation graph
- Useless resolvencies and clause selection strategies
Tablo calculus
Tablo algorithm
Decomposition rules
Rule selections
Tablo calculus vs DNF/CNF
- Search methods
- DPLL algorithm
- Propagations (unit propagation, pure literal propagation)
- Implication and conflict graphs
- Conflict analysis (cuts)
- Conflict clause selection
- Conflict-driven backjumping
- Selection heuristics (DLIS, DLCS, MOM, VSIDS)
- Modelling in propositional logic
- Satisfiability based procedure
- Modelling algorithm
- Binary variables (design and encoding)
- Constraints design (minimal set)
- Cardinality constraints
- Constraint types and replacements
- Binomial encoding
Binary encoding
Sequence counnter encoding
- Symmetry and its breaking
- Domain variables encoding
- Direct encoding
- Logarithmic encoding
- Sequential encoding
Hierarchical encoding
- Constraint encoding
Pseudo Boolean constraint encoding
- Satisfiability modulo theories
- Atoms as symbols with inner structure
- Syntax of sentences with modulo theories
- Satisfiability and T-satisfiability
- Selected modulo theories
- Difference logic
- Linear arithmetics
- Search for model
- Early checking
- Late checking
- T-satisfiability
- Fourier-Motzikin variable elimination
- Constraint types
- FM Algorithm
- Algorithm complexity
One phase simplex method
Basic principle
Constraints transformation
Usage of simplex method
- Direct encoding
- Direct encoding algoorithm for difference logic
- Determining values of variables
Direct encoding for linear arithmetics
Reduction of number of generated constraints
- Predicate logic
- Zero order predicate calculus
- Syntax
- Predicates, constants and functions
- Interpretation
- Interpretation of constants
- Interpretation of function/predicate symbols
- Interpretation of logical sentences
- Possible worlds and models
- First order predicate calculus
- Syntax with variables
- Quantifiers
- Universal and existential quantifiers and their duality
- Negation of quantifiers
- Characteristics of quantifiers (commutativity, distributivity)
- Bounded and free variables
- Interpretation of variables
- Transformation of sentences into CNF
- Inference in predicate logic
- Refutation proof using resolution
- Unification of terms (unifiers, term substitution)
- Unification algorithm
- Generalised resolution
- Variable colisions
- Derivation graph
- Paramodulation
- Answering questions
Tablo calculus
Rules for quantifier elimination
Infinite branch developing
- Horn predicate logic
- Horn clauses (rules, facts, goals)
- Forward chaining of rules
- Forward chaining of rules vs resolution
- Hyperresolution
- Forward chaining algorithm
- Backward chaining of rules
- Backward chaining of rules vs resolution
- Input resolution strategy
- Backward chaining algorithm
- Clips programming language
- ordering hyperresolutions (rule priority)
- ordering unifiers
- production system activity algorithm
- activation of rules
- rule firing
Rete network for pattern matching
- Prolog programming language
- A bit of history, Prolog and KKUI
- Interaction with Prolog
- Syntax (constants, variables, structures)
- Database (facts, rules)
- Unification of terms
- Computation as database search
- Block model
|