A1:
0_. L in { x where x is Polynomial of L : verum }
;

then reconsider Ca = { x where x is Polynomial of L : verum } as non empty set ;

reconsider Ze = 0_. L as Element of Ca by A1;

defpred S_{1}[ set , set , set ] means ex p, q being Polynomial of L st

( p = $1 & q = $2 & $3 = p + q );

A2: for x, y being Element of Ca ex u being Element of Ca st S_{1}[x,y,u]

A5: for x, y being Element of Ca holds S_{1}[x,y,Ad . (x,y)]
from BINOP_1:sch 3(A2);

1_. L in { x where x is Polynomial of L : verum } ;

then reconsider Un = 1_. L as Element of Ca ;

defpred S_{2}[ set , set , set ] means ex p, q being Polynomial of L st

( p = $1 & q = $2 & $3 = p *' q );

A6: for x, y being Element of Ca ex u being Element of Ca st S_{2}[x,y,u]

A9: for x, y being Element of Ca holds S_{2}[x,y,Mu . (x,y)]
from BINOP_1:sch 3(A6);

reconsider P = doubleLoopStr(# Ca,Ad,Mu,Un,Ze #) as non empty strict doubleLoopStr ;

take P ; :: thesis: ( ( for x being set holds

( x in the carrier of P iff x is Polynomial of L ) ) & ( for x, y being Element of P

for p, q being sequence of L st x = p & y = q holds

x + y = p + q ) & ( for x, y being Element of P

for p, q being sequence of L st x = p & y = q holds

x * y = p *' q ) & 0. P = 0_. L & 1. P = 1_. L )

thus for x being set holds

( x in the carrier of P iff x is Polynomial of L ) :: thesis: ( ( for x, y being Element of P

for p, q being sequence of L st x = p & y = q holds

x + y = p + q ) & ( for x, y being Element of P

for p, q being sequence of L st x = p & y = q holds

x * y = p *' q ) & 0. P = 0_. L & 1. P = 1_. L )

for p, q being sequence of L st x = p & y = q holds

x + y = p + q :: thesis: ( ( for x, y being Element of P

for p, q being sequence of L st x = p & y = q holds

x * y = p *' q ) & 0. P = 0_. L & 1. P = 1_. L )

for p, q being sequence of L st x = p & y = q holds

x * y = p *' q :: thesis: ( 0. P = 0_. L & 1. P = 1_. L )

thus 1. P = 1_. L ; :: thesis: verum

then reconsider Ca = { x where x is Polynomial of L : verum } as non empty set ;

reconsider Ze = 0_. L as Element of Ca by A1;

defpred S

( p = $1 & q = $2 & $3 = p + q );

A2: for x, y being Element of Ca ex u being Element of Ca st S

proof

consider Ad being Function of [:Ca,Ca:],Ca such that
let x, y be Element of Ca; :: thesis: ex u being Element of Ca st S_{1}[x,y,u]

x in Ca ;

then consider p being Polynomial of L such that

A3: x = p ;

y in Ca ;

then consider q being Polynomial of L such that

A4: y = q ;

p + q in Ca ;

then reconsider u = p + q as Element of Ca ;

take u ; :: thesis: S_{1}[x,y,u]

take p ; :: thesis: ex q being Polynomial of L st

( p = x & q = y & u = p + q )

take q ; :: thesis: ( p = x & q = y & u = p + q )

thus ( p = x & q = y & u = p + q ) by A3, A4; :: thesis: verum

end;x in Ca ;

then consider p being Polynomial of L such that

A3: x = p ;

y in Ca ;

then consider q being Polynomial of L such that

A4: y = q ;

p + q in Ca ;

then reconsider u = p + q as Element of Ca ;

take u ; :: thesis: S

take p ; :: thesis: ex q being Polynomial of L st

( p = x & q = y & u = p + q )

take q ; :: thesis: ( p = x & q = y & u = p + q )

thus ( p = x & q = y & u = p + q ) by A3, A4; :: thesis: verum

A5: for x, y being Element of Ca holds S

1_. L in { x where x is Polynomial of L : verum } ;

then reconsider Un = 1_. L as Element of Ca ;

defpred S

( p = $1 & q = $2 & $3 = p *' q );

A6: for x, y being Element of Ca ex u being Element of Ca st S

proof

consider Mu being Function of [:Ca,Ca:],Ca such that
let x, y be Element of Ca; :: thesis: ex u being Element of Ca st S_{2}[x,y,u]

x in Ca ;

then consider p being Polynomial of L such that

A7: x = p ;

y in Ca ;

then consider q being Polynomial of L such that

A8: y = q ;

p *' q in Ca ;

then reconsider u = p *' q as Element of Ca ;

take u ; :: thesis: S_{2}[x,y,u]

take p ; :: thesis: ex q being Polynomial of L st

( p = x & q = y & u = p *' q )

take q ; :: thesis: ( p = x & q = y & u = p *' q )

thus ( p = x & q = y & u = p *' q ) by A7, A8; :: thesis: verum

end;x in Ca ;

then consider p being Polynomial of L such that

A7: x = p ;

y in Ca ;

then consider q being Polynomial of L such that

A8: y = q ;

p *' q in Ca ;

then reconsider u = p *' q as Element of Ca ;

take u ; :: thesis: S

take p ; :: thesis: ex q being Polynomial of L st

( p = x & q = y & u = p *' q )

take q ; :: thesis: ( p = x & q = y & u = p *' q )

thus ( p = x & q = y & u = p *' q ) by A7, A8; :: thesis: verum

A9: for x, y being Element of Ca holds S

reconsider P = doubleLoopStr(# Ca,Ad,Mu,Un,Ze #) as non empty strict doubleLoopStr ;

take P ; :: thesis: ( ( for x being set holds

( x in the carrier of P iff x is Polynomial of L ) ) & ( for x, y being Element of P

for p, q being sequence of L st x = p & y = q holds

x + y = p + q ) & ( for x, y being Element of P

for p, q being sequence of L st x = p & y = q holds

x * y = p *' q ) & 0. P = 0_. L & 1. P = 1_. L )

thus for x being set holds

( x in the carrier of P iff x is Polynomial of L ) :: thesis: ( ( for x, y being Element of P

for p, q being sequence of L st x = p & y = q holds

x + y = p + q ) & ( for x, y being Element of P

for p, q being sequence of L st x = p & y = q holds

x * y = p *' q ) & 0. P = 0_. L & 1. P = 1_. L )

proof

thus
for x, y being Element of P
let x be set ; :: thesis: ( x in the carrier of P iff x is Polynomial of L )

thus ( x in the carrier of P implies x is Polynomial of L ) :: thesis: ( x is Polynomial of L implies x in the carrier of P )

end;thus ( x in the carrier of P implies x is Polynomial of L ) :: thesis: ( x is Polynomial of L implies x in the carrier of P )

proof

thus
( x is Polynomial of L implies x in the carrier of P )
; :: thesis: verum
assume
x in the carrier of P
; :: thesis: x is Polynomial of L

then ex p being Polynomial of L st x = p ;

hence x is Polynomial of L ; :: thesis: verum

end;then ex p being Polynomial of L st x = p ;

hence x is Polynomial of L ; :: thesis: verum

for p, q being sequence of L st x = p & y = q holds

x + y = p + q :: thesis: ( ( for x, y being Element of P

for p, q being sequence of L st x = p & y = q holds

x * y = p *' q ) & 0. P = 0_. L & 1. P = 1_. L )

proof

thus
for x, y being Element of P
let x, y be Element of P; :: thesis: for p, q being sequence of L st x = p & y = q holds

x + y = p + q

let p, q be sequence of L; :: thesis: ( x = p & y = q implies x + y = p + q )

assume A10: ( x = p & y = q ) ; :: thesis: x + y = p + q

ex p1, q1 being Polynomial of L st

( p1 = x & q1 = y & Ad . (x,y) = p1 + q1 ) by A5;

hence x + y = p + q by A10; :: thesis: verum

end;x + y = p + q

let p, q be sequence of L; :: thesis: ( x = p & y = q implies x + y = p + q )

assume A10: ( x = p & y = q ) ; :: thesis: x + y = p + q

ex p1, q1 being Polynomial of L st

( p1 = x & q1 = y & Ad . (x,y) = p1 + q1 ) by A5;

hence x + y = p + q by A10; :: thesis: verum

for p, q being sequence of L st x = p & y = q holds

x * y = p *' q :: thesis: ( 0. P = 0_. L & 1. P = 1_. L )

proof

thus
0. P = 0_. L
; :: thesis: 1. P = 1_. L
let x, y be Element of P; :: thesis: for p, q being sequence of L st x = p & y = q holds

x * y = p *' q

let p, q be sequence of L; :: thesis: ( x = p & y = q implies x * y = p *' q )

assume A11: ( x = p & y = q ) ; :: thesis: x * y = p *' q

ex p1, q1 being Polynomial of L st

( p1 = x & q1 = y & Mu . (x,y) = p1 *' q1 ) by A9;

hence x * y = p *' q by A11; :: thesis: verum

end;x * y = p *' q

let p, q be sequence of L; :: thesis: ( x = p & y = q implies x * y = p *' q )

assume A11: ( x = p & y = q ) ; :: thesis: x * y = p *' q

ex p1, q1 being Polynomial of L st

( p1 = x & q1 = y & Mu . (x,y) = p1 *' q1 ) by A9;

hence x * y = p *' q by A11; :: thesis: verum

thus 1. P = 1_. L ; :: thesis: verum