Local Open Scope logic_base.
Local Open Scope syntax.
Local Open Scope kripke_model.
Section Completeness.
Context {L: Language}
{minL: MinimunLanguage L}
{pL: PropositionalLanguage L}
{Gamma: ProofTheory L}
{bSC: BasicSequentCalculus L Gamma}
{mpSC: MinimunSequentCalculus L Gamma}
{ipSC: IntuitionisticPropositionalSequentCalculus L Gamma}
{cpSC: ClassicalPropositionalSequentCalculus L Gamma}
{minAX: MinimunAxiomatization L Gamma}
{ipGamma: IntuitionisticPropositionalLogic L Gamma}
{MD: Model}
{kMD: KripkeModel MD}
{M: Kmodel}
{SM: Semantics L MD}
{tminSM: TrivialMinimunSemantics L MD SM}
{tpSM: TrivialPropositionalSemantics L MD SM}
{kMC: Kmodel -> Prop}.
Context (cP: context -> Prop)
(rel: bijection (Kworlds M) (sig cP)).
Hypothesis AL_MC: at_least (maximal consistent) cP.
Hypothesis LIN_CONSI: Lindenbaum_constructable consistent cP.
Hypothesis TRUTH: forall x: expr, forall m Phi, rel m Phi -> (KRIPKE: M, m |= x <-> proj1_sig Phi x).
Hypothesis CANON: kMC M.

(* Specifications: *)
Lemma general_completeness: strongly_complete Gamma SM (KripkeModelClass _ kMC).
End Completeness.