scheme
MinimalElement{
F1()
-> non
empty finite set ,
P1[
set ,
set ] } :
ex
x being
set st
(
x in F1() & ( for
y being
set st
y in F1() holds
not
P1[
y,
x] ) )
provided
A1:
for
x,
y being
set st
x in F1() &
y in F1() &
P1[
x,
y] holds
not
P1[
y,
x]
and A2:
for
x,
y,
z being
set st
x in F1() &
y in F1() &
z in F1() &
P1[
x,
y] &
P1[
y,
z] holds
P1[
x,
z]
scheme
FiniteC{
F1()
-> finite set ,
P1[
set ] } :
provided
A1:
for
A being
Subset of
F1() st ( for
B being
set st
B c< A holds
P1[
B] ) holds
P1[
A]
scheme
Numeration{
F1()
-> finite set ,
P1[
set ,
set ] } :
provided
A1:
for
x,
y being
set st
x in F1() &
y in F1() &
P1[
x,
y] holds
not
P1[
y,
x]
and A2:
for
x,
y,
z being
set st
x in F1() &
y in F1() &
z in F1() &
P1[
x,
y] &
P1[
y,
z] holds
P1[
x,
z]
set MC = MaxConstrSign ;