Welcome to Coq V6.2.2 (September 1998)
No .coqrc or .coqrc.6.2.2 found. Skipping rcfile loading.
[Loading ML file xml.cmo ...done]
[Loading ML file xmlprinter.cmo ...done]
[Loading ML file xmltest.cmo ...done]
[Loading ML file test.cmo ...done]
Grammar Marker
#_13.obj : Unrecognized object ML-MODULE
#_12.obj : Unrecognized object ML-MODULE
#_11.obj : Unrecognized object ML-MODULE
#_10.obj : Unrecognized object ML-MODULE
>>>>>>> Import Prolog
>>>>>>> Import Program
>>>>>>> Import Tauto
>>>>>>> Import Inv
>>>>>>> Import Equality
>>>>>>> Import ProPre
>>>>>>> Import Logic_TypeSyntax
>>>>>>> Import Logic_Type
>>>>>>> Import Prelude
>>>>>>> Export IO
#Prolog#_0.obj : Unrecognized object ML-MODULE
Grammar Marker
Syntax Marker
#Program#_0.obj : Unrecognized object ML-MODULE
Grammar Marker
Grammar Marker
Grammar Marker
Grammar Marker
Grammar Marker
Grammar Marker
Grammar Marker
Syntax Marker
Syntax Marker
#Tauto#_0.obj : Unrecognized object ML-MODULE
Grammar Marker
Syntax Marker
>>>>>>> Export Equality
#Inv#_1.obj : Unrecognized object ML-MODULE
Syntax Marker
Grammar Marker
Grammar Marker
#Equality#_0.obj : Unrecognized object ML-MODULE
Grammar Marker
Syntax Marker
#ProPre#_0.obj : Unrecognized object ML-MODULE
Grammar Marker
Grammar Marker
Grammar Marker
>>>>>>> Import Logic_Type
Grammar Marker
Syntax Marker
>>>>>>> Export Logic
>>>>>>> Import LogicSyntax
#Logic_Type#allT.obj 4APropAP x#Logic_Type#allT.obj 4APropProp#universal_quantification#Logic_Type#A.obj 10AProp
A
AP x0H xA
allT
A
A P x0P x
Prop
ABP y
B
A
f x HPropABP yBallT A P
Universes of #Logic_Type#universal_quantification#A.obj (6 uni,4 edges)
Universes of #Logic_Type#universal_quantification#P.obj (6 uni,5 edges)
#universal_quantification#Logic_Type#A.obj 10APropA
allT
A
A
P x0P x#universal_quantification#Logic_Type#A.obj 10APropPropABP yBallT A P
Inductive exT [A:#Logic_Type#exT.obj 11;
P:AProp] : Prop :=
exT_intro : AP xexT A P#Logic_Type#exT.obj 11AProp
Prop
AP xP0exT A P
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f x x0exT_intro x x0#Logic_Type#exT.obj 11APropPropAP xP0exT A PP0
Inductive exT2 [A:#Logic_Type#exT2.obj 31;
P:AProp;
Q:AProp] : Prop :=
exT_intro2 : AP xQ xexT2 A P Q#Logic_Type#exT2.obj 31AProp
Prop
AP xQ xP0exT2 A P Q
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f x x0 x1exT_intro2 x x0 x1#Logic_Type#exT2.obj 31APropAPropPropAP xQ xP0exT2 A P QP0
Inductive eqT [A:#Logic_Type#eqT.obj 59; x:A]
: AProp :=
refl_eqT : eqT A x x#Logic_Type#eqT.obj 59
A
APropP x
A
eqT A x y
"MULTCASE"
P
"TOMATCH" e"EQN" f refl_eqT#Logic_Type#eqT.obj 59AAPropP xAeqT A x yP y
Add Auto Marker
#Equality_is_a_congruence#Logic_Type#A.obj 76#Equality_is_a_congruence#Logic_Type#B.obj 81ABAAAeqT A x y
eqT_ind
A
x
A eqT A a xrefl_eqT A x
y
H
eqT A x yeqT A y xeqT A x yeqT A y z
eqT_ind
A
y
A
eqT A x a
H
z
H0
eqT A x yeqT A y zeqT A x zeqT A x y
eqT_ind
A
x
A
eqT B f xf arefl_eqT B f x
y
H
eqT A x yeqT B f xf ynot eqT A x yeqT A y x
H
eqT_ind
A
y
A
eqT A a yrefl_eqT A y
x
H'
not eqT A x ynot eqT A y x
Universes of #Logic_Type#Equality_is_a_congruence#A.obj (6 uni,4 edges)
Universes of #Logic_Type#Equality_is_a_congruence#B.obj (6 uni,4 edges)
Universes of #Logic_Type#Equality_is_a_congruence#f.obj (7 uni,5 edges)
#Equality_is_a_congruence#Logic_Type#A.obj 76AAeqT A x yeqT A y x#Equality_is_a_congruence#Logic_Type#A.obj 76AAAeqT A x yeqT A y zeqT A x z#Equality_is_a_congruence#Logic_Type#A.obj 76#Equality_is_a_congruence#Logic_Type#B.obj 81
ABAAeqT A x y
eqT
B
f xf y#Equality_is_a_congruence#Logic_Type#A.obj 76AAnot eqT A x ynot eqT A y x
Add Auto Marker
#Logic_Type#eqT_ind_r.obj 76
A
APropP x
A
eqT A y x
"MULTCASE"
A
P a
"TOMATCH"
sym_eqT A y x H0"EQN" H refl_eqT#Logic_Type#eqT_ind_r.obj 81AAPropP xAeqT A y xP y
Inductive EmptyT : #Logic_Type#EmptyT.obj 87 :=
EmptyTProp
EmptyT
"MULTCASE" P "TOMATCH" eEmptyTPropEmptyTP eEmptyTSet
EmptyT
"MULTCASE" P "TOMATCH" eEmptyTSetEmptyTP eEmptyT#Logic_Type#EmptyT_rect.obj 98
EmptyT
"MULTCASE" P "TOMATCH" eEmptyT#Logic_Type#EmptyT_rect.obj 98EmptyTP e
Inductive UnitT : #Logic_Type#UnitT.obj 114 :=
IT : UnitT
UnitTPropP IT
UnitT
"MULTCASE"
"SYNTH""TOMATCH" u"EQN" f ITUnitTPropP ITUnitTP uUnitTSetP IT
UnitT
"MULTCASE"
"SYNTH""TOMATCH" u"EQN" f ITUnitTSetP ITUnitTP uUnitT#Logic_Type#UnitT_rect.obj 125P IT
UnitT
"MULTCASE"
"SYNTH""TOMATCH" u"EQN" f ITUnitT#Logic_Type#UnitT_rect.obj 125P ITUnitTP u#Logic_Type#notT.obj 141AEmptyT#Logic_Type#notT.obj 141#Logic_Type#notT.obj 144
Inductive identityT [A:#Logic_Type#identityT.obj 155;
a:A]
: A#Logic_Type#identityT.obj 154 := refl_identityT : identityT A a a#Logic_Type#identityT.obj 155
A
AidentityT A a yPropP a refl_identityT A a
A
identityT A a y
"MULTCASE"
P
"TOMATCH" i"EQN" f refl_identityT#Logic_Type#identityT.obj 155AAidentityT A a yPropP a refl_identityT A aAidentityT A a yP y i#Logic_Type#identityT.obj 155
A
AidentityT A a ySetP a refl_identityT A a
A
identityT A a y
"MULTCASE"
P
"TOMATCH" i"EQN" f refl_identityT#Logic_Type#identityT.obj 155AAidentityT A a ySetP a refl_identityT A aAidentityT A a yP y i#Logic_Type#identityT.obj 155
A
AidentityT A a y#Logic_Type#identityT_rect.obj 204P a refl_identityT A a
A
identityT A a y
"MULTCASE"
P
"TOMATCH" i"EQN" f refl_identityT#Logic_Type#identityT.obj 155AAidentityT A a y#Logic_Type#identityT_rect.obj 204
P a refl_identityT A aAidentityT A a yP y i
Add Auto Marker
#IdentityT_is_a_congruence#Logic_Type#A.obj 241#IdentityT_is_a_congruence#Logic_Type#B.obj 246ABAAAidentityT A x y
identityT_rect
A
x
A
identityT A x y0identityT A y0 xrefl_identityT A x
y
X
identityT A x yidentityT A y xidentityT A x yidentityT A y z
identityT_rect
A
y
A
identityT A y y0identityT A x y0
X
z
X0
identityT A x yidentityT A y zidentityT A x zidentityT A x y
identityT_rect
A
x
A
identityT A x y0
identityT
B
f xf y0refl_identityT B f x
y
X
identityT A x yidentityT B f xf ynotT identityT A x yidentityT A y x
H
identityT_rect
A
y
A
identityT A y y0identityT A y0 yrefl_identityT A y
x
H'
notT identityT A x ynotT identityT A y x
Universes of #Logic_Type#IdentityT_is_a_congruence#A.obj (6 uni,4 edges)
Universes of #Logic_Type#IdentityT_is_a_congruence#B.obj (6 uni,4 edges)
Universes of #Logic_Type#IdentityT_is_a_congruence#f.obj (7 uni,5 edges)
#IdentityT_is_a_congruence#Logic_Type#A.obj 241AAidentityT A x yidentityT A y x#IdentityT_is_a_congruence#Logic_Type#A.obj 241AAAidentityT A x yidentityT A y zidentityT A x z#IdentityT_is_a_congruence#Logic_Type#A.obj 241#IdentityT_is_a_congruence#Logic_Type#B.obj 246
ABAAidentityT A x y
identityT
B
f xf y#IdentityT_is_a_congruence#Logic_Type#A.obj 241AAnotT identityT A x ynotT identityT A y x#Logic_Type#identityT_ind_r.obj 261
A
APropP x
A
identityT A y x
"MULTCASE"
A
identityT A x y0P y0
"TOMATCH"
sym_idT A y x H0"EQN" H refl_identityT#Logic_Type#identityT_ind_r.obj 267AAPropP aAidentityT A y aP y#Logic_Type#identityT_rec_r.obj 272
A
ASetP x
A
identityT A y x
"MULTCASE"
A
identityT A x y0P y0
"TOMATCH"
sym_idT A y x H0"EQN" H refl_identityT#Logic_Type#identityT_rec_r.obj 278AASetP aAidentityT A y aP y#Logic_Type#identityT_rect_r.obj 287
A
A#Logic_Type#identityT_rect_r.obj 290P x
A
identityT A y x
"MULTCASE"
A
identityT A x y0P y0
"TOMATCH"
sym_idT A y x H0"EQN" H refl_identityT#Logic_Type#identityT_rect_r.obj 300AA#Logic_Type#identityT_rect_r.obj 303P aAidentityT A y aP y
Add Auto Marker
Syntax Macro AllT = allT "ISEVAR"
Syntax Macro ExT = exT "ISEVAR"
Syntax Macro ExT2 = exT2 "ISEVAR"
>>>>>>> Export Core
>>>>>>> Export Datatypes
>>>>>>> Export DatatypesSyntax
>>>>>>> Export Logic
>>>>>>> Export LogicSyntax
>>>>>>> Export Specif
>>>>>>> Export SpecifSyntax
>>>>>>> Export Peano
>>>>>>> Export Wf
>>>>>>> Export Logic
SetAAProp
Inductive Acc
: AProp :=
Acc_intro : AAR y xAcc yAcc xAPropAAR y x
#GENTERM (MUTIND
#Well_founded#Wf#Acc.cci 0
R A)
y
AR y xP yP x
F
F
A a
#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0 R
A)
a
a0
P a
"MULTCASE"
P
"TOMATCH" a0
"EQN"
f
x
a1
A
R y xF y a1 y rAcc_intro x a1APropAAR y x
#GENTERM (MUTIND
#Well_founded#Wf#Acc.cci
0 R A)
y
AR y xP yP xA
#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0 R
A)
a
P a
A
#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0 R A) x
"MULTCASE"
A
AR y a
#GENTERM (MUTIND
#Well_founded#Wf#Acc.cci 0
R A)
y
"TOMATCH" H"EQN" H0 Acc_intro x0 H0A
#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0 R A)
x
AR y x
#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0 R
A)
y
ASetAAR y x
#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0
R A)
y
AR y xP yP x
Acc_rec
Acc_rec
A x
#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0 R A)
x
a
P x
F
x
#GENTERM (CONST #Well_founded#Wf#Acc_inv.cci R A)
x
a
A
R y x
Acc_rec
y
#GENTERM (CONST
#Well_founded#Wf#Acc_inv.cci R
A)
x
a
y
h
A
#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0 R A)
x
P xASetAAR y x
#GENTERM (MUTIND
#Well_founded#Wf#Acc.cci 0
R A)
y
AR y xP yP x
Acc_rec
Acc_rec
A x
#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0 R
A)
x
a
P x
F
x
#GENTERM (CONST #Well_founded#Wf#Acc_inv.cci R
A)
x
a
A
R y x
Acc_rec
y
#GENTERM (CONST
#Well_founded#Wf#Acc_inv.cci
R A)
x
a
y
h
ASetAAR y x
#GENTERM (MUTIND
#Well_founded#Wf#Acc.cci
0 R A)
y
AR y xP yP xA
#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0 R
A)
x
P xA#GENTERM (MUTIND #Well_founded#Wf#Acc.cci 0 R A) a
Prop
#GENTERM (CONST #Well_founded#Wf#well_founded.cci R A)
ASetAAR y xP yP x
A
#GENTERM (CONST #Well_founded#Wf#Acc_rec.cci
R A)
P
A
AR y x
#GENTERM (MUTIND
#Well_founded#Wf#Acc.cci
0 R A)
y
AR y xP yH0 x H2
a
H a
#GENTERM (CONST #Well_founded#Wf#well_founded.cci R A)
ASetAAR y xP yP xAP a
Inductive Acc [A:Set;
R:AAProp] : AProp :=
Acc_intro : AAR y xAcc A R yAcc A R x
Set
AAPropAPropAAR y xAcc A R yAR y xP yP x
F
F
A aAcc A R a a0
P a
"MULTCASE"
P
"TOMATCH" a0
"EQN"
f
x
a1
A
R y x
F
y
a1 y rAcc_intro x a1SetAAPropAPropAAR y xAcc A R yAR y xP yP xAAcc A R aP a
Set
AAProp
A
Acc A R x
"MULTCASE"
A
AR y aAcc A R y"TOMATCH" H"EQN" H0 Acc_intro x0 H0SetAAPropAAcc A R xAR y xAcc A R y
Set
AAPropASetAAR y xAcc A R yAR y xP yP x
Acc_rec
Acc_rec
A xAcc A R x aP x
F
x
Acc_inv A R x a
A
R y x
Acc_rec
y
Acc_inv A R x a y h
SetAAPropASetAAR y xAcc A R yAR y xP yP xAAcc A R xP x
Set
AAPropAAcc A R aSetAAPropPropSetAAPropwell_founded A RASetAAR y xP yP xAP aSetAAPropwell_founded A RAPropAAR y xP yP x
A
Acc_ind
A
R
P
A
AR y xAcc A R yAR y xP yH0 x H2
a
H awell_founded A RAPropAAR y xP yP xAP aSetAAPropwell_founded A RAPropAAR y xP yP xAP a
>>>>>>> Export Logic
>>>>>>> Export LogicSyntax
nat
eq nat n mf_equal nat nat S n m Hnatnateq nat n meq nat S nS m
Add Auto Marker
nat
"MULTCASE"
"SYNTH""TOMATCH" n"EQN" O O"EQN" u S unatnat
nat
refl_equal nat pred S mnateq nat m pred S m
nat
eq nat S nS m
f_equal
nat
nat
pred
S nS m
H
natnateq nat S nS meq nat n m
Add Auto Marker
nat
not eq nat n meq nat S nS mH eq_add_S n m H0natnatnot eq nat n m
not
eq nat S nS m
Add Auto Marker
nat
"MULTCASE"
"SYNTH""TOMATCH" n"EQN" False O"EQN" True S _natProp
nat
eq nat O S n
eq_ind
nat
S n
nat
IsSucc n0
I
O
sym_eq nat O S n Hnatnot eq nat O S n
Add Auto Marker
nat
nat_ind
nat
not eq nat n0 S n0O_S O
nat
not
eq nat n0 S n0not_eq_S n0 S n0 H
n
natnot eq nat n S n
Add Auto Marker
plus
plus
nat nnatnat
nat
"MULTCASE"
"SYNTH""TOMATCH" n"EQN" m O
"EQN"
S plus p mS pnatnatnat
nat
nat_ind
nat
eq nat n0 plus n0 Orefl_equal nat O
nat
eq nat n0 plus n0 Oeq_S n0 plus n0 O H
n
nateq nat n plus n O
Add Auto Marker
nat
nat_ind
nat
eq
nat
S plus n0 nplus n0 S nrefl_equal nat S n
nat
eq
nat
S plus n0 nplus n0 S n
eq_S
S plus n0 nplus n0 S n
H
m
natnat
eq
nat
S plus n mplus n S m
Add Auto Marker
mult
mult
nat nnatnat
nat
"MULTCASE"
"SYNTH""TOMATCH" n"EQN" O O
"EQN"
plus m mult p mS pnatnatnat
nat
nat_ind
nat
eq nat O mult n0 Orefl_equal nat O
nat
eq nat O mult n0 OH
n
nateq nat O mult n O
Add Auto Marker
nat
nat_ind
nat
eq
nat
plus mult n0 m n0mult n0 S mrefl_equal nat O
nat
eq
nat
plus mult p m pmult p S m
"MULTCASE"
nat
eq
nat
plus
plus m mult p mS pS plus m n0"TOMATCH" H
"EQN"
eq_ind
nat
S
plus
plus m mult p m
p
nat
eq
nat
n0
S
plus
m
plus
mult p m
p
eq_S
plus
plus m mult p m
p
plus
m
plus mult p m p
nat_ind
nat
eq
nat
plus
plus
n0
mult p m
p
plus
n0
plus
mult p m
p
refl_equal
nat
plus mult p m p
nat
eq
nat
plus
plus
n0
mult p m
p
plus
n0
plus
mult p m
p
eq_S
plus
plus n0 .
p
plus
n0
plus . p
H0
m
plus
plus m mult p mS p
plus_n_Sm
plus m mult p m
p
refl_equal
n
natnat
eq
nat
plus mult n m nmult n S m
Add Auto Marker
Inductive le [n:nat]
: natProp :=
le_n : le n n
| le_S : natle n mle n S m
nat
natPropP nnatle n mP mP S m
F
F
nat n0le n n0 lP n0
"MULTCASE"
P
"TOMATCH" l"EQN" f le_n
"EQN"
f0 m l0 F m l0le_S m l0natnatPropP nnatle n mP mP S mnatle n n0P n0
Add Auto Marker
nat
le S n mnatnatProp
Add Auto Marker
nat
le m nnatnatProp
Add Auto Marker
nat
lt m nnatnatProp
Add Auto Marker
nat
nat_ind
nat
natPropP OnatP S mP n0natPropP OnatP S mH
nat
natPropP OnatP S mP n0natPropP OnatP S mH1 n0
n
natnatPropP OnatP S mP nnatnatPropnatR O nnatR S n OnatnatR n m
R
S nS m
nat
nat_ind
nat
natR n0 m
H
nat
natR n0 m
nat
nat_ind
nat
.H0 n0
nat
.
m
n
natnatPropnatR O nnatR S n OnatnatR n m
R
S nS mnatnatR n m
>>>>>>> Export LogicSyntax
>>>>>>> Export Specif
Grammar Marker
Grammar Marker
Syntax Marker
>>>>>>> Export Logic
>>>>>>> Import LogicSyntax
Inductive sig [A:Set;
P:AProp] : Set :=
exist : AP xsig A P
Set
AProp
#GENTERM (MUTIND #Subsets#Specif#sig.cci 0)
A
P
PropAP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig.cci 0
1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sig.cci 0)
A
P
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0exist x x0SetAProp
#GENTERM (MUTIND #Subsets#Specif#sig.cci 0)
A
P
PropAP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig.cci
0 1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sig.cci
0)
A
P
P0 s
Set
AProp
#GENTERM (MUTIND #Subsets#Specif#sig.cci 0)
A
P
SetAP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig.cci 0
1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sig.cci 0)
A
P
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0exist x x0SetAProp
#GENTERM (MUTIND #Subsets#Specif#sig.cci 0)
A
P
SetAP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig.cci
0 1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sig.cci
0)
A
P
P0 s
Set
AProp
#GENTERM (MUTIND #Subsets#Specif#sig.cci 0)
A
P
#Subsets#Specif#sig_rect.obj 7AP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig.cci 0
1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sig.cci 0)
A
P
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0exist x x0SetAProp
#GENTERM (MUTIND #Subsets#Specif#sig.cci 0)
A
P
#Subsets#Specif#sig_rect.obj 7AP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig.cci
0 1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sig.cci
0)
A
P
P0 s
Inductive sig2 [A:Set;
P:AProp;
Q:AProp] : Set :=
exist2 : AP xQ xsig2 A P Q
Set
AProp
#GENTERM (MUTIND #Subsets#Specif#sig2.cci 0)
A
P
Q
PropAP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND #Subsets#Specif#sig2.cci
0)
A
P
Q
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1exist2 x x0 x1SetAPropAProp
#GENTERM (MUTIND #Subsets#Specif#sig2.cci
0)
A
P
Q
PropAP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND
#Subsets#Specif#sig2.cci
0)
A
P
Q
P0 s
Set
AProp
#GENTERM (MUTIND #Subsets#Specif#sig2.cci 0)
A
P
Q
SetAP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND #Subsets#Specif#sig2.cci
0)
A
P
Q
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1exist2 x x0 x1SetAPropAProp
#GENTERM (MUTIND #Subsets#Specif#sig2.cci
0)
A
P
Q
SetAP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND
#Subsets#Specif#sig2.cci
0)
A
P
Q
P0 s
Set
AProp
#GENTERM (MUTIND #Subsets#Specif#sig2.cci 0)
A
P
Q
#Subsets#Specif#sig2_rect.obj 28AP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND #Subsets#Specif#sig2.cci
0)
A
P
Q
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1exist2 x x0 x1SetAPropAProp
#GENTERM (MUTIND #Subsets#Specif#sig2.cci
0)
A
P
Q
#Subsets#Specif#sig2_rect.obj 28
AP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sig2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND
#Subsets#Specif#sig2.cci
0)
A
P
Q
P0 s
Inductive sigS [A:Set;
P:ASet] : Set :=
existS : AP xsigS A P
Set
ASet
#GENTERM (MUTIND #Subsets#Specif#sigS.cci 0)
A
P
PropAP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS.cci
0 1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sigS.cci
0)
A
P
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0existS x x0SetASet
#GENTERM (MUTIND #Subsets#Specif#sigS.cci 0)
A
P
PropAP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS.cci
0 1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sigS.cci
0)
A
P
P0 s
Set
ASet
#GENTERM (MUTIND #Subsets#Specif#sigS.cci 0)
A
P
SetAP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS.cci
0 1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sigS.cci
0)
A
P
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0existS x x0SetASet
#GENTERM (MUTIND #Subsets#Specif#sigS.cci 0)
A
P
SetAP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS.cci
0 1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sigS.cci
0)
A
P
P0 s
Set
ASet
#GENTERM (MUTIND #Subsets#Specif#sigS.cci 0)
A
P
#Subsets#Specif#sigS_rect.obj 52AP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS.cci
0 1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sigS.cci
0)
A
P
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0existS x x0SetASet
#GENTERM (MUTIND #Subsets#Specif#sigS.cci 0)
A
P
#Subsets#Specif#sigS_rect.obj 52AP x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS.cci
0 1)
A
P
x
y
#GENTERM (MUTIND #Subsets#Specif#sigS.cci
0)
A
P
P0 s
Inductive sigS2 [A:Set;
P:ASet;
Q:ASet] : Set :=
existS2 : AP xQ xsigS2 A P Q
Set
ASet
#GENTERM (MUTIND #Subsets#Specif#sigS2.cci 0)
A
P
Q
PropAP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND
#Subsets#Specif#sigS2.cci 0)
A
P
Q
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1existS2 x x0 x1SetASetASet
#GENTERM (MUTIND
#Subsets#Specif#sigS2.cci 0)
A
P
Q
PropAP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND
#Subsets#Specif#sigS2.cci
0)
A
P
Q
P0 s
Set
ASet
#GENTERM (MUTIND #Subsets#Specif#sigS2.cci 0)
A
P
Q
SetAP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND
#Subsets#Specif#sigS2.cci 0)
A
P
Q
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1existS2 x x0 x1SetASetASet
#GENTERM (MUTIND
#Subsets#Specif#sigS2.cci 0)
A
P
Q
SetAP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND
#Subsets#Specif#sigS2.cci
0)
A
P
Q
P0 s
Set
ASet
#GENTERM (MUTIND #Subsets#Specif#sigS2.cci 0)
A
P
Q
#Subsets#Specif#sigS2_rect.obj 73AP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND
#Subsets#Specif#sigS2.cci 0)
A
P
Q
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1existS2 x x0 x1SetASetASet
#GENTERM (MUTIND
#Subsets#Specif#sigS2.cci 0)
A
P
Q
#Subsets#Specif#sigS2_rect.obj 73
AP xQ x
P0
#GENTERM (MUTCONSTRUCT
#Subsets#Specif#sigS2.cci
0 1)
A
P
Q
x
y
y0
#GENTERM (MUTIND
#Subsets#Specif#sigS2.cci
0)
A
P
Q
P0 s
Inductive sig [A:Set;
P:AProp] : Set :=
exist : AP xsig A P
Set
APropsig A PPropAP xP0 exist A P x ysig A P
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0exist x x0SetAPropsig A PPropAP xP0 exist A P x ysig A PP0 s
Set
APropsig A PSetAP xP0 exist A P x ysig A P
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0exist x x0SetAPropsig A PSetAP xP0 exist A P x ysig A PP0 s
Set
APropsig A P#Subsets#Specif#sig_rect.obj 7AP xP0 exist A P x ysig A P
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0exist x x0SetAPropsig A P#Subsets#Specif#sig_rect.obj 7AP xP0 exist A P x ysig A PP0 s
Inductive sig2 [A:Set;
P:AProp;
Q:AProp] : Set :=
exist2 : AP xQ xsig2 A P Q
Set
APropsig2 A P QPropAP xQ x
P0
exist2 A P Q x y y0sig2 A P Q
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1exist2 x x0 x1SetAPropAPropsig2 A P QPropAP xQ x
P0
exist2 A P Q x y y0
sig2 A P QP0 s
Set
APropsig2 A P QSetAP xQ x
P0
exist2 A P Q x y y0sig2 A P Q
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1exist2 x x0 x1SetAPropAPropsig2 A P QSetAP xQ x
P0
exist2 A P Q x y y0
sig2 A P QP0 s
Set
APropsig2 A P Q#Subsets#Specif#sig2_rect.obj 28AP xQ x
P0
exist2 A P Q x y y0sig2 A P Q
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1exist2 x x0 x1SetAPropAPropsig2 A P Q#Subsets#Specif#sig2_rect.obj 28AP xQ x
P0
exist2 A P Q x y y0
sig2 A P QP0 s
Inductive sigS [A:Set;
P:ASet] : Set :=
existS : AP xsigS A P
Set
ASetsigS A PPropAP xP0 existS A P x ysigS A P
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0existS x x0SetASetsigS A PPropAP xP0 existS A P x ysigS A PP0 s
Set
ASetsigS A PSetAP xP0 existS A P x ysigS A P
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0existS x x0SetASetsigS A PSetAP xP0 existS A P x ysigS A PP0 s
Set
ASetsigS A P#Subsets#Specif#sigS_rect.obj 52AP xP0 existS A P x ysigS A P
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0existS x x0SetASetsigS A P#Subsets#Specif#sigS_rect.obj 52AP xP0 existS A P x ysigS A PP0 s
Inductive sigS2 [A:Set;
P:ASet;
Q:ASet] : Set :=
existS2 : AP xQ xsigS2 A P Q
Set
ASetsigS2 A P QPropAP xQ x
P0
existS2 A P Q x y y0sigS2 A P Q
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1existS2 x x0 x1SetASetASetsigS2 A P QPropAP xQ x
P0
existS2 A P Q x y y0
sigS2 A P QP0 s
Set
ASetsigS2 A P QSetAP xQ x
P0
existS2 A P Q x y y0sigS2 A P Q
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1existS2 x x0 x1SetASetASetsigS2 A P QSetAP xQ x
P0
existS2 A P Q x y y0
sigS2 A P QP0 s
Set
ASetsigS2 A P Q#Subsets#Specif#sigS2_rect.obj 73AP xQ x
P0
existS2 A P Q x y y0sigS2 A P Q
"FORCELET"
"SYNTH""TOMATCH" s
"EQN"
f x x0 x1existS2 x x0 x1SetASetASetsigS2 A P Q#Subsets#Specif#sigS2_rect.obj 73
AP xQ x
P0
existS2 A P Q x y y0
sigS2 A P QP0 s
#Specif#_2.obj : Unrecognized object Printing Let
#Specif#_3.obj : Unrecognized object Printing Let
#Specif#_4.obj : Unrecognized object Printing Let
#Specif#_5.obj : Unrecognized object Printing Let
SetAPropsig A P
"FORCELET"
"SYNTH""TOMATCH" e"EQN" a exist a _sig A PAsig A P
"FORCELET"
sig A P
P
#GENTERM (CONST
#Subset_projections#Specif#proj1_sig.cci
P A)
e0
"TOMATCH" e"EQN" b exist a bsig A P
P
#GENTERM (CONST
#Subset_projections#Specif#proj1_sig.cci P
A)
e
Set
APropsig A P
"FORCELET"
"SYNTH""TOMATCH" e"EQN" a exist a _SetAPropsig A PA
Set
APropsig A P
"FORCELET"
sig A PP proj1_sig A P e0"TOMATCH" e"EQN" b exist a bSetAPropsig A PP proj1_sig A P eSetASetsigS A P
"FORCELET"
"SYNTH""TOMATCH" x"EQN" a existS a _sigS A PAsigS A P
"FORCELET"
sigS A P
P
#GENTERM (CONST #Projections#Specif#projS1.cci P
A)
x0
"TOMATCH" x"EQN" h existS x0 hsigS A P
P
#GENTERM (CONST #Projections#Specif#projS1.cci P A)
x
Set
ASetsigS A P
"FORCELET"
"SYNTH""TOMATCH" x"EQN" a existS a _SetASetsigS A PA
Set
ASetsigS A P
"FORCELET"
sigS A PP projS1 A P x0"TOMATCH" x"EQN" h existS x0 hSetASetsigS A PP projS1 A P x
Syntax Macro ProjS1 =
projS1
"ISEVAR""ISEVAR"
Syntax Macro ProjS2 =
projS2
"ISEVAR""ISEVAR"
Inductive sumbool [A:Prop; B:Prop] : Set :=
left : Asumbool A B
| right : Bsumbool A B
Prop
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
PropA
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xleft x
"EQN"
f0 xright xPropProp
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
PropA
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
P s
Prop
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
SetA
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xleft x
"EQN"
f0 xright xPropProp
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
SetA
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
P s
Prop
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
#Extended_booleans#Specif#sumbool_rect.obj 7
A
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xleft x
"EQN"
f0 xright xPropProp
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
#Extended_booleans#Specif#sumbool_rect.obj
7
A
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumbool.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumbool.cci
0)
A
B
P s
Inductive sumor [A:Set; B:Prop] : Set :=
inleft : Asumor A B
| inright : Bsumor A B
Set
Prop
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
PropA
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xinleft x
"EQN"
f0 xinright xSetProp
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
PropA
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
P s
Set
Prop
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
SetA
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xinleft x
"EQN"
f0 xinright xSetProp
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
SetA
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
P s
Set
Prop
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
#Extended_booleans#Specif#sumor_rect.obj 29
A
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xinleft x
"EQN"
f0 xinright xSetProp
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
#Extended_booleans#Specif#sumor_rect.obj
29
A
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 1)
A
B
y
B
P
#GENTERM (MUTCONSTRUCT
#Extended_booleans#Specif#sumor.cci
0 2)
A
B
y
#GENTERM (MUTIND
#Extended_booleans#Specif#sumor.cci
0)
A
B
P s
Inductive sumbool [A:Prop; B:Prop] : Set :=
left : Asumbool A B
| right : Bsumbool A B
Prop
sumbool A BPropAP left A B yBP right A B ysumbool A B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xleft x
"EQN"
f0 xright xPropPropsumbool A BPropAP left A B yBP right A B ysumbool A BP s
Prop
sumbool A BSetAP left A B yBP right A B ysumbool A B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xleft x
"EQN"
f0 xright xPropPropsumbool A BSetAP left A B yBP right A B ysumbool A BP s
Prop
sumbool A B#Extended_booleans#Specif#sumbool_rect.obj 7
AP left A B yBP right A B ysumbool A B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xleft x
"EQN"
f0 xright xPropPropsumbool A B
#Extended_booleans#Specif#sumbool_rect.obj
7
AP left A B yBP right A B ysumbool A BP s
Inductive sumor [A:Set; B:Prop] : Set :=
inleft : Asumor A B
| inright : Bsumor A B
Set
Prop
sumor A BPropAP inleft A B yBP inright A B ysumor A B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xinleft x
"EQN"
f0 xinright xSetPropsumor A BPropAP inleft A B yBP inright A B ysumor A BP s
Set
Prop
sumor A BSetAP inleft A B yBP inright A B ysumor A B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xinleft x
"EQN"
f0 xinright xSetPropsumor A BSetAP inleft A B yBP inright A B ysumor A BP s
Set
Prop
sumor A B#Extended_booleans#Specif#sumor_rect.obj 29
AP inleft A B yBP inright A B ysumor A B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xinleft x
"EQN"
f0 xinright xSetPropsumor A B#Extended_booleans#Specif#sumor_rect.obj 29
AP inleft A B yBP inright A B ysumor A BP sSetSetSS'PropSS'SetSPropSPropS
sig
S'
S' R x y
exist
SS'SS'SR z f z
S
"FORCELET"
"SYNTH""TOMATCH" H z"EQN" y exist y _
S
sig_ind
S'
S'
R z y
sig
S'
S'
R z y
R
z
"FORCELET"
"SYNTH""TOMATCH" s"EQN" y exist y _
S'
R z xyH zS
sig
S'
S' R x y
sig
SS'SS'SR z f zS
sigS
S'
S' R' x y
existS
SS'SS'SR' z f z
S
"FORCELET"
"SYNTH""TOMATCH" H z"EQN" y existS y _
S
sigS_rec
S'
S'
R' z y
sigS
S'
S'
R' z y
R'
z
"FORCELET"
"SYNTH""TOMATCH" s"EQN" y existS y _
S'
R' z xyH zS
sigS
S'
S'
R' x y
sigS
SS'SS'SR' z f zSsumbool R1 xR2 x
exist
SboolSboolS
or
and
eq bool f x true
R1 x
and
eq bool f x false
R2 x
S
"MULTCASE"
"SYNTH""TOMATCH" H z"EQN" true left _"EQN" false right _
S
sumbool_ind
R1 zR2 z
sumbool
R1 zR2 z
or
and
eq
bool
"MULTCASE"
"SYNTH""TOMATCH" s"EQN" true left _
"EQN"
false
right _
true
R1 z
and
eq
bool
"MULTCASE"
"SYNTH""TOMATCH" s"EQN" true left _
"EQN"
false
right _
false
R2 zR1 z
or_introl
and
eq bool true trueR1 z
and
eq bool true falseR2 z
conj
eq bool true trueR1 zrefl_equal bool true
y
R2 z
or_intror
and
eq bool false trueR1 z
and
eq bool false falseR2 z
conj
eq bool false falseR2 zrefl_equal bool false
y
H zSsumbool R1 xR2 x
sig
SboolSboolS
or
and
eq bool f x true
R1 x
and
eq bool f x false
R2 xSetSetSS'PropS
sig
S'
S'
R x y
sig
SS'SS'SR z f zSetSetSS'SetS
sigS
S'
S'
R' x y
sigS
SS'SS'SR' z f zSetSPropSPropS
sumbool
R1 xR2 x
sig
SboolSboolS
or
and
eq
bool
f x
true
R1 x
and
eq
bool
f x
false
R2 x
Inductive Exc [A:Set] : Set :=
value : AExc A
| error : Exc A
Set
#GENTERM (MUTIND #Exceptions#Specif#Exc.cci 0)
A
PropA
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 1)
A
y
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 2)
A
#GENTERM (MUTIND #Exceptions#Specif#Exc.cci
0)
A
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f xvalue x"EQN" f0 errorSet
#GENTERM (MUTIND #Exceptions#Specif#Exc.cci 0)
A
PropA
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 1)
A
y
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 2)
A
#GENTERM (MUTIND
#Exceptions#Specif#Exc.cci 0)
A
P e
Set
#GENTERM (MUTIND #Exceptions#Specif#Exc.cci 0)
A
SetA
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 1)
A
y
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 2)
A
#GENTERM (MUTIND #Exceptions#Specif#Exc.cci
0)
A
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f xvalue x"EQN" f0 errorSet
#GENTERM (MUTIND #Exceptions#Specif#Exc.cci 0)
A
SetA
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 1)
A
y
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 2)
A
#GENTERM (MUTIND
#Exceptions#Specif#Exc.cci 0)
A
P e
Set
#GENTERM (MUTIND #Exceptions#Specif#Exc.cci 0)
A
#Exceptions#Specif#Exc_rect.obj 7A
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 1)
A
y
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 2)
A
#GENTERM (MUTIND #Exceptions#Specif#Exc.cci
0)
A
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f xvalue x"EQN" f0 errorSet
#GENTERM (MUTIND #Exceptions#Specif#Exc.cci 0)
A
#Exceptions#Specif#Exc_rect.obj 7A
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 1)
A
y
P
#GENTERM (MUTCONSTRUCT
#Exceptions#Specif#Exc.cci 0 2)
A
#GENTERM (MUTIND
#Exceptions#Specif#Exc.cci 0)
A
P e
Inductive Exc [A:Set] : Set :=
value : AExc A
| error : Exc A
Set
Exc APropAP value A yP error AExc A
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f xvalue x"EQN" f0 errorSetExc APropAP value A yP error AExc AP e
Set
Exc ASetAP value A yP error AExc A
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f xvalue x"EQN" f0 errorSetExc ASetAP value A yP error AExc AP e
Set
Exc A#Exceptions#Specif#Exc_rect.obj 7AP value A yP error AExc A
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f xvalue x"EQN" f0 errorSetExc A#Exceptions#Specif#Exc_rect.obj 7AP value A yP error AExc AP e
Syntax Macro Error = error "ISEVAR"
Syntax Macro Value = value "ISEVAR"
*** [ False_rec :
SetFalseP ]
#Specif#False_rect.obj 4
False
"MULTCASE"
Empty_set C"TOMATCH" False_rec Empty_set H#Specif#False_rect.obj 7FalseCFalse_recSetFalseP
Syntax Macro Except = except "ISEVAR"
Prop
Set
A
not AFalse_rec C h2 h1PropSetAnot AC
Prop
Set
ABCand A B
F
and_ind
A
B
A
A
B H
AB
and_ind
A
B
B
A
B H0
AB
PropPropSetABCand A BC
Add Auto Marker
Inductive sigT [A:#Specif#sigT.obj 19;
P:A#Specif#sigT.obj 18] : #Specif#sigT.obj 17 :=
existT : AP xsigT A P#Specif#sigT.obj 19A#Specif#sigT.obj 18sigT A PPropAP xP0 existT A P x ysigT A P
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0existT x x0#Specif#sigT.obj 19A#Specif#sigT.obj 18sigT A PPropAP xP0 existT A P x ysigT A PP0 s#Specif#sigT.obj 19A#Specif#sigT.obj 18sigT A PSetAP xP0 existT A P x ysigT A P
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0existT x x0#Specif#sigT.obj 19A#Specif#sigT.obj 18sigT A PSetAP xP0 existT A P x ysigT A PP0 s#Specif#sigT.obj 19A#Specif#sigT.obj 18sigT A P#Specif#sigT_rect.obj 102AP xP0 existT A P x ysigT A P
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f x x0existT x x0#Specif#sigT.obj 19A#Specif#sigT.obj 18sigT A P#Specif#sigT_rect.obj 102AP xP0 existT A P x ysigT A PP0 s#projections_sigT#Specif#A.obj 156A#projections_sigT#Specif#P.obj 161sigT A P
"MULTCASE"
"SYNTH""TOMATCH" H"EQN" x existT x _sigT A PAsigT A P
"MULTCASE"
sigT A P
P
#GENTERM (CONST
#projections_sigT#Specif#projT1.cci P
A)
H0
"TOMATCH" H"EQN" h existT x hsigT A P
P
#GENTERM (CONST #projections_sigT#Specif#projT1.cci P
A)
H
Universes of #Specif#projections_sigT#A.obj (6 uni,4 edges)
Universes of #Specif#projections_sigT#P.obj (9 uni,7 edges)
#projections_sigT#Specif#A.obj 156A#projections_sigT#Specif#P.obj 161sigT A P
"MULTCASE"
"SYNTH""TOMATCH" H"EQN" x existT x _#projections_sigT#Specif#A.obj 156A#projections_sigT#Specif#P.obj 161sigT A PA#projections_sigT#Specif#A.obj 156A#projections_sigT#Specif#P.obj 161sigT A P
"MULTCASE"
sigT A PP projT1 A P H0"TOMATCH" H"EQN" h existT x h#projections_sigT#Specif#A.obj 156A#projections_sigT#Specif#P.obj 161sigT A PP projT1 A P H
>>>>>>> Export Logic
Grammar Marker
Syntax Marker
>>>>>>> Export Datatypes
Inductive True : Prop := I : True
Prop
P
True
"MULTCASE"
"SYNTH""TOMATCH" t"EQN" f IPropPTrueP
Set
P
True
"MULTCASE"
"SYNTH""TOMATCH" t"EQN" f ISetPTrueP
Inductive False : Prop :=
Prop
False
"MULTCASE" P "TOMATCH" fPropFalseP
Prop
AFalsePropProp
Inductive and [A:Prop; B:Prop] : Prop :=
conj : ABand A B
Prop
ABP
#GENTERM (MUTIND #Conjunction#Logic#and.cci 0)
A
B
"MULTCASE"
"SYNTH""TOMATCH" a
"EQN"
f x x0conj x x0PropPropPropABP
#GENTERM (MUTIND
#Conjunction#Logic#and.cci 0)
A
B
P
Prop
Set
ABP
#GENTERM (MUTIND #Conjunction#Logic#and.cci
0)
A
B
"MULTCASE"
"SYNTH""TOMATCH" a
"EQN"
f x x0conj x x0PropPropSetABP
#GENTERM (MUTIND
#Conjunction#Logic#and.cci 0)
A
B
PPropProp#GENTERM (MUTIND #Conjunction#Logic#and.cci 0) A B
#GENTERM (CONST #Conjunction#Logic#and_ind.cci)
A
B
A
A
B H0
H
#GENTERM (MUTIND #Conjunction#Logic#and.cci 0) A B
A#GENTERM (MUTIND #Conjunction#Logic#and.cci 0) A B
#GENTERM (CONST #Conjunction#Logic#and_ind.cci)
A
B
B
A
B H1
H
#GENTERM (MUTIND #Conjunction#Logic#and.cci 0) A B
B
Inductive and [A:Prop; B:Prop] : Prop :=
conj : ABand A B
Prop
ABPand A B
"MULTCASE"
"SYNTH""TOMATCH" a
"EQN"
f x x0conj x x0PropPropPropABPand A BP
Prop
Set
ABPand A B
"MULTCASE"
"SYNTH""TOMATCH" a
"EQN"
f x x0conj x x0PropPropSetABPand A BPPropPropand A BAPropPropand A BB
Inductive or [A:Prop; B:Prop] : Prop :=
or_introl : Aor A B
| or_intror : Bor A B
Prop
APBP
#GENTERM (MUTIND #Disjunction#Logic#or.cci
0)
A
B
"MULTCASE"
"SYNTH""TOMATCH" o
"EQN"
f xor_introl x
"EQN"
f0 xor_intror xPropPropPropAPBP
#GENTERM (MUTIND
#Disjunction#Logic#or.cci
0)
A
B
P
Inductive or [A:Prop; B:Prop] : Prop :=
or_introl : Aor A B
| or_intror : Bor A B
Prop
APBPor A B
"MULTCASE"
"SYNTH""TOMATCH" o
"EQN"
f xor_introl x
"EQN"
f0 xor_intror xPropPropPropAPBPor A BP
Prop
and
PQQPPropPropProp
Prop
and
PQQPPropPropProp
Prop
or
and P Qand not P RPropPropPropProp
Inductive ex [A:Set;
P:AProp] : Prop :=
ex_intro : AP xex A P
Set
AProp
Prop
AP xP0
#GENTERM (MUTIND
#First_order_quantifiers#Logic#ex.cci
0)
A
P
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f x x0ex_intro x x0SetAPropPropAP xP0
#GENTERM (MUTIND
#First_order_quantifiers#Logic#ex.cci
0)
A
P
P0
Inductive ex2 [A:Set;
P:AProp;
Q:AProp] : Prop :=
ex_intro2 : AP xQ xex2 A P Q
Set
AProp
Prop
AP xQ xP0
#GENTERM (MUTIND
#First_order_quantifiers#Logic#ex2.cci
0)
A
P
Q
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f x x0 x1ex_intro2 x x0 x1SetAPropAPropPropAP xQ xP0
#GENTERM (MUTIND
#First_order_quantifiers#Logic#ex2.cci
0)
A
P
Q
P0
Set
APropAP xSetAPropProp
Inductive ex [A:Set;
P:AProp] : Prop :=
ex_intro : AP xex A P
Set
AProp
Prop
AP xP0ex A P
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f x x0ex_intro x x0SetAPropPropAP xP0ex A PP0
Inductive ex2 [A:Set;
P:AProp;
Q:AProp] : Prop :=
ex_intro2 : AP xQ xex2 A P Q
Set
AProp
Prop
AP xQ xP0ex2 A P Q
"MULTCASE"
"SYNTH""TOMATCH" e
"EQN"
f x x0 x1ex_intro2 x x0 x1SetAPropAPropPropAP xQ xP0ex2 A P QP0
Set
APropAP xSetAPropProp
Inductive eq [A:Set; x:A]
: AProp :=
refl_equal : eq A x x
Set
A
APropP x
A
#GENTERM (MUTIND #Equality#Logic#eq.cci
0)
A
x
y
"MULTCASE"
P
"TOMATCH" e"EQN" f refl_equalSetAAPropP xA
#GENTERM (MUTIND
#Equality#Logic#eq.cci 0)
A
x
y
P y
Set
A
ASetP x
A
#GENTERM (MUTIND #Equality#Logic#eq.cci
0)
A
x
y
"MULTCASE"
P
"TOMATCH" e"EQN" f refl_equalSetAASetP xA
#GENTERM (MUTIND
#Equality#Logic#eq.cci 0)
A
x
y
P y
Inductive eq [A:Set; x:A]
: AProp :=
refl_equal : eq A x x
Set
A
APropP x
A
eq A x y
"MULTCASE"
P
"TOMATCH" e"EQN" f refl_equalSetAAPropP xAeq A x yP y
Set
A
ASetP x
A
eq A x y
"MULTCASE"
P
"TOMATCH" e"EQN" f refl_equalSetAASetP xAeq A x yP y
Add Auto Marker
Prop
A
AFalseFalse_ind C h2 h1PropPropAnot ACSetSetABAAAeq A x y
eq_ind
A
x
A eq A a xrefl_equal A x
y
H
eq A x yeq A y xeq A x yeq A y z
eq_ind
A
y
A
eq A x a
H
z
H0
eq A x yeq A y zeq A x zeq A x y
eq_ind
A
x
A
eq B f xf arefl_equal B f x
y
H
eq A x yeq B f xf y
Set
ABC
A
B
eq A x1 y1
eq_ind
A
x1
A
eq B x2 y2
eq
C
.
.eq B x2 y2
eq_ind
B
x2
B
.
refl_equal
C
f0 x1 x2
y2
H0
y1
H
SetABCAABBeq A x1 y1eq B x2 y2
eq
C
f x1 x2f y1 y2not eq A x yeq A y x
h1
eq_ind
A
y
A
eq A a yrefl_equal A y
x
h2
not eq A x ynot eq A y x
#GENTERM (CONST #equality#Logic_lemmas#Logic#sym_eq.cci y x
A)
eq A x yeq A y x
#GENTERM (CONST #equality#Logic_lemmas#Logic#sym_not_eq.cci y
x A)
not eq A x ynot eq A y x
#GENTERM (CONST #equality#Logic_lemmas#Logic#trans_eq.cci z y
x A)
eq A x yeq A y zeq A x zSetAAeq A x yeq A y xSetAAAeq A x yeq A y zeq A x zSetSetABAAeq A x y
eq
B
f xf ySetSetSetABCAABBeq A x1 y1..SetAAnot eq A x ynot eq A y x
Set
A
A
#GENTERM (CONST #Logic_lemmas#Logic#sym_eq.cci)
A
x
y
SetAAeq A x yeq A y x
Set
A
A
#GENTERM (CONST
#Logic_lemmas#Logic#sym_not_eq.cci)
A
x
y
SetAAnot eq A x ynot eq A y x
Set
A
A
A
#GENTERM (CONST
#Logic_lemmas#Logic#trans_eq.cci)
A
x
y
z
SetAAAeq A x yeq A y zeq A x z
Set
A
A#Logic_lemmas#Logic#eq_rect.obj 5P x
A
eq A x y
"MULTCASE"
A
identity A x y0P y0
"TOMATCH"
eq_rec
A
x
A
identity A x arefl_identity A x
y
H
"EQN" X refl_identitySetAA#Logic_lemmas#Logic#eq_rect.obj 10P xAeq A x yP y
Set
A
APropP x
A
eq A y x
"MULTCASE"
A
P a
"TOMATCH"
#GENTERM (CONST
#Logic_lemmas#Logic#sym_eq.cci)
A
y
x
H0
"EQN" H refl_equalSetAAPropP xAeq A y xP y
Set
A
ASetP x
A
eq A y x
"MULTCASE"
A
P a
"TOMATCH"
#GENTERM (CONST
#Logic_lemmas#Logic#sym_eq.cci)
A
y
x
H0
"EQN" H refl_equalSetAASetP xAeq A y xP y
Set
A
A#Logic_lemmas#Logic#eq_rect_r.obj 31P x
A
eq A y x
#GENTERM (CONST
#Logic_lemmas#Logic#eq_rect.cci)
A
x
A
P a
H
y
#GENTERM (CONST
#Logic_lemmas#Logic#sym_eq.cci)
A
y
x
H0
SetAA#Logic_lemmas#Logic#eq_rect_r.obj 38
P xAeq A y xP yPropPropAnot ACSetAAeq A x yeq A y xSetAAAeq A x yeq A y zeq A x zSetSetABAAeq A x y
eq
B
f xf ySetSetSetABCAABBeq A x1 y1..SetAAnot eq A x ynot eq A y x
Set
A
sym_eq A x ySetAAeq A x yeq A y x
Set
A
sym_not_eq A x ySetAAnot eq A x ynot eq A y x
Set
A
trans_eq A x y zSetAAAeq A x yeq A y zeq A x zSetAA#Logic_lemmas#Logic#eq_rect.obj 10P xAeq A x yP y
Set
A
APropP x
A
eq A y x
"MULTCASE"
A
P a
"TOMATCH"
sym_eq A y x H0"EQN" H refl_equalSetAAPropP xAeq A y xP y
Set
A
ASetP x
A
eq A y x
"MULTCASE"
A
P a
"TOMATCH"
sym_eq A y x H0"EQN" H refl_equalSetAASetP xAeq A y xP y
Set
A
A#Logic_lemmas#Logic#eq_rect_r.obj 31P x
A
eq A y x
eq_rect
A
x
A
P a
H
y
sym_eq A y x H0SetAA#Logic_lemmas#Logic#eq_rect_r.obj 38P xAeq A y xP y
Add Auto Marker
Syntax Macro Ex = ex "ISEVAR"
Syntax Macro Ex2 = ex2 "ISEVAR"
Syntax Macro All = all "ISEVAR"
>>>>>>> Export Datatypes
Grammar Marker
Syntax Marker
Inductive unit : Set := tt : unit
unitPropP tt
unit
"MULTCASE"
"SYNTH""TOMATCH" u"EQN" f ttunitPropP ttunitP uunitSetP tt
unit
"MULTCASE"
"SYNTH""TOMATCH" u"EQN" f ttunitSetP ttunitP uunit#Datatypes#unit_rect.obj 4P tt
unit
"MULTCASE"
"SYNTH""TOMATCH" u"EQN" f ttunit#Datatypes#unit_rect.obj 4P ttunitP u
Inductive bool : Set := true : bool | false : bool
boolPropP trueP false
bool
"SYNTH" b f f0boolPropP trueP falseboolP bboolSetP trueP false
bool
"SYNTH" b f f0boolSetP trueP falseboolP bbool#Datatypes#bool_rect.obj 14P trueP false
bool
"SYNTH" b f f0bool#Datatypes#bool_rect.obj 14P trueP falseboolP b
#Datatypes#_0.obj : Unrecognized object Printing If
Inductive nat : Set :=
O : nat
| S : natnatnatPropP OnatP nP S n
F
F
nat nP n
"MULTCASE"
"SYNTH""TOMATCH" n"EQN" f O
"EQN"
f0 n0 F n0S n0natPropP OnatP nP S nnatP nnatSetP OnatP nP S n
F
F
nat nP n
"MULTCASE"
"SYNTH""TOMATCH" n"EQN" f O
"EQN"
f0 n0 F n0S n0natSetP OnatP nP S nnatP nnat#Datatypes#nat_rect.obj 25P OnatP nP S n
F
F
nat nP n
"MULTCASE"
"SYNTH""TOMATCH" n"EQN" f O
"EQN"
f0 n0 F n0S n0nat#Datatypes#nat_rect.obj 25P OnatP nP S nnatP n
Inductive Empty_set : Set :=
Empty_setProp
Empty_set
"MULTCASE" P "TOMATCH" eEmpty_setPropEmpty_setP eEmpty_setSet
Empty_set
"MULTCASE" P "TOMATCH" eEmpty_setSetEmpty_setP eEmpty_set#Datatypes#Empty_set_rect.obj 41
Empty_set
"MULTCASE" P "TOMATCH" eEmpty_set#Datatypes#Empty_set_rect.obj 41Empty_setP e
Inductive identity [A:Set; a:A]
: ASet :=
refl_identity : identity A a a
Set
A
Aidentity A a yPropP a refl_identity A a
A
identity A a y
"MULTCASE"
P
"TOMATCH" i"EQN" f refl_identitySetAAidentity A a yPropP a refl_identity A aAidentity A a yP y i
Set
A
Aidentity A a ySetP a refl_identity A a
A
identity A a y
"MULTCASE"
P
"TOMATCH" i"EQN" f refl_identitySetAAidentity A a ySetP a refl_identity A aAidentity A a yP y i
Set
A
Aidentity A a y#Datatypes#identity_rect.obj 53P a refl_identity A a
A
identity A a y
"MULTCASE"
P
"TOMATCH" i"EQN" f refl_identitySetAAidentity A a y#Datatypes#identity_rect.obj 53P a refl_identity A aAidentity A a yP y i
Add Auto Marker
Inductive sum [A:Set; B:Set] : Set :=
inl : Asum A B
| inr : Bsum A B
Set
sum A BPropAP inl A B yBP inr A B ysum A B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xinl x
"EQN"
f0 xinr xSetSetsum A BPropAP inl A B yBP inr A B ysum A BP s
Set
sum A BSetAP inl A B yBP inr A B ysum A B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xinl x
"EQN"
f0 xinr xSetSetsum A BSetAP inl A B yBP inr A B ysum A BP s
Set
sum A B#Datatypes#sum_rect.obj 73AP inl A B yBP inr A B ysum A B
"MULTCASE"
"SYNTH""TOMATCH" s
"EQN"
f xinl x
"EQN"
f0 xinr xSetSetsum A B#Datatypes#sum_rect.obj 73AP inl A B yBP inr A B ysum A BP s
Inductive prod [A:Set; B:Set] : Set :=
pair : ABprod A B
Set
prod A BPropABP pair A B y y0prod A B
"FORCELET"
"SYNTH""TOMATCH" p
"EQN"
f x x0pair x x0SetSetprod A BPropABP pair A B y y0prod A BP p
Set
prod A BSetABP pair A B y y0prod A B
"FORCELET"
"SYNTH""TOMATCH" p
"EQN"
f x x0pair x x0SetSetprod A BSetABP pair A B y y0prod A BP p
Set
prod A B#Datatypes#prod_rect.obj 95ABP pair A B y y0prod A B
"FORCELET"
"SYNTH""TOMATCH" p
"EQN"
f x x0pair x x0SetSetprod A B#Datatypes#prod_rect.obj 95ABP pair A B y y0prod A BP p
#Datatypes#_2.obj : Unrecognized object Printing Let
SetSetprod A B
"FORCELET"
"SYNTH""TOMATCH" p"EQN" x pair x _prod A BAprod A B
"FORCELET"
"SYNTH""TOMATCH" p"EQN" y pair _ yprod A BB
Set
Set
prod A B
"FORCELET"
"SYNTH""TOMATCH" p"EQN" x pair x _SetSetprod A BA
Set
Set
prod A B
"FORCELET"
"SYNTH""TOMATCH" p"EQN" y pair _ ySetSetprod A BB
Syntax Macro Fst =
fst
"ISEVAR""ISEVAR"
Syntax Macro Snd =
snd
"ISEVAR""ISEVAR"
Add Auto Marker
#Core#let.obj : Unrecognized object ABSTRACTION
Syntax Marker
Syntax Marker
Syntax Marker