Article DOMAIN_1, MML version 4.99.1005
:: DOMAIN_1:th 9
theorem
for b1 being set
for b2, b3 being non empty set
st b1 in [:b2,b3:]
holds ex b4 being Element of b2 st
ex b5 being Element of b3 st
b1 = [b4,b5];
:: DOMAIN_1:th 12
theorem
for b1, b2 being non empty set
for b3, b4 being Element of [:b1,b2:]
st b3 `1 = b4 `1 & b3 `2 = b4 `2
holds b3 = b4;
:: DOMAIN_1:funcnot 1 => DOMAIN_1:func 1
definition
let a1, a2 be non empty set;
let a3 be Element of a1;
let a4 be Element of a2;
redefine func [a3, a4] -> Element of [:a1,a2:];
end;
:: DOMAIN_1:funcnot 2 => DOMAIN_1:func 2
definition
let a1, a2 be non empty set;
let a3 be Element of [:a1,a2:];
redefine func a3 `1 -> Element of a1;
end;
:: DOMAIN_1:funcnot 3 => DOMAIN_1:func 3
definition
let a1, a2 be non empty set;
let a3 be Element of [:a1,a2:];
redefine func a3 `2 -> Element of a2;
end;
:: DOMAIN_1:th 15
theorem
for b1 being set
for b2, b3, b4 being non empty set holds
b1 in [:b2,b3,b4:]
iff
ex b5 being Element of b2 st
ex b6 being Element of b3 st
ex b7 being Element of b4 st
b1 = [b5,b6,b7];
:: DOMAIN_1:th 16
theorem
for b1, b2, b3, b4 being non empty set
st for b5 being set holds
b5 in b1
iff
ex b6 being Element of b2 st
ex b7 being Element of b3 st
ex b8 being Element of b4 st
b5 = [b6,b7,b8]
holds b1 = [:b2,b3,b4:];
:: DOMAIN_1:th 17
theorem
for b1, b2, b3, b4 being non empty set holds
b1 = [:b2,b3,b4:]
iff
for b5 being set holds
b5 in b1
iff
ex b6 being Element of b2 st
ex b7 being Element of b3 st
ex b8 being Element of b4 st
b5 = [b6,b7,b8];
:: DOMAIN_1:funcnot 4 => DOMAIN_1:func 4
definition
let a1, a2, a3 be non empty set;
let a4 be Element of a1;
let a5 be Element of a2;
let a6 be Element of a3;
redefine func [a4, a5, a6] -> Element of [:a1,a2,a3:];
end;
:: DOMAIN_1:th 24
theorem
for b1 being set
for b2, b3, b4 being non empty set
for b5 being Element of [:b2,b3,b4:] holds
b1 = b5 `1
iff
for b6 being Element of b2
for b7 being Element of b3
for b8 being Element of b4
st b5 = [b6,b7,b8]
holds b1 = b6;
:: DOMAIN_1:th 25
theorem
for b1 being set
for b2, b3, b4 being non empty set
for b5 being Element of [:b2,b3,b4:] holds
b1 = b5 `2
iff
for b6 being Element of b2
for b7 being Element of b3
for b8 being Element of b4
st b5 = [b6,b7,b8]
holds b1 = b7;
:: DOMAIN_1:th 26
theorem
for b1 being set
for b2, b3, b4 being non empty set
for b5 being Element of [:b2,b3,b4:] holds
b1 = b5 `3
iff
for b6 being Element of b2
for b7 being Element of b3
for b8 being Element of b4
st b5 = [b6,b7,b8]
holds b1 = b8;
:: DOMAIN_1:th 28
theorem
for b1, b2, b3 being non empty set
for b4, b5 being Element of [:b1,b2,b3:]
st b4 `1 = b5 `1 & b4 `2 = b5 `2 & b4 `3 = b5 `3
holds b4 = b5;
:: DOMAIN_1:th 31
theorem
for b1 being set
for b2, b3, b4, b5 being non empty set holds
b1 in [:b2,b3,b4,b5:]
iff
ex b6 being Element of b2 st
ex b7 being Element of b3 st
ex b8 being Element of b4 st
ex b9 being Element of b5 st
b1 = [b6,b7,b8,b9];
:: DOMAIN_1:th 32
theorem
for b1, b2, b3, b4, b5 being non empty set
st for b6 being set holds
b6 in b1
iff
ex b7 being Element of b2 st
ex b8 being Element of b3 st
ex b9 being Element of b4 st
ex b10 being Element of b5 st
b6 = [b7,b8,b9,b10]
holds b1 = [:b2,b3,b4,b5:];
:: DOMAIN_1:th 33
theorem
for b1, b2, b3, b4, b5 being non empty set holds
b1 = [:b2,b3,b4,b5:]
iff
for b6 being set holds
b6 in b1
iff
ex b7 being Element of b2 st
ex b8 being Element of b3 st
ex b9 being Element of b4 st
ex b10 being Element of b5 st
b6 = [b7,b8,b9,b10];
:: DOMAIN_1:funcnot 5 => DOMAIN_1:func 5
definition
let a1, a2, a3, a4 be non empty set;
let a5 be Element of a1;
let a6 be Element of a2;
let a7 be Element of a3;
let a8 be Element of a4;
redefine func [a5, a6, a7, a8] -> Element of [:a1,a2,a3,a4:];
end;
:: DOMAIN_1:th 40
theorem
for b1 being set
for b2, b3, b4, b5 being non empty set
for b6 being Element of [:b2,b3,b4,b5:] holds
b1 = b6 `1
iff
for b7 being Element of b2
for b8 being Element of b3
for b9 being Element of b4
for b10 being Element of b5
st b6 = [b7,b8,b9,b10]
holds b1 = b7;
:: DOMAIN_1:th 41
theorem
for b1 being set
for b2, b3, b4, b5 being non empty set
for b6 being Element of [:b2,b3,b4,b5:] holds
b1 = b6 `2
iff
for b7 being Element of b2
for b8 being Element of b3
for b9 being Element of b4
for b10 being Element of b5
st b6 = [b7,b8,b9,b10]
holds b1 = b8;
:: DOMAIN_1:th 42
theorem
for b1 being set
for b2, b3, b4, b5 being non empty set
for b6 being Element of [:b2,b3,b4,b5:] holds
b1 = b6 `3
iff
for b7 being Element of b2
for b8 being Element of b3
for b9 being Element of b4
for b10 being Element of b5
st b6 = [b7,b8,b9,b10]
holds b1 = b9;
:: DOMAIN_1:th 43
theorem
for b1 being set
for b2, b3, b4, b5 being non empty set
for b6 being Element of [:b2,b3,b4,b5:] holds
b1 = b6 `4
iff
for b7 being Element of b2
for b8 being Element of b3
for b9 being Element of b4
for b10 being Element of b5
st b6 = [b7,b8,b9,b10]
holds b1 = b10;
:: DOMAIN_1:th 45
theorem
for b1, b2, b3, b4 being non empty set
for b5, b6 being Element of [:b1,b2,b3,b4:]
st b5 `1 = b6 `1 & b5 `2 = b6 `2 & b5 `3 = b6 `3 & b5 `4 = b6 `4
holds b5 = b6;
:: DOMAIN_1:sch 1
scheme DOMAIN_1:sch 1
for b1 being non empty set holds
{b2 where b2 is Element of b1: P1[b2]} is Element of bool b1
:: DOMAIN_1:sch 2
scheme DOMAIN_1:sch 2
for b1, b2 being non empty set holds
{[b3,b4] where b3 is Element of b1, b4 is Element of b2: P1[b3, b4]} is Element of bool [:b1,b2:]
:: DOMAIN_1:sch 3
scheme DOMAIN_1:sch 3
for b1, b2, b3 being non empty set holds
{[b4,b5,b6] where b4 is Element of b1, b5 is Element of b2, b6 is Element of b3: P1[b4, b5, b6]} is Element of bool [:b1,b2,b3:]
:: DOMAIN_1:sch 4
scheme DOMAIN_1:sch 4
for b1, b2, b3, b4 being non empty set holds
{[b5,b6,b7,b8] where b5 is Element of b1, b6 is Element of b2, b7 is Element of b3, b8 is Element of b4: P1[b5, b6, b7, b8]} is Element of bool [:b1,b2,b3,b4:]
:: DOMAIN_1:sch 5
scheme DOMAIN_1:sch 5
for b1 being non empty set
st for b2 being Element of b1
st P1[b2]
holds P2[b2]
holds {b2 where b2 is Element of b1: P1[b2]} c= {b2 where b2 is Element of b1: P2[b2]}
:: DOMAIN_1:sch 6
scheme DOMAIN_1:sch 6
for b1 being non empty set
st for b2 being Element of b1 holds
P1[b2]
iff
P2[b2]
holds {b2 where b2 is Element of b1: P1[b2]} = {b2 where b2 is Element of b1: P2[b2]}
:: DOMAIN_1:sch 7
scheme DOMAIN_1:sch 7
{F1 -> non empty set}:
{b1 where b1 is Element of F1(): P1[b1]} is Element of bool F1()
:: DOMAIN_1:th 48
theorem
for b1 being non empty set holds
b1 = {b2 where b2 is Element of b1: TRUE};
:: DOMAIN_1:th 49
theorem
for b1, b2 being non empty set holds
[:b1,b2:] = {[b3,b4] where b3 is Element of b1, b4 is Element of b2: TRUE};
:: DOMAIN_1:th 50
theorem
for b1, b2, b3 being non empty set holds
[:b1,b2,b3:] = {[b4,b5,b6] where b4 is Element of b1, b5 is Element of b2, b6 is Element of b3: TRUE};
:: DOMAIN_1:th 51
theorem
for b1, b2, b3, b4 being non empty set holds
[:b1,b2,b3,b4:] = {[b5,b6,b7,b8] where b5 is Element of b1, b6 is Element of b2, b7 is Element of b3, b8 is Element of b4: TRUE};
:: DOMAIN_1:th 52
theorem
for b1 being non empty set
for b2 being Element of bool b1 holds
b2 = {b3 where b3 is Element of b1: b3 in b2};
:: DOMAIN_1:th 53
theorem
for b1, b2 being non empty set
for b3 being Element of bool b1
for b4 being Element of bool b2 holds
[:b3,b4:] = {[b5,b6] where b5 is Element of b1, b6 is Element of b2: b5 in b3 & b6 in b4};
:: DOMAIN_1:th 54
theorem
for b1, b2, b3 being non empty set
for b4 being Element of bool b1
for b5 being Element of bool b2
for b6 being Element of bool b3 holds
[:b4,b5,b6:] = {[b7,b8,b9] where b7 is Element of b1, b8 is Element of b2, b9 is Element of b3: b7 in b4 & b8 in b5 & b9 in b6};
:: DOMAIN_1:th 55
theorem
for b1, b2, b3, b4 being non empty set
for b5 being Element of bool b1
for b6 being Element of bool b2
for b7 being Element of bool b3
for b8 being Element of bool b4 holds
[:b5,b6,b7,b8:] = {[b9,b10,b11,b12] where b9 is Element of b1, b10 is Element of b2, b11 is Element of b3, b12 is Element of b4: b9 in b5 & b10 in b6 & b11 in b7 & b12 in b8};
:: DOMAIN_1:th 56
theorem
for b1 being non empty set holds
{} b1 = {b2 where b2 is Element of b1: contradiction};
:: DOMAIN_1:th 57
theorem
for b1 being non empty set
for b2 being Element of bool b1 holds
b2 ` = {b3 where b3 is Element of b1: not b3 in b2};
:: DOMAIN_1:th 58
theorem
for b1 being non empty set
for b2, b3 being Element of bool b1 holds
b2 /\ b3 = {b4 where b4 is Element of b1: b4 in b2 & b4 in b3};
:: DOMAIN_1:th 59
theorem
for b1 being non empty set
for b2, b3 being Element of bool b1 holds
b2 \/ b3 = {b4 where b4 is Element of b1: (b4 in b2 or b4 in b3)};
:: DOMAIN_1:th 60
theorem
for b1 being non empty set
for b2, b3 being Element of bool b1 holds
b2 \ b3 = {b4 where b4 is Element of b1: b4 in b2 & not b4 in b3};
:: DOMAIN_1:th 61
theorem
for b1 being non empty set
for b2, b3 being Element of bool b1 holds
b2 \+\ b3 = {b4 where b4 is Element of b1: (b4 in b2 & not b4 in b3 or not b4 in b2 & b4 in b3)};
:: DOMAIN_1:th 62
theorem
for b1 being non empty set
for b2, b3 being Element of bool b1 holds
b2 \+\ b3 = {b4 where b4 is Element of b1: not b4 in b2
iff
b4 in b3};
:: DOMAIN_1:th 63
theorem
for b1 being non empty set
for b2, b3 being Element of bool b1 holds
b2 \+\ b3 = {b4 where b4 is Element of b1: b4 in b2
iff
not b4 in b3};
:: DOMAIN_1:th 64
theorem
for b1 being non empty set
for b2, b3 being Element of bool b1 holds
b2 \+\ b3 = {b4 where b4 is Element of b1: (b4 in b2 & not b4 in b3 or b4 in b3 & not b4 in b2)};
:: DOMAIN_1:funcnot 6 => DOMAIN_1:func 6
definition
let a1 be non empty set;
let a2 be Element of a1;
redefine func {a2} -> Element of bool a1;
end;
:: DOMAIN_1:funcnot 7 => DOMAIN_1:func 7
definition
let a1 be non empty set;
let a2, a3 be Element of a1;
redefine func {a2, a3} -> Element of bool a1;
commutativity;
:: for a1 being non empty set
:: for a2, a3 being Element of a1 holds
:: {a2,a3} = {a3,a2};
end;
:: DOMAIN_1:funcnot 8 => DOMAIN_1:func 8
definition
let a1 be non empty set;
let a2, a3, a4 be Element of a1;
redefine func {a2, a3, a4} -> Element of bool a1;
end;
:: DOMAIN_1:funcnot 9 => DOMAIN_1:func 9
definition
let a1 be non empty set;
let a2, a3, a4, a5 be Element of a1;
redefine func {a2, a3, a4, a5} -> Element of bool a1;
end;
:: DOMAIN_1:funcnot 10 => DOMAIN_1:func 10
definition
let a1 be non empty set;
let a2, a3, a4, a5, a6 be Element of a1;
redefine func {a2, a3, a4, a5, a6} -> Element of bool a1;
end;
:: DOMAIN_1:funcnot 11 => DOMAIN_1:func 11
definition
let a1 be non empty set;
let a2, a3, a4, a5, a6, a7 be Element of a1;
redefine func {a2, a3, a4, a5, a6, a7} -> Element of bool a1;
end;
:: DOMAIN_1:funcnot 12 => DOMAIN_1:func 12
definition
let a1 be non empty set;
let a2, a3, a4, a5, a6, a7, a8 be Element of a1;
redefine func {a2, a3, a4, a5, a6, a7, a8} -> Element of bool a1;
end;
:: DOMAIN_1:funcnot 13 => DOMAIN_1:func 13
definition
let a1 be non empty set;
let a2, a3, a4, a5, a6, a7, a8, a9 be Element of a1;
redefine func {a2, a3, a4, a5, a6, a7, a8, a9} -> Element of bool a1;
end;
:: DOMAIN_1:sch 8
scheme DOMAIN_1:sch 8
{F1 -> non empty set,
F2 -> non empty set,
F3 -> Element of F2()}:
{F3(b1) where b1 is Element of F1(): P1[b1]} is Element of bool F2()
:: DOMAIN_1:sch 9
scheme DOMAIN_1:sch 9
{F1 -> non empty set,
F2 -> non empty set,
F3 -> non empty set,
F4 -> Element of F3()}:
{F4(b1, b2) where b1 is Element of F1(), b2 is Element of F2(): P1[b1, b2]} is Element of bool F3()
:: DOMAIN_1:funcnot 14 => DOMAIN_1:func 14
definition
let a1, a2, a3 be non empty set;
let a4 be Element of [:[:a1,a2:],a3:];
redefine func a4 `11 -> Element of a1;
end;
:: DOMAIN_1:funcnot 15 => DOMAIN_1:func 15
definition
let a1, a2, a3 be non empty set;
let a4 be Element of [:[:a1,a2:],a3:];
redefine func a4 `12 -> Element of a2;
end;
:: DOMAIN_1:funcnot 16 => DOMAIN_1:func 16
definition
let a1, a2, a3 be non empty set;
let a4 be Element of [:a1,[:a2,a3:]:];
redefine func a4 `21 -> Element of a2;
end;
:: DOMAIN_1:funcnot 17 => DOMAIN_1:func 17
definition
let a1, a2, a3 be non empty set;
let a4 be Element of [:a1,[:a2,a3:]:];
redefine func a4 `22 -> Element of a3;
end;
:: DOMAIN_1:sch 10
scheme DOMAIN_1:sch 10
{F1 -> non empty set}:
{b1 where b1 is Element of F1(): P1[b1] & P2[b1]} = {b1 where b1 is Element of F1(): P1[b1]} /\ {b1 where b1 is Element of F1(): P2[b1]}