let V be Ring; :: thesis: for V1 being Subset of V st V1 is additively-closed & V1 is multiplicatively-closed & not V1 is empty holds
doubleLoopStr(# V1,(Add_ V1,V),(mult_ V1,V),(One_ V1,V),(Zero_ V1,V) #) is Ring

let V1 be Subset of V; :: thesis: ( V1 is additively-closed & V1 is multiplicatively-closed & not V1 is empty implies doubleLoopStr(# V1,(Add_ V1,V),(mult_ V1,V),(One_ V1,V),(Zero_ V1,V) #) is Ring )
assume A1: ( V1 is additively-closed & V1 is multiplicatively-closed & not V1 is empty ) ; :: thesis: doubleLoopStr(# V1,(Add_ V1,V),(mult_ V1,V),(One_ V1,V),(Zero_ V1,V) #) is Ring
then A2: ( One_ V1,V = 1_ V & mult_ V1,V = the multF of V || V1 ) by Def6, Def8;
( Zero_ V1,V = 0. V & Add_ V1,V = the addF of V || V1 ) by A1, Def5, Def7;
hence doubleLoopStr(# V1,(Add_ V1,V),(mult_ V1,V),(One_ V1,V),(Zero_ V1,V) #) is Ring by A1, A2, Th1; :: thesis: verum