- collection of statements, that are either true or false
- connect multiple proposition using boolean operators
- Tautology: A compound proposition that is always true.
- Contradiction: A compund proposition that is always false.
- Contingency: A compound proposition that is neither a tautology nor a contradiction
- SATisfiable: A compound proposition is SATisfiable, if there is at least one assignment of truth values to the variables that makes the statement true.
- Propostitional logic is the process of assigning a truth table to a proposition.
- Propositions consist of propositional variables, which are combined via propositional connectives.
- Propositional logic is also known as a way of "deducting" a proof from known true statements, and how they are related to each other.
- The "deduction" process is called reasoning.
- Predicates are expressions, with one or multiple variables, that are defined over a specific domain.
- They can be viewed as "extended" propositions.
- It is possible to reduce a predicate to a proposition by "concretizing" the value of a variable or by quantifying it.
- To quantify them, we use operators called "Quantifiers".
- To quantify an expression means to express to which extend a predicate is true over a set of elements. There are two of them:
- ∀ (FOR ALL/FOR ANY/FOR EACH): It is the universal quantifier
- ∃ (THERE EXISTS): It is the existencial quantifier
- Builds upon the ideas of propositional logic, providing a more powerful system for expression and reasoning.
- Propositional logic isn't powerful enough to represent all types of assertions that are used in computer science and mathematics.
- Then it was expanded with the quantifiers to express these more complex statements in terms of predicates, variables and quantifiers.
- Given a forumal in propositional logic, decide if it is satisfiable or not
- SAT solve a problem composed of only boolean operands, and so propositional logic
- SMT extends SAT to arithmetic operands also
- Groundtruth where's SMT/SAT reason upon