Article HENMODEL, MML version 4.99.1005

:: HENMODEL:th 1
theorem
for b1 being Element of NAT
for b2 being non empty finite Element of bool NAT
for b3 being Function-like quasi_total Relation of b1,b2
      st (ex b4 being Element of NAT st
            succ b4 = b1) &
         b3 is one-to-one &
         rng b3 = b2 &
         (for b4, b5 being Element of NAT
               st b5 in dom b3 & b4 in dom b3 & b4 < b5
            holds b3 . b4 in b3 . b5)
   holds b3 . union b1 = union rng b3;

:: HENMODEL:th 2
theorem
for b1 being non empty finite Element of bool NAT holds
   union b1 in b1 &
    (for b2 being set
          st b2 in b1 & not b2 in union b1
       holds b2 = union b1);

:: HENMODEL:th 3
theorem
for b1 being non empty set
for b2 being Function-like quasi_total Relation of NAT,b1
for b3 being finite set
      st (for b4, b5 being Element of NAT
               st b5 in dom b2 & b4 in dom b2 & b4 < b5
            holds b2 . b4 c= b2 . b5) &
         b3 c= union rng b2
   holds ex b4 being Element of NAT st
      b3 c= b2 . b4;

:: HENMODEL:prednot 1 => HENMODEL:pred 1
definition
  let a1 be Element of bool CQC-WFF;
  let a2 be Element of CQC-WFF;
  pred A1 |- A2 means
    ex b1 being FinSequence of CQC-WFF st
       rng b1 c= a1 & |- b1 ^ <*a2*>;
end;

:: HENMODEL:dfs 1
definiens
  let a1 be Element of bool CQC-WFF;
  let a2 be Element of CQC-WFF;
To prove
     a1 |- a2
it is sufficient to prove
  thus ex b1 being FinSequence of CQC-WFF st
       rng b1 c= a1 & |- b1 ^ <*a2*>;

:: HENMODEL:def 2
theorem
for b1 being Element of bool CQC-WFF
for b2 being Element of CQC-WFF holds
      b1 |- b2
   iff
      ex b3 being FinSequence of CQC-WFF st
         rng b3 c= b1 & |- b3 ^ <*b2*>;

:: HENMODEL:attrnot 1 => HENMODEL:attr 1
definition
  let a1 be Element of bool CQC-WFF;
  attr a1 is Consistent means
    for b1 being Element of CQC-WFF
          st a1 |- b1
       holds not a1 |- 'not' b1;
end;

:: HENMODEL:dfs 2
definiens
  let a1 be Element of bool CQC-WFF;
To prove
     a1 is Consistent
it is sufficient to prove
  thus for b1 being Element of CQC-WFF
          st a1 |- b1
       holds not a1 |- 'not' b1;

:: HENMODEL:def 3
theorem
for b1 being Element of bool CQC-WFF holds
      b1 is Consistent
   iff
      for b2 being Element of CQC-WFF
            st b1 |- b2
         holds not b1 |- 'not' b2;

:: HENMODEL:attrnot 2 => HENMODEL:attr 1
notation
  let a1 be Element of bool CQC-WFF;
  antonym Inconsistent for Consistent;
end;

:: HENMODEL:attrnot 3 => HENMODEL:attr 2
definition
  let a1 be FinSequence of CQC-WFF;
  attr a1 is Consistent means
    for b1 being Element of CQC-WFF
          st |- a1 ^ <*b1*>
       holds not |- a1 ^ <*'not' b1*>;
end;

:: HENMODEL:dfs 3
definiens
  let a1 be FinSequence of CQC-WFF;
To prove
     a1 is Consistent
it is sufficient to prove
  thus for b1 being Element of CQC-WFF
          st |- a1 ^ <*b1*>
       holds not |- a1 ^ <*'not' b1*>;

:: HENMODEL:def 4
theorem
for b1 being FinSequence of CQC-WFF holds
      b1 is Consistent
   iff
      for b2 being Element of CQC-WFF
            st |- b1 ^ <*b2*>
         holds not |- b1 ^ <*'not' b2*>;

:: HENMODEL:attrnot 4 => HENMODEL:attr 2
notation
  let a1 be FinSequence of CQC-WFF;
  antonym Inconsistent for Consistent;
end;

:: HENMODEL:th 4
theorem
for b1 being Element of bool CQC-WFF
for b2 being FinSequence of CQC-WFF
      st b1 is Consistent & rng b2 c= b1
   holds b2 is Consistent;

:: HENMODEL:th 5
theorem
for b1 being Element of CQC-WFF
for b2, b3 being FinSequence of CQC-WFF
      st |- b2 ^ <*b1*>
   holds |- (b2 ^ b3) ^ <*b1*>;

:: HENMODEL:th 6
theorem
for b1 being Element of bool CQC-WFF holds
      b1 is Inconsistent
   iff
      for b2 being Element of CQC-WFF holds
         b1 |- b2;

