:: POLYNOM2 semantic presentation
scheme :: POLYNOM2:sch 3
s3{
F1()
-> set ,
F2()
-> Element of
F1(),
F3()
-> Nat,
F4()
-> FinSequence of
F1(),
F5()
-> FinSequence of
F1(),
P1[
set ,
set ,
set ] } :
provided
E1:
for
b1 being
Nat st 1
<= b1 &
b1 <= F3()
- 1 holds
for
b2,
b3,
b4 being
Element of
F1() st
P1[
b1,
b2,
b3] &
P1[
b1,
b2,
b4] holds
b3 = b4
and E2:
(
len F4()
= F3() & (
F4()
/. 1
= F2() or
F3()
= 0 ) & ( for
b1 being
Nat st 1
<= b1 &
b1 <= F3()
- 1 holds
P1[
b1,
F4()
/. b1,
F4()
/. (b1 + 1)] ) )
and E3:
(
len F5()
= F3() & (
F5()
/. 1
= F2() or
F3()
= 0 ) & ( for
b1 being
Nat st 1
<= b1 &
b1 <= F3()
- 1 holds
P1[
b1,
F5()
/. b1,
F5()
/. (b1 + 1)] ) )
scheme :: POLYNOM2:sch 5
s5{
F1()
-> Nat,
F2()
-> Nat,
P1[
Nat] } :
for
b1 being
Nat st
F1()
<= b1 &
b1 <= F2() holds
P1[
b1]
provided
E1:
P1[
F1()]
and E2:
for
b1 being
Nat st
F1()
<= b1 &
b1 < F2() & ( for
b2 being
Nat st
F1()
<= b2 &
b2 <= b1 holds
P1[
b2] ) holds
P1[
b1 + 1]
Lemma1:
for b1 being set
for b2 being Subset of b1
for b3 being Order of b1 holds
( b3 is_reflexive_in b2 & b3 is_antisymmetric_in b2 & b3 is_transitive_in b2 )
Lemma2:
for b1 being set
for b2 being Subset of b1
for b3 being Order of b1 st b3 is_connected_in b1 holds
b3 is_connected_in b2
Lemma3:
for b1 being set
for b2 being Subset of b1
for b3 being Order of b1 st b3 is_linear-order holds
b3 linearly_orders b2
theorem Th1: :: POLYNOM2:1
canceled;
theorem Th2: :: POLYNOM2:2
theorem Th3: :: POLYNOM2:3
canceled;
theorem Th4: :: POLYNOM2:4
Lemma6:
for b1 being set
for b2 being finite Subset of b1
for b3 being Element of b1
for b4 being Order of b1 st b4 linearly_orders {b3} \/ b2 holds
b4 linearly_orders b2
theorem Th5: :: POLYNOM2:5
theorem Th6: :: POLYNOM2:6
theorem Th7: :: POLYNOM2:7
theorem Th8: :: POLYNOM2:8
theorem Th9: :: POLYNOM2:9
theorem Th10: :: POLYNOM2:10
Lemma12:
for b1 being set
for b2 being FinSequence of b1 st dom b2 <> {} holds
1 in dom b2
theorem Th11: :: POLYNOM2:11
theorem Th12: :: POLYNOM2:12
theorem Th13: :: POLYNOM2:13
theorem Th14: :: POLYNOM2:14
Lemma17:
for b1 being set
for b2 being bag of b1 holds b2 is PartFunc of b1, NAT
:: deftheorem Def1 defines empty POLYNOM2:def 1 :
theorem Th15: :: POLYNOM2:15
definition
let c1 be
Ordinal;
let c2 be
bag of
c1;
let c3 be non
empty unital non
trivial doubleLoopStr ;
let c4 be
Function of
c1,
c3;
func eval c2,
c4 -> Element of
a3 means :
Def2:
:: POLYNOM2:def 2
ex
b1 being
FinSequence of the
carrier of
a3 st
(
len b1 = len (SgmX (RelIncl a1),(support a2)) &
a5 = Product b1 & ( for
b2 being
Nat st 1
<= b2 &
b2 <= len b1 holds
b1 /. b2 = (power a3) . ((a4 * (SgmX (RelIncl a1),(support a2))) /. b2),
((a2 * (SgmX (RelIncl a1),(support a2))) /. b2) ) );
existence
ex b1 being Element of c3ex b2 being FinSequence of the carrier of c3 st
( len b2 = len (SgmX (RelIncl c1),(support c2)) & b1 = Product b2 & ( for b3 being Nat st 1 <= b3 & b3 <= len b2 holds
b2 /. b3 = (power c3) . ((c4 * (SgmX (RelIncl c1),(support c2))) /. b3),((c2 * (SgmX (RelIncl c1),(support c2))) /. b3) ) )
uniqueness
for b1, b2 being Element of c3 st ex b3 being FinSequence of the carrier of c3 st
( len b3 = len (SgmX (RelIncl c1),(support c2)) & b1 = Product b3 & ( for b4 being Nat st 1 <= b4 & b4 <= len b3 holds
b3 /. b4 = (power c3) . ((c4 * (SgmX (RelIncl c1),(support c2))) /. b4),((c2 * (SgmX (RelIncl c1),(support c2))) /. b4) ) ) & ex b3 being FinSequence of the carrier of c3 st
( len b3 = len (SgmX (RelIncl c1),(support c2)) & b2 = Product b3 & ( for b4 being Nat st 1 <= b4 & b4 <= len b3 holds
b3 /. b4 = (power c3) . ((c4 * (SgmX (RelIncl c1),(support c2))) /. b4),((c2 * (SgmX (RelIncl c1),(support c2))) /. b4) ) ) holds
b1 = b2
end;
:: deftheorem Def2 defines eval POLYNOM2:def 2 :
Lemma21:
for b1 being set holds support (EmptyBag b1) = {}
theorem Th16: :: POLYNOM2:16
theorem Th17: :: POLYNOM2:17
Lemma24:
for b1 being Ordinal
for b2 being non empty add-associative right_zeroed right_complementable unital associative commutative distributive non trivial doubleLoopStr
for b3, b4 being bag of b1
for b5 being set st not b5 in support b3 & support b4 = (support b3) \/ {b5} & ( for b6 being set st b6 <> b5 holds
b4 . b6 = b3 . b6 ) holds
for b6 being Function of b1,b2
for b7 being Element of b2 st b7 = (power b2) . (b6 . b5),(b4 . b5) holds
eval b4,b6 = b7 * (eval b3,b6)
Lemma25:
for b1 being Ordinal
for b2 being non empty Abelian add-associative right_zeroed right_complementable unital associative commutative distributive non trivial doubleLoopStr
for b3 being bag of b1 st ex b4 being set st support b3 = {b4} holds
for b4 being bag of b1
for b5 being Function of b1,b2 holds eval (b3 + b4),b5 = (eval b3,b5) * (eval b4,b5)
theorem Th18: :: POLYNOM2:18
theorem Th19: :: POLYNOM2:19
theorem Th20: :: POLYNOM2:20
:: deftheorem Def3 defines @ POLYNOM2:def 3 :
definition
let c1 be
Ordinal;
let c2 be non
empty add-associative right_zeroed right_complementable unital distributive non
trivial doubleLoopStr ;
let c3 be
Polynomial of
c1,
c2;
let c4 be
Function of
c1,
c2;
func eval c3,
c4 -> Element of
a2 means :
Def4:
:: POLYNOM2:def 4
ex
b1 being
FinSequence of the
carrier of
a2 st
(
len b1 = len (SgmX (BagOrder a1),(Support a3)) &
a5 = Sum b1 & ( for
b2 being
Nat st 1
<= b2 &
b2 <= len b1 holds
b1 /. b2 = ((a3 * (SgmX (BagOrder a1),(Support a3))) /. b2) * (eval (((SgmX (BagOrder a1),(Support a3)) /. b2) @ ),a4) ) );
existence
ex b1 being Element of c2ex b2 being FinSequence of the carrier of c2 st
( len b2 = len (SgmX (BagOrder c1),(Support c3)) & b1 = Sum b2 & ( for b3 being Nat st 1 <= b3 & b3 <= len b2 holds
b2 /. b3 = ((c3 * (SgmX (BagOrder c1),(Support c3))) /. b3) * (eval (((SgmX (BagOrder c1),(Support c3)) /. b3) @ ),c4) ) )
uniqueness
for b1, b2 being Element of c2 st ex b3 being FinSequence of the carrier of c2 st
( len b3 = len (SgmX (BagOrder c1),(Support c3)) & b1 = Sum b3 & ( for b4 being Nat st 1 <= b4 & b4 <= len b3 holds
b3 /. b4 = ((c3 * (SgmX (BagOrder c1),(Support c3))) /. b4) * (eval (((SgmX (BagOrder c1),(Support c3)) /. b4) @ ),c4) ) ) & ex b3 being FinSequence of the carrier of c2 st
( len b3 = len (SgmX (BagOrder c1),(Support c3)) & b2 = Sum b3 & ( for b4 being Nat st 1 <= b4 & b4 <= len b3 holds
b3 /. b4 = ((c3 * (SgmX (BagOrder c1),(Support c3))) /. b4) * (eval (((SgmX (BagOrder c1),(Support c3)) /. b4) @ ),c4) ) ) holds
b1 = b2
end;
:: deftheorem Def4 defines eval POLYNOM2:def 4 :
theorem Th21: :: POLYNOM2:21
theorem Th22: :: POLYNOM2:22
theorem Th23: :: POLYNOM2:23
theorem Th24: :: POLYNOM2:24
Lemma34:
for b1 being Ordinal
for b2 being non empty Abelian add-associative right_zeroed right_complementable unital distributive non trivial doubleLoopStr
for b3, b4 being Polynomial of b1,b2
for b5 being Function of b1,b2
for b6 being bag of b1 st not b6 in Support b3 & Support b4 = (Support b3) \/ {b6} & ( for b7 being bag of b1 st b7 <> b6 holds
b4 . b7 = b3 . b7 ) holds
eval b4,b5 = (eval b3,b5) + ((b4 . b6) * (eval b6,b5))
Lemma35:
for b1 being Ordinal
for b2 being non empty Abelian add-associative right_zeroed right_complementable unital distributive non trivial doubleLoopStr
for b3 being Polynomial of b1,b2 st ex b4 being bag of b1 st Support b3 = {b4} holds
for b4 being Polynomial of b1,b2
for b5 being Function of b1,b2 holds eval (b3 + b4),b5 = (eval b3,b5) + (eval b4,b5)
theorem Th25: :: POLYNOM2:25
theorem Th26: :: POLYNOM2:26
Lemma37:
for b1 being Ordinal
for b2 being non empty Abelian add-associative right_zeroed right_complementable unital associative commutative distributive non trivial doubleLoopStr
for b3, b4 being Polynomial of b1,b2
for b5, b6 being bag of b1 st Support b3 = {b5} & Support b4 = {b6} holds
for b7 being Function of b1,b2 holds eval (b3 *' b4),b7 = (eval b3,b7) * (eval b4,b7)
Lemma38:
for b1 being Ordinal
for b2 being non empty Abelian add-associative right_zeroed right_complementable unital associative commutative distributive non trivial doubleLoopStr
for b3 being Polynomial of b1,b2 st ex b4 being bag of b1 st Support b3 = {b4} holds
for b4 being Polynomial of b1,b2
for b5 being Function of b1,b2 holds eval (b4 *' b3),b5 = (eval b4,b5) * (eval b3,b5)
theorem Th27: :: POLYNOM2:27
definition
let c1 be
Ordinal;
let c2 be non
empty add-associative right_zeroed right_complementable unital distributive non
trivial doubleLoopStr ;
let c3 be
Function of
c1,
c2;
func Polynom-Evaluation c1,
c2,
c3 -> Function of
(Polynom-Ring a1,a2),
a2 means :
Def5:
:: POLYNOM2:def 5
for
b1 being
Polynomial of
a1,
a2 holds
a4 . b1 = eval b1,
a3;
existence
ex b1 being Function of (Polynom-Ring c1,c2),c2 st
for b2 being Polynomial of c1,c2 holds b1 . b2 = eval b2,c3
uniqueness
for b1, b2 being Function of (Polynom-Ring c1,c2),c2 st ( for b3 being Polynomial of c1,c2 holds b1 . b3 = eval b3,c3 ) & ( for b3 being Polynomial of c1,c2 holds b2 . b3 = eval b3,c3 ) holds
b1 = b2
end;
:: deftheorem Def5 defines Polynom-Evaluation POLYNOM2:def 5 :