# 15-815 Automated Theorem Proving Assignment 3: Invertibility

The assignment is worth 80 pts, due Tue Feb 17

## Problem 1: Invertibility (30 pts)

An inference rule is invertible if the premises are derivable whenever the conclusion is. In the classical sequent calculus of Section 3.7 of the notes, all rules are invertible simply because each sequent in the premises has more assumptions (about truth and falsehood) than the conclusion. In this exercise we are only concerned with the logical operators of conjunction, disjunction, and negation.

1. Give a formulation of the inference rules that is contraction-free in the sense that the principal formula of the conclusion does not reappear in any of the premises. Take care to define your rules in such a way that they remain invertible.
2. Prove that your formulation is sound and complete with respect to the calculus given in the notes.
3. Prove that your rules are indeed invertible.

## Problem 2: Implementation (20 pts)

Consider the following signature given the library functions from Assignment 2 (see file asst2.sml)

```signature CL =
sig
val decide : P.Prop -> bool
end;
```
1. Define a structure C1_yourid :> CL that implements your rules from Problem 1. Your implementation should take advantage of the invertibility of the rules, but may otherwise be as inefficient as you like.
2. Define a structure C2_yourid :> CL that works via translation to intuitionistic propositional logic and calls your solution from Assignment 2.
3. Discuss the possibility of giving a principled extension of Dyckhoff's decision procedure so it is more efficient on the formulas translated from classical logic.

Also submit a test suite TC_yourid (D : CL) :> TEST (as in Assignment 2) that tests your implementation on some classical propositions.

## Problem 3: Strong Invertibility (30 pts)

An inference rule is strongly invertible if the premises are derivable whenever the conclusion is and, moreover, the premises have derivations of the same or equal height than the conclusion. Here we define the height of a derivation as the number of inferences on the longest path from the conclusion to an initial sequent or axiom.

1. Prove that right rules for conjunction and implication in the intuitionistic sequent calculus are strongly invertible.
2. Prove that a strict version of the disjunction left rule in the intuitionistic sequent calculus that erases the disjunction from both branches, is strongly invertible.
3. Give a counterexample to show that we cannot require the premises of a strongly invertible rule to have proofs of strictly smaller height than the conclusion.

fp@cs
Frank Pfenning