Theory Proof
theory Proof
imports ILL
begin
subsection‹Deep Embedding of Deductions›
text‹
To directly manipulate ILL deductions themselves we deeply embed them as a datatype.
This datatype has a constructor to represent each introduction rule of @{const sequent}, with the
ILL propositions and further deductions those rules use as arguments.
Additionally, it has a constructor to represent premises (sequents assumed to be valid) which
allow us to represent contingent deductions.
The datatype is parameterised by two type variables:
▪ @{typ 'a} represents the propositional variables for the contained ILL propositions, and
▪ @{typ 'l} represents labels we associate with premises.
›