Local Open Scope logic_base.
Local Open Scope syntax.
Class ClassicalPropositionalLogic (L: Language) {minL: MinimunLanguage L} {pL: PropositionalLanguage L} (Gamma: ProofTheory L) {minAX: MinimunAxiomatization L Gamma} {ipGamma: IntuitionisticPropositionalLogic L Gamma} := {
excluded_middle: forall x, |-- x || ~~ x
}.
Class ClassicalPropositionalSequentCalculus (L: Language) {minL: MinimunLanguage L} {pL: PropositionalLanguage L} (Gamma: ProofTheory L) {bSC: BasicSequentCalculus L Gamma} {minSC: MinimunSequentCalculus L Gamma} {ipSC: IntuitionisticPropositionalSequentCalculus L Gamma} := {
derivable_excluded_middle: forall Phi x, Phi |-- x || ~~ x
}.
Section Axiomatization2SequentCalculus.
Context {L: Language}
{minL: MinimunLanguage L}
{pL: PropositionalLanguage L}
{Gamma: ProofTheory L}
{minAX: MinimunAxiomatization L Gamma}
{ipGamma: IntuitionisticPropositionalLogic L Gamma}
{cpGamma: ClassicalPropositionalLogic L Gamma}
{SC: NormalSequentCalculus L Gamma}
{bSC: BasicSequentCalculus L Gamma}
{minSC: MinimunSequentCalculus L Gamma}
{ipSC: IntuitionisticPropositionalSequentCalculus L Gamma}.

(* Specifications: *)
Lemma Axiomatization2SequentCalculus_cpSC: ClassicalPropositionalSequentCalculus L Gamma.
End Axiomatization2SequentCalculus.