let Al be QC-alphabet ; for r being Element of CQC-WFF Al
for A being non empty set
for Al2 being Al -expanding QC-alphabet
for J2 being interpretation of Al2,A
for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast r iff Jp,vp |= r )
let r be Element of CQC-WFF Al; for A being non empty set
for Al2 being Al -expanding QC-alphabet
for J2 being interpretation of Al2,A
for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast r iff Jp,vp |= r )
let A be non empty set ; for Al2 being Al -expanding QC-alphabet
for J2 being interpretation of Al2,A
for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast r iff Jp,vp |= r )
let Al2 be Al -expanding QC-alphabet ; for J2 being interpretation of Al2,A
for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast r iff Jp,vp |= r )
let J2 be interpretation of Al2,A; for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast r iff Jp,vp |= r )
let Jp be interpretation of Al,A; for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast r iff Jp,vp |= r )
let v2 be Element of Valuations_in (Al2,A); for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast r iff Jp,vp |= r )
let vp be Element of Valuations_in (Al,A); ( Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) implies ( J2,v2 |= Al2 -Cast r iff Jp,vp |= r ) )
defpred S1[ Element of CQC-WFF Al] means for J2 being interpretation of Al2,A
for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast $1 iff Jp,vp |= $1 );
A1:
S1[ VERUM Al]
proof
let J2 be
interpretation of
Al2,
A;
for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (VERUM Al) iff Jp,vp |= VERUM Al )let Jp be
interpretation of
Al,
A;
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (VERUM Al) iff Jp,vp |= VERUM Al )let v2 be
Element of
Valuations_in (
Al2,
A);
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (VERUM Al) iff Jp,vp |= VERUM Al )let vp be
Element of
Valuations_in (
Al,
A);
( Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) implies ( J2,v2 |= Al2 -Cast (VERUM Al) iff Jp,vp |= VERUM Al ) )
J2,
v2 |= VERUM Al2
by VALUAT_1:32;
hence
(
Jp = J2 | (QC-pred_symbols Al) &
vp = v2 | (bound_QC-variables Al) implies (
J2,
v2 |= Al2 -Cast (VERUM Al) iff
Jp,
vp |= VERUM Al ) )
by VALUAT_1:32;
verum
end;
A2:
for k being Nat
for P being QC-pred_symbol of k,Al
for l being CQC-variable_list of k,Al holds S1[P ! l]
proof
let k be
Nat;
for P being QC-pred_symbol of k,Al
for l being CQC-variable_list of k,Al holds S1[P ! l]let P be
QC-pred_symbol of
k,
Al;
for l being CQC-variable_list of k,Al holds S1[P ! l]let l be
CQC-variable_list of
k,
Al;
S1[P ! l]let J2 be
interpretation of
Al2,
A;
for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (P ! l) iff Jp,vp |= P ! l )let Jp be
interpretation of
Al,
A;
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (P ! l) iff Jp,vp |= P ! l )let v2 be
Element of
Valuations_in (
Al2,
A);
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (P ! l) iff Jp,vp |= P ! l )let vp be
Element of
Valuations_in (
Al,
A);
( Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) implies ( J2,v2 |= Al2 -Cast (P ! l) iff Jp,vp |= P ! l ) )
assume A3:
(
Jp = J2 | (QC-pred_symbols Al) &
vp = v2 | (bound_QC-variables Al) )
;
( J2,v2 |= Al2 -Cast (P ! l) iff Jp,vp |= P ! l )
set p =
P ! l;
the_arity_of P = len l
by Th1;
then A4:
P ! l = <*P*> ^ l
by QC_LANG1:def 12;
(
P is
QC-pred_symbol of
k,
Al2 &
l is
CQC-variable_list of
k,
Al2 )
by Th5, Th6;
then consider P2 being
QC-pred_symbol of
k,
Al2,
l2 being
CQC-variable_list of
k,
Al2 such that A5:
(
P = P2 &
l = l2 )
;
A6:
the_arity_of P2 = len l2
by Th1;
A7:
v2 *' l2 = vp *' l
A16:
(
J2,
v2 |= Al2 -Cast (P ! l) implies
Jp,
vp |= P ! l )
proof
assume
J2,
v2 |= Al2 -Cast (P ! l)
;
Jp,vp |= P ! l
then
J2,
v2 |= P2 ! l2
by A4, A5, A6, QC_LANG1:def 12;
then
(Valid ((P2 ! l2),J2)) . v2 = TRUE
by VALUAT_1:def 7;
then
(l2 'in' (J2 . P2)) . v2 = TRUE
by VALUAT_1:6;
then A17:
vp *' l in J2 . P2
by A7, VALUAT_1:def 4;
vp *' l in Jp . P
by FUNCT_1:49, A3, A5, A17;
then
(l 'in' (Jp . P)) . vp = TRUE
by VALUAT_1:def 4;
then
(Valid ((P ! l),Jp)) . vp = TRUE
by VALUAT_1:6;
hence
Jp,
vp |= P ! l
by VALUAT_1:def 7;
verum
end;
( not
J2,
v2 |= Al2 -Cast (P ! l) implies not
Jp,
vp |= P ! l )
proof
assume
not
J2,
v2 |= Al2 -Cast (P ! l)
;
not Jp,vp |= P ! l
then
not
J2,
v2 |= P2 ! l2
by A4, A5, A6, QC_LANG1:def 12;
then
not
(Valid ((P2 ! l2),J2)) . v2 = TRUE
by VALUAT_1:def 7;
then
not
(l2 'in' (J2 . P2)) . v2 = TRUE
by VALUAT_1:6;
then A18:
not
vp *' l in J2 . P2
by A7, VALUAT_1:def 4;
not
vp *' l in Jp . P
by FUNCT_1:49, A3, A5, A18;
then
not
(l 'in' (Jp . P)) . vp = TRUE
by VALUAT_1:def 4;
then
not
(Valid ((P ! l),Jp)) . vp = TRUE
by VALUAT_1:6;
hence
not
Jp,
vp |= P ! l
by VALUAT_1:def 7;
verum
end;
hence
(
J2,
v2 |= Al2 -Cast (P ! l) iff
Jp,
vp |= P ! l )
by A16;
verum
end;
A19:
for p being Element of CQC-WFF Al st S1[p] holds
S1[ 'not' p]
proof
let p be
Element of
CQC-WFF Al;
( S1[p] implies S1[ 'not' p] )
assume A20:
S1[
p]
;
S1[ 'not' p]
let J2 be
interpretation of
Al2,
A;
for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast ('not' p) iff Jp,vp |= 'not' p )let Jp be
interpretation of
Al,
A;
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast ('not' p) iff Jp,vp |= 'not' p )let v2 be
Element of
Valuations_in (
Al2,
A);
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast ('not' p) iff Jp,vp |= 'not' p )let vp be
Element of
Valuations_in (
Al,
A);
( Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) implies ( J2,v2 |= Al2 -Cast ('not' p) iff Jp,vp |= 'not' p ) )
assume A21:
(
Jp = J2 | (QC-pred_symbols Al) &
vp = v2 | (bound_QC-variables Al) )
;
( J2,v2 |= Al2 -Cast ('not' p) iff Jp,vp |= 'not' p )
end;
A26:
for p, r being Element of CQC-WFF Al st S1[p] & S1[r] holds
S1[p '&' r]
proof
let p,
r be
Element of
CQC-WFF Al;
( S1[p] & S1[r] implies S1[p '&' r] )
assume A27:
(
S1[
p] &
S1[
r] )
;
S1[p '&' r]
let J2 be
interpretation of
Al2,
A;
for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (p '&' r) iff Jp,vp |= p '&' r )let Jp be
interpretation of
Al,
A;
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (p '&' r) iff Jp,vp |= p '&' r )let v2 be
Element of
Valuations_in (
Al2,
A);
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (p '&' r) iff Jp,vp |= p '&' r )let vp be
Element of
Valuations_in (
Al,
A);
( Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) implies ( J2,v2 |= Al2 -Cast (p '&' r) iff Jp,vp |= p '&' r ) )
assume A28:
(
Jp = J2 | (QC-pred_symbols Al) &
vp = v2 | (bound_QC-variables Al) )
;
( J2,v2 |= Al2 -Cast (p '&' r) iff Jp,vp |= p '&' r )
A29:
(
J2,
v2 |= Al2 -Cast (p '&' r) implies
Jp,
vp |= p '&' r )
(
Jp,
vp |= p '&' r implies
J2,
v2 |= Al2 -Cast (p '&' r) )
hence
(
J2,
v2 |= Al2 -Cast (p '&' r) iff
Jp,
vp |= p '&' r )
by A29;
verum
end;
A30:
for x being bound_QC-variable of Al
for r being Element of CQC-WFF Al st S1[r] holds
S1[ All (x,r)]
proof
let x be
bound_QC-variable of
Al;
for r being Element of CQC-WFF Al st S1[r] holds
S1[ All (x,r)]let r be
Element of
CQC-WFF Al;
( S1[r] implies S1[ All (x,r)] )
assume A31:
S1[
r]
;
S1[ All (x,r)]
let J2 be
interpretation of
Al2,
A;
for Jp being interpretation of Al,A
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (All (x,r)) iff Jp,vp |= All (x,r) )let Jp be
interpretation of
Al,
A;
for v2 being Element of Valuations_in (Al2,A)
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (All (x,r)) iff Jp,vp |= All (x,r) )let v2 be
Element of
Valuations_in (
Al2,
A);
for vp being Element of Valuations_in (Al,A) st Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) holds
( J2,v2 |= Al2 -Cast (All (x,r)) iff Jp,vp |= All (x,r) )let vp be
Element of
Valuations_in (
Al,
A);
( Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) implies ( J2,v2 |= Al2 -Cast (All (x,r)) iff Jp,vp |= All (x,r) ) )
assume A32:
(
Jp = J2 | (QC-pred_symbols Al) &
vp = v2 | (bound_QC-variables Al) )
;
( J2,v2 |= Al2 -Cast (All (x,r)) iff Jp,vp |= All (x,r) )
A33:
(
J2,
v2 |= Al2 -Cast (All (x,r)) implies
Jp,
vp |= All (
x,
r) )
proof
assume
J2,
v2 |= Al2 -Cast (All (x,r))
;
Jp,vp |= All (x,r)
then A34:
J2,
v2 |= All (
(Al2 -Cast x),
(Al2 -Cast r))
;
for
vp1 being
Element of
Valuations_in (
Al,
A) st ( for
y being
bound_QC-variable of
Al st
x <> y holds
vp1 . y = vp . y ) holds
Jp,
vp1 |= r
proof
let vp1 be
Element of
Valuations_in (
Al,
A);
( ( for y being bound_QC-variable of Al st x <> y holds
vp1 . y = vp . y ) implies Jp,vp1 |= r )
assume A35:
for
y being
bound_QC-variable of
Al st
x <> y holds
vp1 . y = vp . y
;
Jp,vp1 |= r
set s =
(Al2 -Cast x) .--> (vp1 . x);
A36:
(Al2 -Cast x) .--> (vp1 . x) = {(Al2 -Cast x)} --> (vp1 . x)
by FUNCOP_1:def 9;
set v21 =
v2 +* ((Al2 -Cast x) .--> (vp1 . x));
v2 is
Element of
Funcs (
(bound_QC-variables Al2),
A)
by VALUAT_1:def 1;
then A37:
(
dom v2 = bound_QC-variables Al2 &
rng v2 c= A )
by FUNCT_2:92;
dom ((Al2 -Cast x) .--> (vp1 . x)) = {(Al2 -Cast x)}
by A36;
then
dom (v2 +* ((Al2 -Cast x) .--> (vp1 . x))) = (dom v2) \/ {(Al2 -Cast x)}
by FUNCT_4:def 1;
then A38:
dom (v2 +* ((Al2 -Cast x) .--> (vp1 . x))) = bound_QC-variables Al2
by A37, XBOOLE_1:12;
A39:
(rng v2) \/ {(vp1 . x)} c= A
by A37, XBOOLE_1:8;
rng ((Al2 -Cast x) .--> (vp1 . x)) = {(vp1 . x)}
by A36, FUNCOP_1:8;
then
rng (v2 +* ((Al2 -Cast x) .--> (vp1 . x))) c= (rng v2) \/ {(vp1 . x)}
by FUNCT_4:17;
then
rng (v2 +* ((Al2 -Cast x) .--> (vp1 . x))) c= A
by A39;
then
v2 +* ((Al2 -Cast x) .--> (vp1 . x)) is
Element of
Funcs (
(bound_QC-variables Al2),
A)
by A38, FUNCT_2:def 2;
then reconsider v21 =
v2 +* ((Al2 -Cast x) .--> (vp1 . x)) as
Element of
Valuations_in (
Al2,
A)
by VALUAT_1:def 1;
for
y being
bound_QC-variable of
Al2 st
Al2 -Cast x <> y holds
v21 . y = v2 . y
by FUNCT_4:83;
then A40:
J2,
v21 |= Al2 -Cast r
by A34, VALUAT_1:29;
vp1 is
Element of
Funcs (
(bound_QC-variables Al),
A)
by VALUAT_1:def 1;
then A41:
dom vp1 =
bound_QC-variables Al
by FUNCT_2:92
.=
(dom v21) /\ (bound_QC-variables Al)
by A38, Th4, XBOOLE_1:28
;
for
c being
object st
c in dom vp1 holds
vp1 . c = v21 . c
then
v21 | (bound_QC-variables Al) = vp1
by FUNCT_1:46, A41;
hence
Jp,
vp1 |= r
by A32, A31, A40;
verum
end;
hence
Jp,
vp |= All (
x,
r)
by VALUAT_1:29;
verum
end;
(
Jp,
vp |= All (
x,
r) implies
J2,
v2 |= Al2 -Cast (All (x,r)) )
proof
assume A45:
Jp,
vp |= All (
x,
r)
;
J2,v2 |= Al2 -Cast (All (x,r))
for
v21 being
Element of
Valuations_in (
Al2,
A) st ( for
y being
bound_QC-variable of
Al2 st
Al2 -Cast x <> y holds
v21 . y = v2 . y ) holds
J2,
v21 |= Al2 -Cast r
proof
let v21 be
Element of
Valuations_in (
Al2,
A);
( ( for y being bound_QC-variable of Al2 st Al2 -Cast x <> y holds
v21 . y = v2 . y ) implies J2,v21 |= Al2 -Cast r )
assume A46:
for
y being
bound_QC-variable of
Al2 st
Al2 -Cast x <> y holds
v21 . y = v2 . y
;
J2,v21 |= Al2 -Cast r
set s =
x .--> (v21 . (Al2 -Cast x));
A47:
x .--> (v21 . (Al2 -Cast x)) = {x} --> (v21 . (Al2 -Cast x))
by FUNCOP_1:def 9;
set vp1 =
vp +* (x .--> (v21 . (Al2 -Cast x)));
vp is
Element of
Funcs (
(bound_QC-variables Al),
A)
by VALUAT_1:def 1;
then A48:
(
dom vp = bound_QC-variables Al &
rng vp c= A )
by FUNCT_2:92;
dom (x .--> (v21 . (Al2 -Cast x))) = {x}
by A47;
then
dom (vp +* (x .--> (v21 . (Al2 -Cast x)))) = (dom vp) \/ {x}
by FUNCT_4:def 1;
then A49:
dom (vp +* (x .--> (v21 . (Al2 -Cast x)))) = bound_QC-variables Al
by A48, XBOOLE_1:12;
A50:
(rng vp) \/ {(v21 . (Al2 -Cast x))} c= A
by A48, XBOOLE_1:8;
rng (x .--> (v21 . (Al2 -Cast x))) = {(v21 . (Al2 -Cast x))}
by A47, FUNCOP_1:8;
then
rng (vp +* (x .--> (v21 . (Al2 -Cast x)))) c= (rng vp) \/ {(v21 . (Al2 -Cast x))}
by FUNCT_4:17;
then
rng (vp +* (x .--> (v21 . (Al2 -Cast x)))) c= A
by A50;
then
vp +* (x .--> (v21 . (Al2 -Cast x))) is
Element of
Funcs (
(bound_QC-variables Al),
A)
by A49, FUNCT_2:def 2;
then reconsider vp1 =
vp +* (x .--> (v21 . (Al2 -Cast x))) as
Element of
Valuations_in (
Al,
A)
by VALUAT_1:def 1;
for
y being
bound_QC-variable of
Al st
x <> y holds
vp1 . y = vp . y
by FUNCT_4:83;
then A51:
Jp,
vp1 |= r
by A45, VALUAT_1:29;
v21 is
Element of
Funcs (
(bound_QC-variables Al2),
A)
by VALUAT_1:def 1;
then A52:
dom v21 = bound_QC-variables Al2
by FUNCT_2:92;
vp1 is
Element of
Funcs (
(bound_QC-variables Al),
A)
by VALUAT_1:def 1;
then A53:
dom vp1 =
bound_QC-variables Al
by FUNCT_2:92
.=
(dom v21) /\ (bound_QC-variables Al)
by A52, Th4, XBOOLE_1:28
;
for
c being
object st
c in dom vp1 holds
vp1 . c = v21 . c
then
v21 | (bound_QC-variables Al) = vp1
by FUNCT_1:46, A53;
hence
J2,
v21 |= Al2 -Cast r
by A32, A31, A51;
verum
end;
then
J2,
v2 |= All (
(Al2 -Cast x),
(Al2 -Cast r))
by VALUAT_1:29;
hence
J2,
v2 |= Al2 -Cast (All (x,r))
;
verum
end;
hence
(
J2,
v2 |= Al2 -Cast (All (x,r)) iff
Jp,
vp |= All (
x,
r) )
by A33;
verum
end;
A59:
for r, s being Element of CQC-WFF Al
for x being bound_QC-variable of Al
for k being Nat
for l being CQC-variable_list of k,Al
for P being QC-pred_symbol of k,Al holds
( S1[ VERUM Al] & S1[P ! l] & ( S1[r] implies S1[ 'not' r] ) & ( S1[r] & S1[s] implies S1[r '&' s] ) & ( S1[r] implies S1[ All (x,r)] ) )
by A1, A2, A19, A26, A30;
for r being Element of CQC-WFF Al holds S1[r]
from CQC_LANG:sch 1(A59);
hence
( Jp = J2 | (QC-pred_symbols Al) & vp = v2 | (bound_QC-variables Al) implies ( J2,v2 |= Al2 -Cast r iff Jp,vp |= r ) )
; verum