Advanced Logic

Table of Contents

Proof systems and derivation

Proof systems

Hilbert systems:

Sufficient to have 2 axioms and a rule:

Rules will be given, don’t need to be memorized.

Admissible rule:

Admissible rule definition

Proof system K is sound and complete with respect to all frames, ⊢K φ iff ⊨ φ.

Soundness and completeness results (note: the frame classes need to be memorized)

Example of derivation

Give derivation in K of ◇ φ ∧ □ (φ → ψ) → ◇ ψ. Same as example in book MLOM page 52.

First, work backwards from the goal towards an axiom or tautology:

◇ φ ∧ □ (φ → ψ) → ◇ ψ ≡ □ (φ → ψ) → (◇ φ → ◇ ψ)                 [you can rewrite a conjunction as an implication]
                      ≡ □ (φ → ψ) → (¬ □ ¬ φ → ¬ □ ¬ ψ)         [rewrite diamond to ¬ □ ¬]
                      ≡ □ (φ → ψ) → (□ ¬ ψ → □ ¬ φ)             [rewrite contrapositive (¬ a → ¬ b) to (b → a)]
                      ≡ □ (φ → ψ) → □ (¬ ψ → ¬ φ)               [box distribution over implication]
                      ≡ □ (φ → ψ) → □ (φ → ψ)                   [again contrapositive]
                      ≡ (φ → ψ) → (φ → ψ)                       [because if derivable (a → b), then derivable (□ a → □ b)]

We arrive at a tautology.

Then you write it out in a Hilbert-style proof, starting with the tautology/axiom. PROP means rewriting in propositional logic.

  1. (φ → ψ) → (¬ ψ → ¬ φ). PROP.
  2. □ (φ → ψ) → □ (¬ ψ → ¬ φ). DISTR, 1.
  3. □ (p → q) → □ p → □ q. modal distribution (i.e., this is an axiom in K that we use)
  4. □ (¬ ψ → ¬ φ) → □ ¬ ψ → □ ¬ φ. substitution, 3 (i.e., substitute stuff in the axiom).
  5. □ (φ → ψ) → □ ¬ ψ → □ ¬ φ. PROP, 2, 4.
  6. □ (φ → ψ) → ¬ ◇ ψ → ¬ ◇ φ. definition of ◇, □.
  7. □ (φ → ψ) → ◇ φ → ◇ ψ. PROP, 6.
  8. ◇ φ ∧ □ (φ → ψ) → ◇ ψ. PROP, 7.
Why you can rewrite a conjunction as an implication

You can safely rewrite a conjunction to an implication: (a ∧ b → c) ≡ a → (b → c). Remember that implication is right-associative!

If you don’t trust me, I didn’t trust myself either so I made a truth table:

a b c b → c a ∧ b a → c a ∧ b → c b → (a → c) a → (b → c)
0 0 0 1 0 1 1 1 1
0 0 1 1 0 1 1 1 1
0 1 0 0 0 1 1 1 1
0 1 1 1 0 1 1 1 1
1 0 0 1 0 0 1 1 1
1 0 1 1 0 1 1 1 1
1 1 0 0 1 0 0 0 0
1 1 1 1 1 1 1 1 1

You see that the right three columns all have the same values, so semantically the formulas are the same.