:: Substitution in First-Order Formulas -- Part II. {T}he Construction of
:: First-Order Formulas
:: by Patrick Braselmann and Peter Koepke
::
:: Received September 25, 2004
:: Copyright (c) 2004-2026 Association of Mizar Users
:: (Stowarzyszenie Uzytkownikow Mizara, Bialystok, Poland).
:: This code can be distributed under the GNU General Public Licence
:: version 3.0 or later, or the Creative Commons Attribution-ShareAlike
:: License version 3.0 or later, subject to the binding interpretation
:: detailed in file COPYING.interpretation.
:: See COPYING.GPL and COPYING.CC-BY-SA for the full text of these
:: licenses, or see http://www.gnu.org/licenses/gpl.html and
:: http://creativecommons.org/licenses/by-sa/3.0/.
environ
vocabularies NUMBERS, SUBSET_1, CQC_LANG, QC_LANG1, SUBSTUT1, MCART_1,
MARGREL1, REALSET1, FINSEQ_1, ORDINAL4, XBOOLEAN, CARD_1, ZFMISC_1,
RELAT_1, BVFUNC_2, XBOOLE_0, FUNCT_1, TARSKI, ZF_LANG, FUNCT_4, FUNCOP_1,
CLASSES2, SUBLEMMA, PARTFUN1, CQC_SIM1, ARYTM_3, XXREAL_0, ARYTM_1,
SUBSTUT2, NAT_1;
notations TARSKI, XBOOLE_0, ZFMISC_1, XTUPLE_0, ORDINAL1, SUBSET_1, FINSEQ_1,
FUNCT_1, QC_LANG1, QC_LANG2, QC_LANG3, PARTFUN1, NUMBERS, XCMPLX_0,
XXREAL_0, NAT_1, CQC_LANG, FUNCOP_1, RELAT_1, FUNCT_4, FUNCT_2, CQC_SIM1,
DOMAIN_1, MCART_1, SUBSTUT1, SUBLEMMA;
constructors PARTFUN1, DOMAIN_1, XXREAL_0, NAT_1, INT_1, QC_LANG3, CQC_SIM1,
SUBLEMMA, RELSET_1, XTUPLE_0, NUMBERS;
registrations XBOOLE_0, SUBSET_1, RELAT_1, FUNCT_1, ORDINAL1, FUNCOP_1,
XREAL_0, NAT_1, INT_1, QC_LANG1, CQC_LANG, SUBSTUT1, SUBLEMMA, XTUPLE_0;
requirements REAL, NUMERALS, SUBSET, BOOLE, ARITHM;
definitions TARSKI;
equalities FUNCOP_1;
expansions TARSKI;
theorems TARSKI, FUNCT_1, XBOOLE_0, XBOOLE_1, CQC_LANG, QC_LANG1, ZFMISC_1,
RELAT_1, QC_LANG3, PARTFUN1, RELSET_1, QC_LANG2, SUBSTUT1, FUNCT_4,
SUBLEMMA, CQC_SIM1, FUNCT_2, NAT_1, INT_1, XREAL_1, XXREAL_0, FUNCOP_1,
CARD_1, XTUPLE_0;
schemes CQC_LANG, NAT_1;
begin :: Further Properties of Substitution
reserve Al for QC-alphabet;
reserve a,b,b1 for object,
i,j,k,n for Nat,
p,q,r,s for Element of CQC-WFF(Al),
x,y,y1 for bound_QC-variable of Al,
P for QC-pred_symbol of k,Al,
l,ll for CQC-variable_list of k,Al,
Sub,Sub1 for CQC_Substitution of Al,
S,S1,S2 for Element of CQC-Sub-WFF(Al),
P1,P2 for Element of QC-pred_symbols(Al);
theorem Th1:
for Sub holds ex S st S`1 = VERUM(Al) & S`2 = Sub
proof
let Sub;
VERUM(Al) = <*[0,0]*> by QC_LANG1:def 14;
then reconsider S = [VERUM(Al),Sub] as Element of QC-Sub-WFF(Al)
by SUBSTUT1:def 16;
take S;
set X = { G where G is Element of QC-Sub-WFF(Al) :
G`1 is Element of CQC-WFF(Al) };
X = CQC-Sub-WFF(Al) by SUBSTUT1:def 39;
then A1: for G being Element of QC-Sub-WFF(Al) holds
G`1 is Element of CQC-WFF(Al) implies G in CQC-Sub-WFF(Al);
S`1 = VERUM(Al);
then reconsider S as Element of CQC-Sub-WFF(Al) by A1;
S`2 = Sub;
hence thesis;
end;
Lm1: for k,l being Nat st P is (QC-pred_symbol of k,Al) & P is (
QC-pred_symbol of l,Al) holds k = l
proof
let k,l be Nat;
assume
A1: P is (QC-pred_symbol of k,Al) & P is (QC-pred_symbol of l,Al);
then P in l-ary_QC-pred_symbols(Al);
then P in {P2 : the_arity_of P2 = l} by QC_LANG1:def 9;
then
A2: ex P2 st P2 = P & the_arity_of P2 = l;
P in k-ary_QC-pred_symbols(Al) by A1;
then P in {P1 : the_arity_of P1 = k} by QC_LANG1:def 9;
then ex P1 st P1 = P & the_arity_of P1 = k;
hence thesis by A2;
end;
theorem Th2:
for Sub holds ex S st S`1 = P!ll & S`2 = Sub
proof
let Sub;
P is QC-pred_symbol of the_arity_of P,Al by QC_LANG3:1;
then k = the_arity_of P by Lm1;
then [<*P*>^ll,Sub] in QC-Sub-WFF(Al) & len ll = the_arity_of P
by CARD_1:def 7,SUBSTUT1:def 16;
then reconsider S = [P!ll,Sub] as Element of QC-Sub-WFF(Al)
by QC_LANG1:def 12;
set X = { G where G is Element of QC-Sub-WFF(Al) :
G`1 is Element of CQC-WFF(Al) };
X = CQC-Sub-WFF(Al) by SUBSTUT1:def 39;
then A1: for G being Element of QC-Sub-WFF(Al) holds
G`1 is Element of CQC-WFF(Al) implies G in CQC-Sub-WFF(Al);
take S;
S`1 = P!ll;
then reconsider S as Element of CQC-Sub-WFF(Al) by A1;
S`2 = Sub;
hence thesis;
end;
theorem
for k,l being Nat st P is (QC-pred_symbol of k,Al) & P is (
QC-pred_symbol of l,Al) holds k = l by Lm1;
theorem Th4:
(for Sub holds ex S st S`1 = p & S`2 = Sub) implies for Sub holds
ex S st S`1 = 'not' p & S`2 = Sub
proof
assume
A1: for Sub holds ex S st S`1 = p & S`2 = Sub;
let Sub;
consider S such that
A2: S`1 = p & S`2 = Sub by A1;
S = [p,Sub] by A2,SUBSTUT1:10;
then [p,Sub] in QC-Sub-WFF(Al);
then [@p,Sub] in QC-Sub-WFF(Al) by QC_LANG1:def 13;
then [<*[1, 0]*>^@p,Sub] in QC-Sub-WFF(Al) by SUBSTUT1:def 16;
then reconsider S = ['not' p,Sub] as Element of QC-Sub-WFF(Al)
by QC_LANG1:def 15;
set X = { G where G is Element of QC-Sub-WFF(Al) :
G`1 is Element of CQC-WFF(Al) };
X = CQC-Sub-WFF(Al) by SUBSTUT1:def 39;
then A3: for G being Element of QC-Sub-WFF(Al) holds
G`1 is Element of CQC-WFF(Al) implies G in CQC-Sub-WFF(Al);
take S;
S`1 = 'not' p;
then reconsider S as Element of CQC-Sub-WFF(Al) by A3;
S`2 = Sub;
hence thesis;
end;
theorem Th5:
(for Sub holds ex S st S`1 = p & S`2 = Sub) & (for Sub holds ex S
st S`1 = q & S`2 = Sub) implies for Sub holds ex S st S`1 = p '&' q & S`2 = Sub
proof
assume that
A1: for Sub holds ex S st S`1 = p & S`2 = Sub and
A2: for Sub holds ex S st S`1 = q & S`2 = Sub;
let Sub;
consider S1 such that
A3: S1`1 = p & S1`2 = Sub by A1;
consider S2 such that
A4: S2`1 = q & S2`2 = Sub by A2;
S2 = [q,Sub] by A4,SUBSTUT1:10;
then [q,Sub] in QC-Sub-WFF(Al);
then
A5: [@q,Sub] in QC-Sub-WFF(Al) by QC_LANG1:def 13;
S1 = [p,Sub] by A3,SUBSTUT1:10;
then [p,Sub] in QC-Sub-WFF(Al);
then [@p,Sub] in QC-Sub-WFF(Al) by QC_LANG1:def 13;
then [<*[2, 0]*>^@p^@q,Sub] in QC-Sub-WFF(Al) by A5,SUBSTUT1:def 16;
then reconsider S = [p '&' q,Sub] as Element of QC-Sub-WFF(Al)
by QC_LANG1:def 16;
set X = { G where G is Element of QC-Sub-WFF(Al) :
G`1 is Element of CQC-WFF(Al) };
X = CQC-Sub-WFF(Al) by SUBSTUT1:def 39;
then A6: for G being Element of QC-Sub-WFF(Al) holds
G`1 is Element of CQC-WFF(Al) implies G in CQC-Sub-WFF(Al);
take S;
S`1 = p '&' q;
then reconsider S as Element of CQC-Sub-WFF(Al) by A6;
S`2 = Sub;
hence thesis;
end;
definition
let Al, p, Sub;
redefine func [p,Sub] -> Element of [:QC-WFF(Al),vSUB(Al):]; :: redefines [ (TARSKI, definition)
coherence by ZFMISC_1:def 2;
end;
theorem Th6:
dom RestrictSub(x,All(x,p),Sub) misses {x}
proof
set finSub = RestrictSub(x,All(x,p),Sub);
now
set q = All(x,p);
set X = {y1 : y1 in still_not-bound_in q & y1 is Element of dom Sub & y1
<> x & y1 <> Sub.y1};
assume dom finSub meets {x};
then consider b being object such that
A1: b in dom finSub and
A2: b in {x} by XBOOLE_0:3;
finSub = Sub|X by SUBSTUT1:def 6;
then finSub = (@Sub)|X by SUBSTUT1:def 2;
then @finSub = (@Sub)|X by SUBSTUT1:def 2;
then dom @finSub = dom @Sub /\ X by RELAT_1:61;
then
A3: dom @finSub c= X by XBOOLE_1:17;
b in dom @finSub by A1,SUBSTUT1:def 2;
then b in X by A3;
then ex y st y = b & y in still_not-bound_in q & y is Element of dom Sub &
y <> x & y <> Sub.y;
hence contradiction by A2,TARSKI:def 1;
end;
hence thesis;
end;
theorem Th7:
x in rng RestrictSub(x,All(x,p),Sub) implies S_Bound([All(x,p),
Sub]) = x.upVar(RestrictSub(x,All(x,p),Sub),p)
proof
set finSub = RestrictSub(x,All(x,p),Sub);
set S = [All(x,p),Sub];
assume
A1: x in rng finSub;
reconsider q = S`1 as Element of CQC-WFF(Al);
A2: S`2 = Sub;
bound_in q = x & the_scope_of q = p by QC_LANG2:7;
hence thesis by A1,A2,SUBSTUT1:def 36;
end;
theorem Th8:
not x in rng RestrictSub(x,All(x,p),Sub) implies S_Bound([All(x,p ),Sub]) = x
proof
set finSub = RestrictSub(x,All(x,p),Sub);
set S = [All(x,p),Sub];
assume
A1: not x in rng finSub;
reconsider q = S`1 as Element of CQC-WFF(Al);
S`2 = Sub & bound_in q = x by QC_LANG2:7;
hence thesis by A1,SUBSTUT1:def 36;
end;
theorem Th9:
ExpandSub(x,p,RestrictSub(x,All(x,p),Sub)) = @RestrictSub(x,All(x
,p),Sub) +* (x|S_Bound([All(x,p),Sub]))
proof
set finSub = RestrictSub(x,All(x,p),Sub);
A1: now
reconsider F = {[x,x.upVar(finSub,p)]} as Function;
dom F = {x} by RELAT_1:9;
then dom finSub misses dom F by Th6;
then dom @finSub misses dom F by SUBSTUT1:def 2;
then
A2: @finSub \/ F = @finSub +* F by FUNCT_4:31;
assume
A3: x in rng finSub;
then ExpandSub(x,p,finSub) = finSub \/ F by SUBSTUT1:def 13;
then {[x,x.upVar(finSub,p)]} = x .--> x.upVar(finSub,p) &
ExpandSub(x,p,finSub) = @finSub +* F by A2,FUNCT_4:82,SUBSTUT1:def 2;
hence thesis by A3,Th7;
end;
now
reconsider F = {[x,x]} as Function;
dom F = {x} by RELAT_1:9;
then dom finSub misses dom F by Th6;
then dom @finSub misses dom F by SUBSTUT1:def 2;
then
A4: @finSub \/ F = @finSub +* F by FUNCT_4:31;
assume
A5: not x in rng finSub;
then ExpandSub(x,p,finSub) = finSub \/ F by SUBSTUT1:def 13;
then {[x,x]} = x .--> x & ExpandSub(x,p,finSub) = @finSub +* F by A4,
FUNCT_4:82,SUBSTUT1:def 2;
hence thesis by A5,Th8;
end;
hence thesis by A1;
end;
theorem Th10:
S`2 = @RestrictSub(x,All(x,p),Sub) +* (x|S_Bound([All(x,p),Sub])
) & S`1 = p implies [S,x] is quantifiable & ex S1 st S1 = [All(x,p),Sub]
proof
set Sub1 = @RestrictSub(x,All(x,p),Sub) +* (x|S_Bound([All(x,p),Sub]));
reconsider Sub as CQC_Substitution of Al;
assume that
A1: S`2 = Sub1 and
A2: S`1 = p;
A3: [S,x]`2 = x & ([S,x]`1)`1 = p by A2;
A4: the_scope_of All(x,p) = p & All(x,p) is universal by QC_LANG1:def 21
,QC_LANG2:7;
Sub1 = ExpandSub(x,p,RestrictSub(x,All(x,p),Sub)) & bound_in All(x,p) =
x by Th9,QC_LANG2:7;
then All(x,p),Sub PQSub Sub1 by A4,SUBSTUT1:def 14;
then consider a such that
A5: a = [[All(x,p),Sub],Sub1] and
A6: All(x,p),Sub PQSub Sub1;
a in QSub(Al) by A5,A6,SUBSTUT1:def 15;
then
A7: (QSub(Al)).[All(x,p),Sub] = Sub1 by A5,FUNCT_1:1;
A8: ([S,x]`1)`2 = Sub1 by A1;
hence [S,x] is quantifiable by A7,A3,SUBSTUT1:def 22;
A9: [S,x] is quantifiable by A7,A8,A3,SUBSTUT1:def 22;
then reconsider Sub as second_Q_comp of [S,x] by A7,A8,A3,SUBSTUT1:def 23;
take S1 = CQCSub_All([S,x],Sub);
S1 = Sub_All([S,x],Sub) by A9,SUBLEMMA:def 5;
hence thesis by A3,A9,SUBSTUT1:def 24;
end;
theorem Th11:
(for Sub holds ex S st S`1 = p & S`2 = Sub) implies for Sub
holds ex S st S`1 = All(x,p) & S`2 = Sub
proof
assume
A1: for Sub holds ex S st S`1 = p & S`2 = Sub;
let Sub;
set Sub1 = @RestrictSub(x,All(x,p),Sub) +* (x|S_Bound([All(x,p),Sub]));
Sub1 is CQC_Substitution of Al iff Sub1 is Element of
PFuncs(bound_QC-variables(Al),bound_QC-variables(Al)) by SUBSTUT1:def 1;
then reconsider Sub1 as CQC_Substitution of Al
by PARTFUN1:45;
ex S st S`1 = p & S`2 = Sub1 by A1;
then consider S1 such that
A2: S1 = [All(x,p),Sub] by Th10;
take S1;
thus thesis by A2;
end;
theorem Th12:
for p, Sub holds ex S st S`1 = p & S`2 = Sub
proof
defpred P[Element of CQC-WFF(Al)] means
for Sub holds ex S st S`1 = $1 & S`2 = Sub;
A1: for p,q,x,k for ll being CQC-variable_list of k,Al for P being
QC-pred_symbol of k,Al holds P[VERUM(Al)] & P[P!ll] &
(P[p] implies P['not' p]) & (P[p] & P[q] implies P[p '&' q]) &
(P[p] implies P[All(x,p)]) by Th1,Th2,Th4,Th5,Th11;
thus for p holds P[p] from CQC_LANG:sch 1(A1);
end;
definition
let Al,p,Sub;
redefine func [p,Sub] -> Element of CQC-Sub-WFF(Al); :: redefines [ (TARSKI, definition)
coherence
proof
ex S st S`1 = p & S`2 = Sub by Th12;
hence thesis by SUBSTUT1:10;
end;
end;
notation
let Al,x,y;
synonym Sbst(x,y) for x .--> y;
end;
definition
let Al,x,y;
redefine func Sbst(x,y) -> CQC_Substitution of Al; :: redefines Sbst (SUBSTUT2, synonym) → .--> (FUNCOP_1, definition)
coherence
proof
A1: x .--> y is CQC_Substitution of Al iff x .--> y is Element of
PFuncs(bound_QC-variables(Al),bound_QC-variables(Al)) by SUBSTUT1:def 1;
dom(x .--> y) = {x} & rng(x .--> y) = {y} by FUNCOP_1:8;
then x .--> y is PartFunc of bound_QC-variables(Al),bound_QC-variables(Al)
by RELSET_1:4;
hence thesis by A1,PARTFUN1:45;
end;
end;
begin :: Facts about Substitution and Quantifiers of a Formula
definition
let Al,p,x,y;
func p.(x,y) -> Element of CQC-WFF(Al) equals
CQC_Sub([p,Sbst(x,y)]);
coherence;
end;
scheme
CQCInd1 { Al() -> QC-alphabet, P[set]} :
for p being Element of CQC-WFF(Al()) holds P[p]
provided
A1: for p being Element of CQC-WFF(Al()) st QuantNbr(p) = 0 holds P[p] and
A2: for k st for p being Element of CQC-WFF(Al()) st QuantNbr(p) = k
holds P[p] holds for p being Element of CQC-WFF(Al()) st QuantNbr(p) = k+1
holds P[p]
proof
let p be Element of CQC-WFF(Al());
defpred Q[Nat] means for p being Element of CQC-WFF(Al())
st QuantNbr(p) = $1 holds P[p];
A3: for k being Nat st Q[k] holds Q[k + 1] by A2;
A4: Q[0] by A1;
for k holds Q[k] from NAT_1:sch 2(A4,A3);
then Q[QuantNbr(p)];
hence thesis;
end;
scheme
CQCInd2 {Al() -> QC-alphabet, P[set]}:
for p being Element of CQC-WFF(Al()) holds P[p]
provided
A1: for p being Element of CQC-WFF(Al()) st QuantNbr(p) <= 0 holds P[p] and
A2: for k st for p being Element of CQC-WFF(Al()) st QuantNbr(p) <= k
holds P[p] holds for p being Element of CQC-WFF(Al())
st QuantNbr(p) <= k+1 holds P[p]
proof
let p being Element of CQC-WFF(Al());
defpred Q[Nat] means
for p being Element of CQC-WFF(Al()) st QuantNbr(p) <= $1 holds P[p];
A3: for k st Q[k] holds Q[k + 1] by A2;
A4: Q[0] by A1;
for k holds Q[k] from NAT_1:sch 2(A4,A3);
then Q[QuantNbr(p)];
hence thesis;
end;
theorem
VERUM(Al).(x,y) = VERUM(Al)
proof
set S = [VERUM(Al),Sbst(x,y)];
S is Al-Sub_VERUM by SUBSTUT1:def 19;
hence thesis by SUBLEMMA:3;
end;
theorem
(P!l).(x,y) = P!CQC_Subst(l,Sbst(x,y)) & QuantNbr(P!l) = QuantNbr((P!l
).(x,y))
proof
set S = [P!l,Sbst(x,y)];
S = Sub_P(P,l,Sbst(x,y)) by SUBSTUT1:9;
then
A1: (P!l).(x,y) = P!CQC_Subst(l,Sbst(x,y)) by SUBLEMMA:8;
QuantNbr(P!CQC_Subst(l,Sbst(x,y))) = 0 by CQC_SIM1:15;
hence thesis by A1,CQC_SIM1:15;
end;
theorem Th15:
QuantNbr(P!l) = QuantNbr(CQC_Sub([P!l,Sub]))
proof
set S = [P!l,Sub];
S = Sub_P(P,l,Sub) by SUBSTUT1:9;
then
A1: CQC_Sub([(P!l),Sub]) = P!CQC_Subst(l,Sub) by SUBLEMMA:8;
QuantNbr(P!CQC_Subst(l,Sub)) = 0 by CQC_SIM1:15;
hence thesis by A1,CQC_SIM1:15;
end;
definition
let Al;
let S be Element of QC-Sub-WFF(Al);
redefine func S`2 -> CQC_Substitution of Al; :: redefines `2 (XTUPLE_0, definition)
coherence
proof
ex p being Element of QC-WFF(Al),Sub st S = [p,Sub] by SUBSTUT1:8;
hence thesis;
end;
end;
theorem Th16:
['not' p,Sub] = Sub_not [p,Sub]
proof
set S = [p,Sub];
Sub_not S = ['not' S`1,S`2] by SUBSTUT1:def 20;
hence thesis;
end;
theorem
'not' p.(x,y) = 'not' (p.(x,y)) & (QuantNbr(p) = QuantNbr(p.(x,y))
implies QuantNbr('not' p) = QuantNbr('not' p.(x,y)))
proof
set S = ['not' p,Sbst(x,y)];
A1: S = Sub_not [p,Sbst(x,y)] by Th16;
then
A2: ('not' p).(x,y) = 'not' CQC_Sub([p,Sbst(x,y)]) by SUBSTUT1:29;
QuantNbr(p) = QuantNbr(p.(x,y)) implies QuantNbr('not' p) = QuantNbr((
'not' p).(x,y))
proof
assume
A3: QuantNbr(p) = QuantNbr(p.(x,y));
QuantNbr(('not' p).(x,y)) = QuantNbr(p.(x,y)) by A2,CQC_SIM1:16;
hence thesis by A3,CQC_SIM1:16;
end;
hence thesis by A1,SUBSTUT1:29;
end;
theorem Th18:
(for Sub holds QuantNbr(p) = QuantNbr(CQC_Sub([p,Sub]))) implies
for Sub holds QuantNbr('not' p) = QuantNbr(CQC_Sub(['not' p,Sub]))
proof
assume
A1: for Sub holds QuantNbr(p) = QuantNbr(CQC_Sub([p,Sub]));
let Sub;
set S = ['not' p,Sub];
S = Sub_not [p,Sub] by Th16;
then QuantNbr(CQC_Sub(S)) = QuantNbr('not' CQC_Sub([p,Sub])) by SUBSTUT1:29
.= QuantNbr(CQC_Sub([p,Sub])) by CQC_SIM1:16
.= QuantNbr(p) by A1;
hence thesis by CQC_SIM1:16;
end;
theorem Th19:
[p '&' q,Sub] = CQCSub_&([p,Sub],[q,Sub])
proof
set S1 = [p,Sub];
set S2 = [q,Sub];
A1: S1`1 = p & S2`1 = q;
A2: S1`2 = Sub & S2`2 = Sub;
then CQCSub_&(S1,S2) = Sub_&(S1,S2) by SUBLEMMA:def 3;
hence thesis by A2,A1,SUBSTUT1:def 21;
end;
theorem
(p '&' q).(x,y) = (p.(x,y)) '&' (q.(x,y)) & ( QuantNbr(p) = QuantNbr(p
.(x,y)) & QuantNbr(q) = QuantNbr(q.(x,y)) implies QuantNbr(p '&'q) = QuantNbr((
p '&' q).(x,y)))
proof
set S = [p '&' q,Sbst(x,y)];
set S1 = [p,Sbst(x,y)];
set S2 = [q,Sbst(x,y)];
A1: S1`2 = Sbst(x,y) & S2`2 = Sbst(x,y);
S = CQCSub_&(S1,S2) by Th19;
then
A2: S = Sub_&(S1,S2) by A1,SUBLEMMA:def 3;
then
A3: (p '&' q).(x,y) = (CQC_Sub(S1)) '&' (CQC_Sub(S2)) by A1,SUBSTUT1:31;
QuantNbr(p) = QuantNbr(p.(x,y)) & QuantNbr(q) = QuantNbr(q.(x,y))
implies QuantNbr(p '&' q) = QuantNbr((p '&' q).(x,y))
proof
assume
A4: QuantNbr(p) = QuantNbr(p.(x,y)) & QuantNbr(q) = QuantNbr(q.(x,y));
QuantNbr((p '&' q).(x,y)) = QuantNbr(p.(x,y)) + QuantNbr(q.(x,y)) by A3,
CQC_SIM1:17;
hence thesis by A4,CQC_SIM1:17;
end;
hence thesis by A1,A2,SUBSTUT1:31;
end;
theorem Th21:
(for Sub holds QuantNbr(p) = QuantNbr(CQC_Sub([p,Sub]))) & (for
Sub holds QuantNbr(q) = QuantNbr(CQC_Sub([q,Sub]))) implies for Sub holds
QuantNbr(p '&' q) = QuantNbr(CQC_Sub[p '&' q,Sub])
proof
assume that
A1: for Sub holds QuantNbr(p) = QuantNbr(CQC_Sub([p,Sub])) and
A2: for Sub holds QuantNbr(q) = QuantNbr(CQC_Sub([q,Sub]));
let Sub;
set S = [p '&' q,Sub];
set S1 = [p,Sub];
set S2 = [q,Sub];
A3: S1`2 = Sub & S2`2 = Sub;
S = CQCSub_&(S1,S2) by Th19;
then S = Sub_&(S1,S2) by A3,SUBLEMMA:def 3;
then CQC_Sub(S) = (CQC_Sub(S1)) '&' (CQC_Sub(S2)) by A3,SUBSTUT1:31;
then
QuantNbr(CQC_Sub(S)) = QuantNbr(CQC_Sub(S1)) + QuantNbr(CQC_Sub(S2)) by
CQC_SIM1:17
.= QuantNbr(p) + QuantNbr(CQC_Sub(S2)) by A1
.= QuantNbr(p) + QuantNbr(q) by A2;
hence thesis by CQC_SIM1:17;
end;
definition
let Al;
func CFQ(Al) -> Function of CQC-Sub-WFF(Al),vSUB(Al) equals
(QSub(Al))|CQC-Sub-WFF(Al);
coherence
proof
now
let a be object;
assume a in CQC-Sub-WFF(Al);
then consider p being Element of QC-WFF(Al),Sub such that
A1: a = [p,Sub] by SUBSTUT1:8;
A2: now
set b = {};
assume not p is universal;
then p,Sub PQSub b by SUBSTUT1:def 14;
then [[p,Sub],b] in QSub(Al) by SUBSTUT1:def 15;
hence a in dom QSub(Al) by A1,FUNCT_1:1;
end;
now
set b = ExpandSub(bound_in p,the_scope_of p, RestrictSub(bound_in p,p,
Sub));
assume p is universal;
then p,Sub PQSub b by SUBSTUT1:def 14;
then [[p,Sub],b] in QSub(Al) by SUBSTUT1:def 15;
hence a in dom QSub(Al) by A1,FUNCT_1:1;
end;
hence a in dom QSub(Al) by A2;
end;
then CQC-Sub-WFF(Al) c= dom QSub(Al);
then
A3: dom((QSub(Al))|CQC-Sub-WFF(Al)) = CQC-Sub-WFF(Al) by RELAT_1:62;
rng((QSub(Al))|CQC-Sub-WFF(Al)) c= vSUB(Al)
proof
let b be object;
assume b in rng((QSub(Al))|CQC-Sub-WFF(Al));
then consider a being object such that
A4: a in dom((QSub(Al))|CQC-Sub-WFF(Al)) & ((QSub(Al))|CQC-Sub-WFF(Al)).a = b
by FUNCT_1:def 3;
A5: (QSub(Al))|CQC-Sub-WFF(Al) c= QSub(Al) by RELAT_1:59;
[a,b] in (QSub(Al))|CQC-Sub-WFF(Al) by A4,FUNCT_1:1;
then consider p being Element of QC-WFF(Al),Sub,b1 such that
A6: [a,b] = [[p,Sub],b1] and
A7: p,Sub PQSub b1 by A5,SUBSTUT1:def 15;
A8: now
A9: b1 is CQC_Substitution of Al iff b1 is Element of
PFuncs(bound_QC-variables(Al),bound_QC-variables(Al)) by SUBSTUT1:def 1;
assume not p is universal;
then b1 = {} by A7,SUBSTUT1:def 14;
then b1 is PartFunc of bound_QC-variables(Al),bound_QC-variables(Al) by
RELSET_1:12;
hence b is CQC_Substitution of Al by A9,A6,PARTFUN1:45,XTUPLE_0:1;
end;
now
assume p is universal;
then
b1 = ExpandSub(bound_in p,the_scope_of p, RestrictSub(bound_in p,
p,Sub)) by A7,SUBSTUT1:def 14;
hence b is CQC_Substitution of Al by A6,XTUPLE_0:1;
end;
hence thesis by A8;
end;
hence thesis by A3,FUNCT_2:2;
end;
end;
definition
let Al,p,x,Sub;
func QScope(p,x,Sub) -> CQC-WFF-like Element of [:QC-Sub-WFF(Al),
bound_QC-variables(Al):] equals
[[p,(CFQ(Al)).[All(x,p),Sub]],x];
coherence;
end;
definition
let Al,p,x,Sub;
func Qsc(p,x,Sub) -> second_Q_comp of QScope(p,x,Sub) equals
Sub;
coherence
proof
A1: (QScope(p,x,Sub)`1)`2 = (QSub(Al)).[All(x,p),Sub] by FUNCT_1:49;
A2: QScope(p,x,Sub)`2 = x & (QScope(p,x,Sub)`1)`1 = p;
then QScope(p,x,Sub) is quantifiable by A1,SUBSTUT1:def 22;
hence thesis by A2,A1,SUBSTUT1:def 23;
end;
end;
theorem Th22:
[All(x,p),Sub] = CQCSub_All(QScope(p,x,Sub),Qsc(p,x,Sub)) &
QScope(p,x,Sub) is quantifiable
proof
set S = [p,(CFQ(Al)).[All(x,p),Sub]];
set B = [[p,(CFQ(Al)).[All(x,p),Sub]],x];
A1: B`2 = x & (B`1)`1 = p;
[All(x,p),Sub] in CQC-Sub-WFF(Al);
then
A2: [All(x,p),Sub] in dom CFQ(Al) by FUNCT_2:def 1;
(B`1)`2 = (QSub(Al)).[All(B`2,(B`1)`1),Sub] by A2,FUNCT_1:47;
then
A3: B is quantifiable by SUBSTUT1:def 22;
then
CQCSub_All(QScope(p,x,Sub),Qsc(p,x,Sub)) = Sub_All(QScope(p,x,Sub),Qsc(p
,x,Sub)) by SUBLEMMA:def 5;
hence thesis by A1,A3,SUBSTUT1:def 24;
end;
theorem Th23:
(for Sub holds QuantNbr(p) = QuantNbr(CQC_Sub([p,Sub]))) implies
for Sub holds QuantNbr(All(x,p)) = QuantNbr(CQC_Sub([All(x,p),Sub]))
proof
assume
A1: for Sub holds QuantNbr(p) = QuantNbr(CQC_Sub([p,Sub]));
let Sub;
set S1 = [All(x,p),Sub];
set S = [p,(CFQ(Al)).[All(x,p),Sub]];
set y = S_Bound(@CQCSub_All(QScope(p,x,Sub),Qsc(p,x,Sub)));
A2: QScope(p,x,Sub) is quantifiable by Th22;
A3: Sub_All(QScope(p,x,Sub),Qsc(p,x,Sub)) = CQCSub_All(QScope(p,x,Sub),Qsc(p
,x,Sub)) by Th22,SUBLEMMA:def 5
.= S1 by Th22;
then
A4: S1 is Sub_universal by A2,SUBSTUT1:def 28;
then
A5: CQC_Sub(S1) = CQCQuant(S1,CQC_Sub(CQCSub_the_scope_of S1)) by SUBLEMMA:28;
CQCSub_the_scope_of S1 = Sub_the_scope_of Sub_All(QScope(p,x,Sub),Qsc(p,
x,Sub)) by A3,A4,SUBLEMMA:def 6
.= [S,x]`1 by A2,SUBSTUT1:21
.= S;
then
CQC_Sub(S1) = CQCQuant(CQCSub_All(QScope(p,x,Sub), Qsc(p,x,Sub)),CQC_Sub
(S)) by A5,Th22;
then QuantNbr(CQC_Sub(S1)) = QuantNbr(All(y,CQC_Sub(S))) by Th22,SUBLEMMA:31
.= QuantNbr(CQC_Sub(S))+1 by CQC_SIM1:18
.= QuantNbr(p)+1 by A1;
hence thesis by CQC_SIM1:18;
end;
theorem Th24:
QuantNbr(VERUM(Al)) = QuantNbr(CQC_Sub([VERUM(Al),Sub]))
proof
[VERUM(Al),Sub] is Al-Sub_VERUM by SUBSTUT1:def 19;
hence thesis by SUBLEMMA:3;
end;
theorem
for p, Sub holds QuantNbr(p) = QuantNbr(CQC_Sub([p,Sub]))
proof
defpred P[Element of CQC-WFF(Al)] means for Sub holds
QuantNbr($1) = QuantNbr(CQC_Sub([$1,Sub]));
A1: for r,s,x,k for l being CQC-variable_list of k,Al for P being
QC-pred_symbol of k,Al holds P[VERUM(Al)] & P[P!l] & (P[r]
implies P['not' r]) & (P[r] & P[s] implies P[r '&' s]) & (P[r]
implies P[All(x, r)]) by Th15,Th18,Th21,Th23,Th24;
thus for r holds P[r] from CQC_LANG:sch 1(A1);
end;
theorem
p is atomic implies ex k,P,ll st p = P!ll
proof
assume p is atomic;
then consider k being Nat, P being (QC-pred_symbol of k,Al),
l being QC-variable_list of k,Al such that
A1: p = P!l by QC_LANG1:def 18;
A2: { l.j : 1 <= j & j <= len l & l.j in fixed_QC-variables(Al) } = {} by A1,
CQC_LANG:7;
{ l.i : 1 <= i & i <= len l & l.i in free_QC-variables(Al) } = {} by A1,
CQC_LANG:7;
then reconsider l as CQC-variable_list of k,Al by A2,CQC_LANG:5;
take k,P,l;
thus thesis by A1;
end;
scheme
CQCInd3 {Al() -> QC-alphabet, P[set]} :
for p being Element of CQC-WFF(Al()) st QuantNbr(p) = 0 holds P[p]
provided
A1: for r,s being Element of CQC-WFF(Al())
for x being bound_QC-variable of Al()
for k
for l being CQC-variable_list of k,Al()
for P being QC-pred_symbol of k,Al()
holds P[VERUM(Al())] & P[P!l] &
(P[r] implies P['not' r]) & (P[r] & P[s] implies P[r '&' s])
proof
defpred Prop[Element of CQC-WFF(Al())] means QuantNbr($1) = 0 implies P[$1];
A2: for x being bound_QC-variable of Al(), p being Element of CQC-WFF(Al())
st Prop[p] holds Prop[All(x, p)]
proof
let x be bound_QC-variable of Al(), p be Element of CQC-WFF(Al()) such that
Prop[p];
assume QuantNbr(All(x,p)) = 0;
then QuantNbr(p)+1 = 0 by CQC_SIM1:18;
hence thesis;
end;
for p,q being Element of CQC-WFF(Al())
st Prop[p] & Prop[q] holds Prop[p '&' q]
proof
let p,q be Element of CQC-WFF(Al()) such that
A3: Prop[p] & Prop[q];
assume QuantNbr(p '&' q) = 0;
then QuantNbr(p) + QuantNbr(q) = 0 by CQC_SIM1:17;
hence thesis by A1,A3;
end;
then
A4: for r,s being Element of CQC-WFF(Al())
for x being bound_QC-variable of Al()
for k
for l being CQC-variable_list of k,Al()
for P being QC-pred_symbol of k,Al()
holds Prop[VERUM(Al())] & Prop[P!l] &
(Prop[r] implies Prop['not' r]) & (Prop[r] & Prop[s] implies Prop[r '&' s])&
(Prop[r] implies Prop[All(x,r)]) by A1,A2,CQC_SIM1:16;
for p being Element of CQC-WFF(Al()) holds Prop[p] from CQC_LANG:sch 1(A4);
hence thesis;
end;
begin :: Results about the Construction of Formulas
reserve F1,F2,F3 for QC-formula of Al,
L for FinSequence;
definition
let Al;
let G,H be QC-formula of Al;
assume
A1: G is_subformula_of H;
mode PATH of G,H -> FinSequence means
:Def5:
1 <= len it & it.1 = G & it.(
len it) = H & for k st 1 <= k & k < len it ex G1,H1
being Element of QC-WFF(Al) st it.k = G1 & it.(k+1) = H1 &
G1 is_immediate_constituent_of H1;
existence
proof
ex n,L st 1 <= n & len L = n & L.1 = G & L.n = H & for k st 1 <= k & k
< n ex G1,H1 being Element of QC-WFF(Al) st L.k = G1 & L.(k+1) = H1 & G1
is_immediate_constituent_of H1 by A1,QC_LANG2:def 20;
then consider L such that
A2: ex n st 1 <= n & len L = n & L.1 = G & L.n = H & for k st 1 <= k &
k < n ex G1,H1 being Element of QC-WFF(Al) st L.k = G1 & L.(k+1) = H1 & G1
is_immediate_constituent_of H1;
take L;
thus thesis by A2;
end;
end;
theorem
for L being PATH of F1,F2 st F1 is_subformula_of F2 & 1 <= i & i <=
len L holds ex F3 st F3 = L.i & F3 is_subformula_of F2
proof
let L be PATH of F1,F2;
set n = len L;
assume that
A1: F1 is_subformula_of F2 and
A2: 1 <= i and
A3: i <= n;
n+1 <= n+i by A2,XREAL_1:6;
then n+1+(-1) <= n+i+(-1) by XREAL_1:6;
then
A4: n+(-i) <= n-1+i+(-i) by XREAL_1:6;
i+(-i) <= n+(-i) by A3,XREAL_1:6;
then reconsider l = n-i as Element of NAT by INT_1:3;
defpred P[Nat] means $1 <= n-1 implies ex F3 st F3 = L.(n-$1) &
F3 is_subformula_of F2;
A5: for k st P[k] holds P[k+1]
proof
let k such that
A6: P[k];
assume
A7: k+1 <= n-1;
then k+1+1 <= n-1+1 by XREAL_1:6;
then
A8: 2+k+(-k) <= n+(-k) by XREAL_1:6;
then reconsider j = n-k as Element of NAT by INT_1:3;
n <= n+k by NAT_1:11;
then n+(-k) <= n+k+(-k) by XREAL_1:6;
then
A9: j-1 < n by XREAL_1:146,XXREAL_0:2;
A10: 1+1+(-1) <= j+(-1) by A8,XREAL_1:6;
then reconsider j1 = j-1 as Element of NAT by INT_1:3;
j1+1 = j;
then
A11: ex G1,H1 being Element of QC-WFF(Al) st L.j1 = G1 & L.j = H1 & G1
is_immediate_constituent_of H1 by A1,A10,A9,Def5;
then reconsider F3 = L.j1 as QC-formula of Al;
take F3;
k < k+1 by NAT_1:13;
then F3 is_proper_subformula_of F2 by A6,A7,A11,QC_LANG2:63,XXREAL_0:2;
hence thesis by QC_LANG2:def 21;
end;
L.n = F2 by A1,Def5;
then
A12: P[0];
for k holds P[k] from NAT_1:sch 2(A12,A5);
then ex F3 st F3 = L.(n-l) & F3 is_subformula_of F2 by A4;
hence thesis;
end;
theorem Th28:
for L being PATH of F1,p st F1 is_subformula_of p & 1 <= i & i
<= len L holds L.i is Element of CQC-WFF(Al)
proof
let L be PATH of F1,p;
set n = len L;
assume that
A1: F1 is_subformula_of p and
A2: 1 <= i and
A3: i <= n;
n+1 <= n+i by A2,XREAL_1:6;
then n+1+(-1) <= n+i+(-1) by XREAL_1:6;
then
A4: n+(-i) <= n-1+i+(-i) by XREAL_1:6;
i+(-i) <= n+(-i) by A3,XREAL_1:6;
then reconsider l = n-i as Element of NAT by INT_1:3;
defpred P[Nat] means $1 <= n-1 implies L.(n-$1) is Element of
CQC-WFF(Al);
A5: for k st P[k] holds P[k+1]
proof
let k such that
A6: P[k];
assume
A7: k+1 <= n-1;
then k+1+1 <= n-1+1 by XREAL_1:6;
then
A8: 2+k+(-k) <= n+(-k) by XREAL_1:6;
then reconsider j = n-k as Element of NAT by INT_1:3;
k < k+1 by NAT_1:13;
then reconsider q = L.j as Element of CQC-WFF(Al) by A6,A7,XXREAL_0:2;
n <= n+k by NAT_1:11;
then n+(-k) <= n+k+(-k) by XREAL_1:6;
then
A9: j-1 < n by XREAL_1:146,XXREAL_0:2;
A10: 1+1+(-1) <= j+(-1) by A8,XREAL_1:6;
then reconsider j1 = j-1 as Element of NAT by INT_1:3;
j1+1 = j;
then consider G1,H1 being Element of QC-WFF(Al) such that
A11: L.j1 = G1 and
A12: q = H1 & G1 is_immediate_constituent_of H1 by A1,A10,A9,Def5;
A13: (ex F being Element of QC-WFF(Al) st q = G1 '&' F) implies thesis by A11,
CQC_LANG:9;
A14: (ex x st q = All(x,G1)) implies thesis by A11,CQC_LANG:13;
A15: (ex F being Element of QC-WFF(Al) st q = F '&' G1) implies thesis by A11,
CQC_LANG:9;
q = 'not' G1 implies thesis by A11,CQC_LANG:8;
hence thesis by A12,A13,A15,A14,QC_LANG2:def 19;
end;
A16: P[0] by A1,Def5;
for k holds P[k] from NAT_1:sch 2(A16,A5);
then L.(n-l) is Element of CQC-WFF(Al) by A4;
hence thesis;
end;
theorem Th29:
for L being PATH of q,p st QuantNbr(p) <= n & q is_subformula_of
p & 1 <= i & i <= len L holds ex r st r = L.i & QuantNbr(r) <= n
proof
let L be PATH of q,p;
set m = len L;
assume that
A1: QuantNbr(p) <= n and
A2: q is_subformula_of p and
A3: 1 <= i and
A4: i <= m;
i+(-i) <= m+(-i) by A4,XREAL_1:6;
then reconsider l = m-i as Element of NAT by INT_1:3;
m+1 <= m+i by A3,XREAL_1:6;
then m+1+(-1) <= m+i+(-1) by XREAL_1:6;
then
A5: m+(-i) <= m-1+i+(-i) by XREAL_1:6;
defpred P[Nat] means $1 <= m-1 implies ex r st r = L.(m-$1) &
QuantNbr(r) <= n;
A6: for k st P[k] holds P[k+1]
proof
let k such that
A7: P[k];
assume
A8: k+1 <= m-1;
then k+1+1 <= m-1+1 by XREAL_1:6;
then
A9: 2+k+(-k) <= m+(-k) by XREAL_1:6;
then reconsider j = m-k as Element of NAT by INT_1:3;
A10: 1+1+(-1) <= j+(-1) by A9,XREAL_1:6;
then reconsider j1 = j-1 as Element of NAT by INT_1:3;
m <= m+k by NAT_1:11;
then m+(-k) <= m+k+(-k) by XREAL_1:6;
then
A11: j-1 < m by XREAL_1:146,XXREAL_0:2;
j1+1 = j;
then consider G1,H1 being Element of QC-WFF(Al) such that
A12: L.j1 = G1 and
A13: L.j = H1 & G1 is_immediate_constituent_of H1 by A2,A10,A11,Def5;
reconsider r = G1 as Element of CQC-WFF(Al) by A2,A10,A11,A12,Th28;
k < k+1 by NAT_1:13;
then consider q such that
A14: q = L.j and
A15: QuantNbr(q) <= n by A7,A8,XXREAL_0:2;
A16: now
given x such that
A17: q = All(x,G1);
take r;
QuantNbr(r)+1 <= n by A15,A17,CQC_SIM1:18;
then QuantNbr(r) <= n by NAT_1:13;
hence thesis by A12;
end;
A18: now
given F being Element of QC-WFF(Al) such that
A19: q = F '&' G1;
reconsider F as Element of CQC-WFF(Al) by A19,CQC_LANG:9;
take r;
n <= n+QuantNbr(F) by NAT_1:11;
then
A20: n+(-QuantNbr(F)) <= n+QuantNbr(F)+(-QuantNbr(F)) by XREAL_1:6;
QuantNbr(r) + QuantNbr(F) <= n by A15,A19,CQC_SIM1:17;
then QuantNbr(r) + QuantNbr(F)+(-QuantNbr(F)) <= n +(-QuantNbr(F)) by
XREAL_1:6;
hence thesis by A12,A20,XXREAL_0:2;
end;
A21: now
given F being Element of QC-WFF(Al) such that
A22: q = G1 '&' F;
reconsider F as Element of CQC-WFF(Al) by A22,CQC_LANG:9;
take r;
n <= n+QuantNbr(F) by NAT_1:11;
then
A23: n+(-QuantNbr(F)) <= n+QuantNbr(F)+(-QuantNbr(F)) by XREAL_1:6;
QuantNbr(r) + QuantNbr(F) <= n by A15,A22,CQC_SIM1:17;
then QuantNbr(r) + QuantNbr(F)+(-QuantNbr(F)) <= n +(-QuantNbr(F)) by
XREAL_1:6;
hence thesis by A12,A23,XXREAL_0:2;
end;
now
assume
A24: q = 'not' G1;
take r;
QuantNbr(r) <= n by A15,A24,CQC_SIM1:16;
hence thesis by A12;
end;
hence thesis by A14,A13,A21,A18,A16,QC_LANG2:def 19;
end;
L.m = p by A2,Def5;
then
A25: P[0] by A1;
for k holds P[k] from NAT_1:sch 2(A25,A6);
then ex r st r = L.(m-l) & QuantNbr(r) <= n by A5;
hence thesis;
end;
theorem
QuantNbr(p) = n & q is_subformula_of p implies QuantNbr(q) <= n
proof
set L =the PATH of q,p;
set m = len L;
assume that
A1: QuantNbr(p) = n and
A2: q is_subformula_of p;
1 <= m by A2,Def5;
then ex r st r = L.1 & QuantNbr(r) <= n by A1,A2,Th29;
hence thesis by A2,Def5;
end;
theorem
for n,p st (for q st q is_subformula_of p holds QuantNbr(q) = n) holds n = 0
proof
let n,p such that
A1: for q st q is_subformula_of p holds QuantNbr(q) = n;
defpred P[Element of CQC-WFF(Al)] means
$1 is_subformula_of p implies QuantNbr($1) = 0;
A2: for x, r st P[r] holds P[All(x, r)]
proof
let x,r such that
P[r];
now
assume
A3: All(x, r) is_subformula_of p;
r is_immediate_constituent_of All(x,r) by QC_LANG2:46;
then r is_proper_subformula_of p by A3,QC_LANG2:63;
then r is_subformula_of p by QC_LANG2:def 21;
then
A4: QuantNbr(r) = n by A1;
QuantNbr(All(x,r)) = n by A1,A3;
then n+(-n) = 1+n+(-n) by A4,CQC_SIM1:18;
hence contradiction;
end;
hence thesis;
end;
A5: for r,s st P[r] & P[s] holds P[r '&' s]
proof
let r,s such that
A6: ( P[r])& P[s];
assume
A7: r '&' s is_subformula_of p;
s is_immediate_constituent_of r '&' s by QC_LANG2:45;
then
A8: s is_proper_subformula_of p by A7,QC_LANG2:63;
r is_immediate_constituent_of r '&' s by QC_LANG2:45;
then r is_proper_subformula_of p by A7,QC_LANG2:63;
then QuantNbr(r '&' s) = 0+0 by A6,A8,CQC_SIM1:17,QC_LANG2:def 21;
hence thesis;
end;
for r st P[r] holds P['not' r]
proof
let r such that
A9: P[r];
A10: r is_immediate_constituent_of 'not' r by QC_LANG2:43;
assume 'not' r is_subformula_of p;
then r is_proper_subformula_of p by A10,QC_LANG2:63;
hence thesis by A9,CQC_SIM1:16,QC_LANG2:def 21;
end;
then
A11: for r,s,x,k for l being CQC-variable_list of k,Al for P being
QC-pred_symbol of k,Al holds P[VERUM(Al)] & P[P!l] &
(P[r] implies P['not' r]) & (P[r] & P[s] implies P[r '&' s]) &
(P[r] implies P[All(x, r)]) by A5,A2,CQC_SIM1:14,15;
A12: for r holds P[r] from CQC_LANG:sch 1(A11);
QuantNbr(p) = n by A1;
hence thesis by A12;
end;
theorem
for p st (for q st q is_subformula_of p holds for x,r holds q <> All(x
,r)) holds QuantNbr(p) = 0
proof
let p such that
A1: for q st q is_subformula_of p holds for x,r holds q <> All(x,r);
defpred P[Element of CQC-WFF(Al)] means $1 is_subformula_of p
implies QuantNbr($1) = 0;
A2: for r,s st P[r] & P[s] holds P[r '&' s]
proof
let r,s such that
A3: ( P[r])& P[s];
assume
A4: r '&' s is_subformula_of p;
s is_immediate_constituent_of r '&' s by QC_LANG2:45;
then
A5: s is_proper_subformula_of p by A4,QC_LANG2:63;
r is_immediate_constituent_of r '&' s by QC_LANG2:45;
then r is_proper_subformula_of p by A4,QC_LANG2:63;
then QuantNbr(r '&' s) = 0+0 by A3,A5,CQC_SIM1:17,QC_LANG2:def 21;
hence thesis;
end;
for r st P[r] holds P['not' r]
proof
let r such that
A6: P[r];
A7: r is_immediate_constituent_of 'not' r by QC_LANG2:43;
assume 'not' r is_subformula_of p;
then r is_proper_subformula_of p by A7,QC_LANG2:63;
hence thesis by A6,CQC_SIM1:16,QC_LANG2:def 21;
end;
then
A8: for r,s,x,k for l being CQC-variable_list of k,Al for P being
QC-pred_symbol of k,Al holds P[VERUM(Al)] & P[P!l] &
(P[r] implies P['not' r]) & (P[r] & P[s] implies P[r '&' s]) &
(P[r] implies P[All(x, r)]) by A1,A2,CQC_SIM1:14,15;
for r holds P[r] from CQC_LANG:sch 1(A8);
hence thesis;
end;
theorem Th33:
for p st for q st q is_subformula_of p holds QuantNbr(q) <> 1
holds QuantNbr(p) = 0
proof
let p such that
A1: for q st q is_subformula_of p holds QuantNbr(q) <> 1;
defpred P[Element of CQC-WFF(Al)] means $1 is_subformula_of p
implies QuantNbr($1) = 0;
A2: for x, r st P[r] holds P[All(x, r)]
proof
let x,r such that
A3: P[r];
now
assume
A4: All(x, r) is_subformula_of p;
r is_immediate_constituent_of All(x,r) by QC_LANG2:46;
then r is_proper_subformula_of p by A4,QC_LANG2:63;
then QuantNbr(All(x,r)) = 0+1 by A3,CQC_SIM1:18,QC_LANG2:def 21;
hence contradiction by A1,A4;
end;
hence thesis;
end;
A5: for r,s st P[r] & P[s] holds P[r '&' s]
proof
let r,s such that
A6: ( P[r])& P[s];
assume
A7: r '&' s is_subformula_of p;
s is_immediate_constituent_of r '&' s by QC_LANG2:45;
then
A8: s is_proper_subformula_of p by A7,QC_LANG2:63;
r is_immediate_constituent_of r '&' s by QC_LANG2:45;
then r is_proper_subformula_of p by A7,QC_LANG2:63;
then QuantNbr(r '&' s) = 0+0 by A6,A8,CQC_SIM1:17,QC_LANG2:def 21;
hence thesis;
end;
for r st P[r] holds P['not' r]
proof
let r such that
A9: P[r];
A10: r is_immediate_constituent_of 'not' r by QC_LANG2:43;
assume 'not' r is_subformula_of p;
then r is_proper_subformula_of p by A10,QC_LANG2:63;
hence thesis by A9,CQC_SIM1:16,QC_LANG2:def 21;
end;
then
A11: for r,s,x,k for l being CQC-variable_list of k,Al for P being
QC-pred_symbol of k,Al holds P[VERUM(Al)] & P[P!l] &
(P[r] implies P['not' r]) & (P[r] & P[s] implies P[r '&' s]) &
(P[r] implies P[All(x, r)]) by A5,A2,CQC_SIM1:14,15;
for r holds P[r] from CQC_LANG:sch 1(A11);
hence thesis;
end;
theorem
1 <= QuantNbr(p) implies ex q st q is_subformula_of p & QuantNbr(q)=1
by Th33;