Local Open Scope logic_base.
Local Open Scope syntax.
Section PropertiesOfSequentCalculus.
Context (L: Language)
(Gamma: ProofTheory L)
{minL: MinimunLanguage L}.
Definition DeductionMP: Prop :=
forall (Phi: context) (x y: expr), Phi |-- x -> Phi |-- x --> y -> Phi |-- y.
Definition DeductionImpIntro: Prop :=
forall (Phi: context) (x y: expr), Phi;; x |-- y -> Phi |-- x --> y.
Definition DeductionImpElim: Prop :=
forall (Phi: context) (x y: expr), Phi |-- x --> y -> Phi;; x |-- y.
End PropertiesOfSequentCalculus.
Section TheoryOfSequentCalculus.
Context {L: Language}
{Gamma: ProofTheory L}
{minL: MinimunLanguage L}.

(* Specifications: *)
Lemma DeductionMP_DerivableAssu_DeductionWeaken_2_DeductionImpElim:
DeductionMP L Gamma ->
DerivableAssu L Gamma ->
DeductionWeaken L Gamma ->
DeductionImpElim L Gamma.
Lemma DeductionImpIntro_DeductionMP_2_DeductionSubst1:
DeductionImpIntro L Gamma ->
DeductionMP L Gamma ->
DeductionSubst1 L Gamma.
Lemma DeductionImpElim_DeductionSubst1_2_DeductionMP:
DeductionImpElim L Gamma ->
DeductionSubst1 L Gamma ->
DeductionMP L Gamma.