:: CQC_LANG semantic presentation
:: deftheorem Def1 defines IFEQ CQC_LANG:def 1 :
for
b1,
b2,
b3,
b4 being
set holds
( (
b1 = b2 implies
IFEQ b1,
b2,
b3,
b4 = b3 ) & ( not
b1 = b2 implies
IFEQ b1,
b2,
b3,
b4 = b4 ) );
:: deftheorem Def2 defines .--> CQC_LANG:def 2 :
theorem Th1: :: CQC_LANG:1
canceled;
theorem Th2: :: CQC_LANG:2
canceled;
theorem Th3: :: CQC_LANG:3
canceled;
theorem Th4: :: CQC_LANG:4
canceled;
theorem Th5: :: CQC_LANG:5
theorem Th6: :: CQC_LANG:6
for
b1,
b2 being
set holds
(b1 .--> b2) . b1 = b2
Lemma4:
for b1 being bound_QC-variable holds not b1 in fixed_QC-variables
theorem Th7: :: CQC_LANG:7
:: deftheorem Def3 defines Subst CQC_LANG:def 3 :
theorem Th8: :: CQC_LANG:8
canceled;
theorem Th9: :: CQC_LANG:9
canceled;
theorem Th10: :: CQC_LANG:10
theorem Th11: :: CQC_LANG:11
:: deftheorem Def4 defines CQC-WFF CQC_LANG:def 4 :
theorem Th12: :: CQC_LANG:12
canceled;
theorem Th13: :: CQC_LANG:13
:: deftheorem Def5 defines CQC-variable_list-like CQC_LANG:def 5 :
theorem Th14: :: CQC_LANG:14
canceled;
theorem Th15: :: CQC_LANG:15
theorem Th16: :: CQC_LANG:16
theorem Th17: :: CQC_LANG:17
theorem Th18: :: CQC_LANG:18
theorem Th19: :: CQC_LANG:19
theorem Th20: :: CQC_LANG:20
theorem Th21: :: CQC_LANG:21
theorem Th22: :: CQC_LANG:22
theorem Th23: :: CQC_LANG:23
theorem Th24: :: CQC_LANG:24
scheme :: CQC_LANG:sch 3
s3{
F1()
-> non
empty set ,
F2()
-> Function of
CQC-WFF ,
F1(),
F3()
-> Function of
CQC-WFF ,
F1(),
F4()
-> Element of
F1(),
F5(
set ,
set ,
set )
-> Element of
F1(),
F6(
set )
-> Element of
F1(),
F7(
set ,
set )
-> Element of
F1(),
F8(
set ,
set )
-> Element of
F1() } :
provided
E20:
(
F2()
. VERUM = F4() & ( for
b1,
b2 being
Element of
CQC-WFF for
b3 being
bound_QC-variable for
b4 being
Nat for
b5 being
CQC-variable_list of
b4 for
b6 being
QC-pred_symbol of
b4 holds
(
F2()
. (b6 ! b5) = F5(
b4,
b6,
b5) &
F2()
. ('not' b1) = F6(
(F2() . b1)) &
F2()
. (b1 '&' b2) = F7(
(F2() . b1),
(F2() . b2)) &
F2()
. (All b3,b1) = F8(
b3,
(F2() . b1)) ) ) )
and E21:
(
F3()
. VERUM = F4() & ( for
b1,
b2 being
Element of
CQC-WFF for
b3 being
bound_QC-variable for
b4 being
Nat for
b5 being
CQC-variable_list of
b4 for
b6 being
QC-pred_symbol of
b4 holds
(
F3()
. (b6 ! b5) = F5(
b4,
b6,
b5) &
F3()
. ('not' b1) = F6(
(F3() . b1)) &
F3()
. (b1 '&' b2) = F7(
(F3() . b1),
(F3() . b2)) &
F3()
. (All b3,b1) = F8(
b3,
(F3() . b1)) ) ) )
scheme :: CQC_LANG:sch 4
s4{
F1()
-> non
empty set ,
F2()
-> Element of
CQC-WFF ,
F3()
-> Element of
F1(),
F4(
set ,
set ,
set )
-> Element of
F1(),
F5(
set )
-> Element of
F1(),
F6(
set ,
set )
-> Element of
F1(),
F7(
set ,
set )
-> Element of
F1() } :
( ex
b1 being
Element of
F1()ex
b2 being
Function of
CQC-WFF ,
F1() st
(
b1 = b2 . F2() &
b2 . VERUM = F3() & ( for
b3,
b4 being
Element of
CQC-WFF for
b5 being
bound_QC-variable for
b6 being
Nat for
b7 being
CQC-variable_list of
b6 for
b8 being
QC-pred_symbol of
b6 holds
(
b2 . (b8 ! b7) = F4(
b6,
b8,
b7) &
b2 . ('not' b3) = F5(
(b2 . b3)) &
b2 . (b3 '&' b4) = F6(
(b2 . b3),
(b2 . b4)) &
b2 . (All b5,b3) = F7(
b5,
(b2 . b3)) ) ) ) & ( for
b1,
b2 being
Element of
F1() st ex
b3 being
Function of
CQC-WFF ,
F1() st
(
b1 = b3 . F2() &
b3 . VERUM = F3() & ( for
b4,
b5 being
Element of
CQC-WFF for
b6 being
bound_QC-variable for
b7 being
Nat for
b8 being
CQC-variable_list of
b7 for
b9 being
QC-pred_symbol of
b7 holds
(
b3 . (b9 ! b8) = F4(
b7,
b9,
b8) &
b3 . ('not' b4) = F5(
(b3 . b4)) &
b3 . (b4 '&' b5) = F6(
(b3 . b4),
(b3 . b5)) &
b3 . (All b6,b4) = F7(
b6,
(b3 . b4)) ) ) ) & ex
b3 being
Function of
CQC-WFF ,
F1() st
(
b2 = b3 . F2() &
b3 . VERUM = F3() & ( for
b4,
b5 being
Element of
CQC-WFF for
b6 being
bound_QC-variable for
b7 being
Nat for
b8 being
CQC-variable_list of
b7 for
b9 being
QC-pred_symbol of
b7 holds
(
b3 . (b9 ! b8) = F4(
b7,
b9,
b8) &
b3 . ('not' b4) = F5(
(b3 . b4)) &
b3 . (b4 '&' b5) = F6(
(b3 . b4),
(b3 . b5)) &
b3 . (All b6,b4) = F7(
b6,
(b3 . b4)) ) ) ) holds
b1 = b2 ) )
scheme :: CQC_LANG:sch 5
s5{
F1()
-> non
empty set ,
F2(
set )
-> Element of
F1(),
F3()
-> Element of
F1(),
F4(
set ,
set ,
set )
-> Element of
F1(),
F5(
set )
-> Element of
F1(),
F6(
set ,
set )
-> Element of
F1(),
F7(
set ,
set )
-> Element of
F1() } :
provided
scheme :: CQC_LANG:sch 6
s6{
F1()
-> non
empty set ,
F2()
-> Element of
F1(),
F3(
set )
-> Element of
F1(),
F4(
set ,
set ,
set )
-> Element of
F1(),
F5()
-> Nat,
F6()
-> QC-pred_symbol of
F5(),
F7()
-> CQC-variable_list of
F5(),
F8(
set )
-> Element of
F1(),
F9(
set ,
set )
-> Element of
F1(),
F10(
set ,
set )
-> Element of
F1() } :
F3(
(F6() ! F7()))
= F4(
F5(),
F6(),
F7())
provided
scheme :: CQC_LANG:sch 7
s7{
F1()
-> non
empty set ,
F2(
set )
-> Element of
F1(),
F3()
-> Element of
F1(),
F4(
set ,
set ,
set )
-> Element of
F1(),
F5(
set )
-> Element of
F1(),
F6()
-> Element of
CQC-WFF ,
F7(
set ,
set )
-> Element of
F1(),
F8(
set ,
set )
-> Element of
F1() } :
F2(
('not' F6()))
= F5(
F2(
F6()))
provided
scheme :: CQC_LANG:sch 8
s8{
F1()
-> non
empty set ,
F2(
set )
-> Element of
F1(),
F3()
-> Element of
F1(),
F4(
set ,
set ,
set )
-> Element of
F1(),
F5(
set )
-> Element of
F1(),
F6(
set ,
set )
-> Element of
F1(),
F7()
-> Element of
CQC-WFF ,
F8()
-> Element of
CQC-WFF ,
F9(
set ,
set )
-> Element of
F1() } :
F2(
(F7() '&' F8()))
= F6(
F2(
F7()),
F2(
F8()))
provided
scheme :: CQC_LANG:sch 9
s9{
F1()
-> non
empty set ,
F2(
set )
-> Element of
F1(),
F3()
-> Element of
F1(),
F4(
set ,
set ,
set )
-> Element of
F1(),
F5(
set )
-> Element of
F1(),
F6(
set ,
set )
-> Element of
F1(),
F7(
set ,
set )
-> Element of
F1(),
F8()
-> bound_QC-variable,
F9()
-> Element of
CQC-WFF } :
F2(
(All F8(),F9()))
= F7(
F8(),
F2(
F9()))
provided
Lemma20:
for b1 being bound_QC-variable
for b2, b3 being Function of QC-WFF , QC-WFF st ( for b4 being Element of QC-WFF holds
( b2 . VERUM = VERUM & ( b4 is atomic implies b2 . b4 = (the_pred_symbol_of b4) ! (Subst (the_arguments_of b4),((a. 0) .--> b1)) ) & ( b4 is negative implies b2 . b4 = 'not' (b2 . (the_argument_of b4)) ) & ( b4 is conjunctive implies b2 . b4 = (b2 . (the_left_argument_of b4)) '&' (b2 . (the_right_argument_of b4)) ) & ( b4 is universal implies b2 . b4 = IFEQ (bound_in b4),b1,b4,(All (bound_in b4),(b2 . (the_scope_of b4))) ) ) ) & ( for b4 being Element of QC-WFF holds
( b3 . VERUM = VERUM & ( b4 is atomic implies b3 . b4 = (the_pred_symbol_of b4) ! (Subst (the_arguments_of b4),((a. 0) .--> b1)) ) & ( b4 is negative implies b3 . b4 = 'not' (b3 . (the_argument_of b4)) ) & ( b4 is conjunctive implies b3 . b4 = (b3 . (the_left_argument_of b4)) '&' (b3 . (the_right_argument_of b4)) ) & ( b4 is universal implies b3 . b4 = IFEQ (bound_in b4),b1,b4,(All (bound_in b4),(b3 . (the_scope_of b4))) ) ) ) holds
b2 = b3
definition
let c1 be
Element of
QC-WFF ;
let c2 be
bound_QC-variable;
func c1 . c2 -> Element of
QC-WFF means :
Def6:
:: CQC_LANG:def 6
ex
b1 being
Function of
QC-WFF ,
QC-WFF st
(
a3 = b1 . a1 & ( for
b2 being
Element of
QC-WFF holds
(
b1 . VERUM = VERUM & (
b2 is
atomic implies
b1 . b2 = (the_pred_symbol_of b2) ! (Subst (the_arguments_of b2),((a. 0) .--> a2)) ) & (
b2 is
negative implies
b1 . b2 = 'not' (b1 . (the_argument_of b2)) ) & (
b2 is
conjunctive implies
b1 . b2 = (b1 . (the_left_argument_of b2)) '&' (b1 . (the_right_argument_of b2)) ) & (
b2 is
universal implies
b1 . b2 = IFEQ (bound_in b2),
a2,
b2,
(All (bound_in b2),(b1 . (the_scope_of b2))) ) ) ) );
existence
ex b1 being Element of QC-WFF ex b2 being Function of QC-WFF , QC-WFF st
( b1 = b2 . c1 & ( for b3 being Element of QC-WFF holds
( b2 . VERUM = VERUM & ( b3 is atomic implies b2 . b3 = (the_pred_symbol_of b3) ! (Subst (the_arguments_of b3),((a. 0) .--> c2)) ) & ( b3 is negative implies b2 . b3 = 'not' (b2 . (the_argument_of b3)) ) & ( b3 is conjunctive implies b2 . b3 = (b2 . (the_left_argument_of b3)) '&' (b2 . (the_right_argument_of b3)) ) & ( b3 is universal implies b2 . b3 = IFEQ (bound_in b3),c2,b3,(All (bound_in b3),(b2 . (the_scope_of b3))) ) ) ) )
uniqueness
for b1, b2 being Element of QC-WFF st ex b3 being Function of QC-WFF , QC-WFF st
( b1 = b3 . c1 & ( for b4 being Element of QC-WFF holds
( b3 . VERUM = VERUM & ( b4 is atomic implies b3 . b4 = (the_pred_symbol_of b4) ! (Subst (the_arguments_of b4),((a. 0) .--> c2)) ) & ( b4 is negative implies b3 . b4 = 'not' (b3 . (the_argument_of b4)) ) & ( b4 is conjunctive implies b3 . b4 = (b3 . (the_left_argument_of b4)) '&' (b3 . (the_right_argument_of b4)) ) & ( b4 is universal implies b3 . b4 = IFEQ (bound_in b4),c2,b4,(All (bound_in b4),(b3 . (the_scope_of b4))) ) ) ) ) & ex b3 being Function of QC-WFF , QC-WFF st
( b2 = b3 . c1 & ( for b4 being Element of QC-WFF holds
( b3 . VERUM = VERUM & ( b4 is atomic implies b3 . b4 = (the_pred_symbol_of b4) ! (Subst (the_arguments_of b4),((a. 0) .--> c2)) ) & ( b4 is negative implies b3 . b4 = 'not' (b3 . (the_argument_of b4)) ) & ( b4 is conjunctive implies b3 . b4 = (b3 . (the_left_argument_of b4)) '&' (b3 . (the_right_argument_of b4)) ) & ( b4 is universal implies b3 . b4 = IFEQ (bound_in b4),c2,b4,(All (bound_in b4),(b3 . (the_scope_of b4))) ) ) ) ) holds
b1 = b2
by Lemma20;
end;
:: deftheorem Def6 defines . CQC_LANG:def 6 :
theorem Th25: :: CQC_LANG:25
canceled;
theorem Th26: :: CQC_LANG:26
canceled;
theorem Th27: :: CQC_LANG:27
canceled;
theorem Th28: :: CQC_LANG:28
theorem Th29: :: CQC_LANG:29
theorem Th30: :: CQC_LANG:30
theorem Th31: :: CQC_LANG:31
theorem Th32: :: CQC_LANG:32
theorem Th33: :: CQC_LANG:33
theorem Th34: :: CQC_LANG:34
Lemma29:
for b1 being bound_QC-variable
for b2 being Element of QC-WFF st b2 is universal holds
b2 . b1 = IFEQ (bound_in b2),b1,b2,(All (bound_in b2),((the_scope_of b2) . b1))
theorem Th35: :: CQC_LANG:35
theorem Th36: :: CQC_LANG:36
theorem Th37: :: CQC_LANG:37
theorem Th38: :: CQC_LANG:38
theorem Th39: :: CQC_LANG:39
theorem Th40: :: CQC_LANG:40
theorem Th41: :: CQC_LANG:41
theorem Th42: :: CQC_LANG:42
theorem Th43: :: CQC_LANG:43
for
b1,
b2,
b3 being
set holds
(b1,b2 :-> b3) . b1,
b2 = b3