:: HENMODEL:th 7
theorem
for b1 being Element of bool CQC-WFF
      st b1 is Inconsistent
   holds ex b2 being Element of bool CQC-WFF st
      b2 c= b1 & b2 is finite & b2 is Inconsistent;

:: HENMODEL:th 8
theorem
for b1 being Element of bool CQC-WFF
for b2, b3 being Element of CQC-WFF
      st b1 \/ {b2} |- b3
   holds ex b4 being FinSequence of CQC-WFF st
      rng b4 c= b1 &
       |- (b4 ^ <*b2*>) ^ <*b3*>;

:: HENMODEL:th 9
theorem
for b1 being Element of bool CQC-WFF
for b2 being Element of CQC-WFF holds
      b1 |- b2
   iff
      b1 \/ {'not' b2} is Inconsistent;

:: HENMODEL:th 10
theorem
for b1 being Element of bool CQC-WFF
for b2 being Element of CQC-WFF holds
      b1 |- 'not' b2
   iff
      b1 \/ {b2} is Inconsistent;

:: HENMODEL:th 11
theorem
for b1 being Function-like quasi_total Relation of NAT,bool CQC-WFF
      st for b2, b3 being Element of NAT
              st b3 in dom b1 & b2 in dom b1 & b2 < b3
           holds b1 . b2 is Consistent & b1 . b2 c= b1 . b3
   holds union rng b1 is Consistent;

:: HENMODEL:th 12
theorem
for b1 being Element of bool CQC-WFF
for b2 being non empty set
   st b1 is Inconsistent
for b3 being interpretation of b2
for b4 being Element of Valuations_in b2 holds
   not b3,b4 |= b1;

:: HENMODEL:th 13
theorem
{VERUM} is Consistent;

:: HENMODEL:exreg 1
registration
  cluster Consistent Element of bool CQC-WFF;
end;

:: HENMODEL:funcnot 1 => HENMODEL:func 1
definition
  func HCar -> non empty set equals
    bound_QC-variables;
end;

:: HENMODEL:def 5
theorem
HCar = bound_QC-variables;

:: HENMODEL:funcnot 2 => HENMODEL:func 2
definition
  let a1 be Element of QC-pred_symbols;
  let a2 be CQC-variable_list-like QC-variable_list of the_arity_of a1;
  redefine func a1 ! a2 -> Element of CQC-WFF;
end;

:: HENMODEL:modenot 1 => HENMODEL:mode 1
definition
  let a1 be Consistent Element of bool CQC-WFF;
  mode Henkin_interpretation of A1 -> interpretation of HCar means
    for b1 being Element of QC-pred_symbols
    for b2 being Element of relations_on HCar
       st it . b1 = b2
    for b3 being set holds
          b3 in b2
       iff
          ex b4 being CQC-variable_list-like QC-variable_list of the_arity_of b1 st
             b3 = b4 & a1 |- b1 ! b4;
end;

:: HENMODEL:dfs 5
definiens
  let a1 be Consistent Element of bool CQC-WFF;
  let a2 be interpretation of HCar;
To prove
     a2 is Henkin_interpretation of a1
it is sufficient to prove
  thus for b1 being Element of QC-pred_symbols
    for b2 being Element of relations_on HCar
       st a2 . b1 = b2
    for b3 being set holds
          b3 in b2
       iff
          ex b4 being CQC-variable_list-like QC-variable_list of the_arity_of b1 st
             b3 = b4 & a1 |- b1 ! b4;

:: HENMODEL:def 6
theorem
for b1 being Consistent Element of bool CQC-WFF
for b2 being interpretation of HCar holds
      b2 is Henkin_interpretation of b1
   iff
      for b3 being Element of QC-pred_symbols
      for b4 being Element of relations_on HCar
         st b2 . b3 = b4
      for b5 being set holds
            b5 in b4
         iff
            ex b6 being CQC-variable_list-like QC-variable_list of the_arity_of b3 st
               b5 = b6 & b1 |- b3 ! b6;

:: HENMODEL:funcnot 3 => HENMODEL:func 3
definition
  func valH -> Element of Valuations_in HCar equals
    id bound_QC-variables;
end;

:: HENMODEL:def 7
theorem
valH = id bound_QC-variables;

:: HENMODEL:th 14
theorem
for b1 being Element of NAT
for b2 being CQC-variable_list-like QC-variable_list of b1 holds
   valH *' b2 = b2;

:: HENMODEL:th 15
theorem
for b1 being FinSequence of CQC-WFF holds
   |- b1 ^ <*VERUM*>;

:: HENMODEL:th 16
theorem
for b1 being Consistent Element of bool CQC-WFF
for b2 being Henkin_interpretation of b1 holds
      b2,valH |= VERUM
   iff
      b1 |- VERUM;

:: HENMODEL:th 17
theorem
for b1 being Element of NAT
for b2 being Element of b1 -ary_QC-pred_symbols
for b3 being CQC-variable_list-like QC-variable_list of b1
for b4 being Consistent Element of bool CQC-WFF
for b5 being Henkin_interpretation of b4 holds
      b5,valH |= b2 ! b3
   iff
      b4 |- b2 ! b3;