set C = Alg_El E;
set f = the addF of E;
Alg_El E is Preserv of the addF of E
then reconsider C = Alg_El E as Preserv of the addF of E ;
set f = the multF of E;
then
C is the multF of E -binopclosed
;
then reconsider m = the multF of E || C as BinOp of C by REALSET1:2;
( 1. E in C & 0. E in C )
;
then reconsider o = 1. E, z = 0. E as Element of C ;
take
doubleLoopStr(# C,( the addF of E || C),m,o,z #)
; ( the carrier of doubleLoopStr(# C,( the addF of E || C),m,o,z #) = Alg_El E & the addF of doubleLoopStr(# C,( the addF of E || C),m,o,z #) = the addF of E || the carrier of doubleLoopStr(# C,( the addF of E || C),m,o,z #) & the multF of doubleLoopStr(# C,( the addF of E || C),m,o,z #) = the multF of E || the carrier of doubleLoopStr(# C,( the addF of E || C),m,o,z #) & the OneF of doubleLoopStr(# C,( the addF of E || C),m,o,z #) = 1. E & the ZeroF of doubleLoopStr(# C,( the addF of E || C),m,o,z #) = 0. E )
thus
( the carrier of doubleLoopStr(# C,( the addF of E || C),m,o,z #) = Alg_El E & the addF of doubleLoopStr(# C,( the addF of E || C),m,o,z #) = the addF of E || the carrier of doubleLoopStr(# C,( the addF of E || C),m,o,z #) & the multF of doubleLoopStr(# C,( the addF of E || C),m,o,z #) = the multF of E || the carrier of doubleLoopStr(# C,( the addF of E || C),m,o,z #) & the OneF of doubleLoopStr(# C,( the addF of E || C),m,o,z #) = 1. E & the ZeroF of doubleLoopStr(# C,( the addF of E || C),m,o,z #) = 0. E )
; verum