Article PRE_CIRC, MML version 4.99.1005
:: PRE_CIRC:sch 1
scheme PRE_CIRC:sch 1
{F1 -> non empty finite set,
F2 -> set}:
{F2(b1) where b1 is Element of F1(): P1[b1]} is finite
:: PRE_CIRC:th 2
theorem
for b1 being Relation-like Function-like set
for b2, b3 being set
st proj1 b1 = {b2} & proj2 b1 = {b3}
holds b1 = {[b2,b3]};
:: PRE_CIRC:th 3
theorem
for b1, b2, b3 being Relation-like Function-like set
st b1 c= b2
holds b1 +* b3 c= b2 +* b3;
:: PRE_CIRC:th 4
theorem
for b1, b2, b3 being Relation-like Function-like set
st b1 c= b2 & proj1 b1 misses proj1 b3
holds b1 c= b2 +* b3;
:: PRE_CIRC:exreg 1
registration
cluster non empty finite natural-membered set;
end;
:: PRE_CIRC:funcnot 1 => SEQ_4:func 2
notation
let a1 be non empty finite real-membered set;
synonym max a1 for upper_bound a1;
end;
:: PRE_CIRC:funcnot 2 => PRE_CIRC:func 1
definition
let a1 be non empty finite real-membered set;
redefine func max A1 -> real set means
it in a1 &
(for b1 being real set
st b1 in a1
holds b1 <= it);
end;
:: PRE_CIRC:def 1
theorem
for b1 being non empty finite real-membered set
for b2 being real set holds
b2 = max b1
iff
b2 in b1 &
(for b3 being real set
st b3 in b1
holds b3 <= b2);
:: PRE_CIRC:funcreg 1
registration
let a1 be non empty finite natural-membered set;
cluster upper_bound a1 -> natural real;
end;
:: PRE_CIRC:th 5
theorem
for b1 being set
for b2 being ManySortedSet of b1 holds
b2 # . <*> b1 = {{}};
:: PRE_CIRC:sch 2
scheme PRE_CIRC:sch 2
{F1 -> set,
F2 -> set,
F3 -> set}:
ex b1 being ManySortedSet of F1() st
for b2 being Element of F1()
st b2 in F1()
holds (P1[b2] implies b1 . b2 = F2(b2)) & (P1[b2] or b1 . b2 = F3(b2))
:: PRE_CIRC:attrnot 1 => FINSET_1:attr 2
notation
let a1 be set;
let a2 be ManySortedSet of a1;
synonym locally-finite for finite-yielding;
end;
:: PRE_CIRC:attrnot 2 => PRE_CIRC:attr 1
definition
let a1 be set;
let a2 be ManySortedSet of a1;
redefine attr a2 is locally-finite means
for b1 being set
st b1 in a1
holds a2 . b1 is finite;
end;
:: PRE_CIRC:dfs 2
definiens
let a1 be set;
let a2 be ManySortedSet of a1;
To prove
a1 is finite-yielding
it is sufficient to prove
thus for b1 being set
st b1 in a1
holds a2 . b1 is finite;
:: PRE_CIRC:def 3
theorem
for b1 being set
for b2 being ManySortedSet of b1 holds
b2 is finite-yielding
iff
for b3 being set
st b3 in b1
holds b2 . b3 is finite;
:: PRE_CIRC:exreg 2
registration
let a1 be set;
cluster Relation-like non-empty Function-like finite-yielding ManySortedSet of a1;
end;
:: PRE_CIRC:funcnot 3 => PRE_CIRC:func 2
definition
let a1, a2 be set;
redefine func a1 --> a2 -> ManySortedSet of a1;
end;
:: PRE_CIRC:funcnot 4 => PRE_CIRC:func 3
definition
let a1 be set;
let a2 be ManySortedSet of a1;
let a3 be Element of bool a1;
redefine func a2 | a3 -> ManySortedSet of a3;
end;
:: PRE_CIRC:funcreg 2
registration
let a1 be Relation-like non-empty Function-like set;
let a2 be set;
cluster a1 | a2 -> Relation-like non-empty;
end;
:: PRE_CIRC:th 6
theorem
for b1 being non empty set
for b2 being non-empty ManySortedSet of b1 holds
union proj2 b2 is not empty;
:: PRE_CIRC:th 7
theorem
for b1 being set holds
uncurry (b1 --> {}) = {};
:: PRE_CIRC:th 8
theorem
for b1 being non empty set
for b2 being set
for b3 being non-empty ManySortedSet of b1
for b4 being ManySortedFunction of b1 --> b2,b3 holds
proj1 commute b4 = b2;
:: PRE_CIRC:sch 3
scheme PRE_CIRC:sch 3
{F1 -> non empty set,
F2 -> Element of F1(),
F3 -> Element of F1()}:
(ex b1 being Function-like quasi_total Relation of NAT,F1() st
b1 . {} = F2() &
(for b2 being natural set holds
b1 . (b2 + 1) = F3(b2, b1 . b2))) &
(for b1, b2 being Function-like quasi_total Relation of NAT,F1()
st b1 . {} = F2() &
(for b3 being natural set holds
b1 . (b3 + 1) = F3(b3, b1 . b3)) &
b2 . {} = F2() &
(for b3 being natural set holds
b2 . (b3 + 1) = F3(b3, b2 . b3))
holds b1 = b2)
:: PRE_CIRC:sch 4
scheme PRE_CIRC:sch 4
{F1 -> non empty set,
F2 -> Element of bool F1(),
F3 -> ManySortedSet of F2(),
F4 -> ManySortedSet of F2(),
F5 -> set}:
ex b1 being ManySortedFunction of F3(),F4() st
for b2 being Element of F1()
st b2 in F2()
holds b1 . b2 = F5(b2)
provided
for b1 being Element of F1()
st b1 in F2()
holds F5(b1) is Function-like quasi_total Relation of F3() . b1,F4() . b1;
:: PRE_CIRC:th 9
theorem
for b1 being set
for b2 being non-empty ManySortedSet of b1
for b3 being Relation-like Function-like set
for b4 being Element of product b2
st proj1 b3 c= proj1 b2 &
(for b5 being set
st b5 in proj1 b3
holds b3 . b5 in b2 . b5)
holds b4 +* b3 is Element of product b2;
:: PRE_CIRC:th 10
theorem
for b1, b2 being non empty set
for b3 being non-empty ManySortedSet of b1
for b4 being ManySortedFunction of b1 --> b2,b3
for b5 being Element of b2 holds
ex b6 being ManySortedSet of b1 st
b6 = (commute b4) . b5 & b6 in b3;
:: PRE_CIRC:th 11
theorem
for b1 being set
for b2 being ManySortedSet of b1
for b3, b4 being Relation-like Function-like set
st b3 in product b2
holds b4 * b3 in product (b4 * b2);
:: PRE_CIRC:th 12
theorem
for b1 being Element of NAT
for b2 being set holds
product (b1 |-> {b2}) = {b1 |-> b2};
:: PRE_CIRC:condreg 1
registration
let a1 be non empty set;
cluster -> finite (Element of FinTrees a1);
end;
:: PRE_CIRC:funcreg 3
registration
let a1 be Relation-like Function-like finite DecoratedTree-like set;
let a2 be Element of proj1 a1;
cluster a1 | a2 -> Relation-like Function-like finite DecoratedTree-like;
end;
:: PRE_CIRC:th 13
theorem
for b1 being non empty finite Tree-like set
for b2 being Element of b1 holds
b1 | b2,{b3 where b3 is Element of b1: b2 c= b3} are_equipotent;
:: PRE_CIRC:funcreg 4
registration
let a1 be Relation-like Function-like finite DecoratedTree-like set;
let a2 be Element of proj1 a1;
let a3 be Relation-like Function-like finite DecoratedTree-like set;
cluster a1 with-replacement(a2,a3) -> Relation-like Function-like finite DecoratedTree-like;
end;
:: PRE_CIRC:th 14
theorem
for b1, b2 being non empty finite Tree-like set
for b3 being Element of b1 holds
b1 with-replacement(b3,b2) = {b4 where b4 is Element of b1: not b3 c= b4} \/ {b3 ^ b4 where b4 is Element of b2: TRUE};
:: PRE_CIRC:th 15
theorem
for b1, b2 being non empty finite Tree-like set
for b3 being Element of b1
for b4 being FinSequence of NAT
st b4 in b1 with-replacement(b3,b2) & b3 c= b4
holds ex b5 being Element of b2 st
b4 = b3 ^ b5;
:: PRE_CIRC:th 16
theorem
for b1 being Relation-like Function-like FinSequence-like Tree-yielding set
for b2 being Element of NAT
st b2 + 1 in dom b1
holds (tree b1) | <*b2*> = b1 . (b2 + 1);
:: PRE_CIRC:th 17
theorem
for b1 being Relation-like Function-like FinSequence-like DTree-yielding set
for b2 being Element of NAT
st b2 + 1 in dom b1
holds <*b2*> in tree doms b1;
:: PRE_CIRC:th 18
theorem
for b1, b2 being Relation-like Function-like FinSequence-like Tree-yielding set
for b3 being Element of NAT
st len b1 = len b2 &
b3 + 1 in dom b1 &
(for b4 being Element of NAT
st b4 in dom b1 & b4 <> b3 + 1
holds b1 . b4 = b2 . b4)
for b4 being non empty Tree-like set
st b2 . (b3 + 1) = b4
holds tree b2 = (tree b1) with-replacement(<*b3*>,b4);
:: PRE_CIRC:th 19
theorem
for b1, b2 being Relation-like Function-like finite DecoratedTree-like set
for b3 being set
for b4 being Element of NAT
for b5 being Relation-like Function-like FinSequence-like DTree-yielding set
st <*b4*> in proj1 b1 & b1 = b3 -tree b5
holds ex b6 being Relation-like Function-like FinSequence-like DTree-yielding set st
b1 with-replacement(<*b4*>,b2) = b3 -tree b6 &
len b6 = len b5 &
b6 . (b4 + 1) = b2 &
(for b7 being Element of NAT
st b7 in dom b5 & b7 <> b4 + 1
holds b6 . b7 = b5 . b7);
:: PRE_CIRC:th 20
theorem
for b1 being non empty finite Tree-like set
for b2 being Element of b1
st b2 <> {}
holds card (b1 | b2) < card b1;
:: PRE_CIRC:th 21
theorem
for b1 being Relation-like Function-like set holds
Card b1 = Card proj1 b1;
:: PRE_CIRC:th 22
theorem
for b1, b2 being non empty finite Tree-like set
for b3 being Element of b1 holds
(card (b1 with-replacement(b3,b2))) + card (b1 | b3) = (card b1) + card b2;
:: PRE_CIRC:th 23
theorem
for b1, b2 being Relation-like Function-like finite DecoratedTree-like set
for b3 being Element of proj1 b1 holds
(card (b1 with-replacement(b3,b2))) + card (b1 | b3) = (card b1) + card b2;
:: PRE_CIRC:funcreg 5
registration
let a1 be set;
cluster root-tree a1 -> Relation-like Function-like finite DecoratedTree-like;
end;
:: PRE_CIRC:th 24
theorem
for b1 being set holds
card root-tree b1 = 1;
:: PRE_CIRC:funcnot 5 => SEQ_4:func 3
notation
let a1 be non empty finite real-membered set;
synonym min a1 for lower_bound a1;
end;
:: PRE_CIRC:funcnot 6 => SEQ_4:func 3
definition
let a1 be real-membered set;
func min A1 -> real set means
it in a1 &
(for b1 being real set
st b1 in a1
holds it <= b1);
end;
:: PRE_CIRC:def 4
theorem
for b1 being non empty finite real-membered set
for b2 being real set holds
b2 = lower_bound b1
iff
b2 in b1 &
(for b3 being real set
st b3 in b1
holds b2 <= b3);
:: PRE_CIRC:th 25
theorem
for b1 being non empty finite set holds
(card b1) - 1 = (card b1) -' 1;
:: PRE_CIRC:th 26
theorem
for b1, b2 being Relation-like Function-like set holds
proj1 b1,proj1 b2 are_equipotent
iff
b1,b2 are_equipotent;
:: PRE_CIRC:th 27
theorem
for b1, b2 being Relation-like Function-like finite set
st proj1 b1 misses proj1 b2
holds card (b1 +* b2) = (card b1) + card b2;
:: PRE_CIRC:funcreg 6
registration
let a1 be non empty finite natural-membered set;
cluster lower_bound a1 -> real integer;
end;
:: PRE_CIRC:th 28
theorem
for b1 being real set holds
max {b1} = b1;