Require Import Relations Omega.
Require Import mathcomp.ssreflect.ssreflect.
Require Import Kstar_def demo hilbert_ref gen_def gen_ref.
Require Import mathcomp.ssreflect.ssreflect.
Require Import Kstar_def demo hilbert_ref gen_def gen_ref.
Lemma soundness s : prv s -> forall (M:cmodel) (w:M), eval s w.
Theorem informative_completeness s :
prv (fImp s fF)
+ (exists2 M:fmodel, #|M| <= 2^(2 * f_size s) & exists w:M, eval s w).
Corollary prv_dec s : decidable (prv s).
Corollary sat_dec s : decidable (exists (M:cmodel) (w:M), eval s w).
Corollary valid_dec s : decidable (forall (M:cmodel) (w:M), eval s w).
Corollary small_models s:
(exists (M:cmodel) (w:M), eval s w) ->
(exists2 M:fmodel, #|M| <= 2^(2 * f_size s) & exists w:M, eval s w).
Correctness of the Gentzen System
Lemma gen_completeness C : gen (C,aVoid) + (exists M : fmodel, sat M C).
Theorem gen_correctness C : gen (C,aVoid) <-> ~ (exists M : cmodel, sat M C).
Equivalence to Segerberg Style Hilbert System