reserve X for non empty set;
reserve x for Element of X;
reserve d1,d2 for Element of X;
reserve A for BinOp of X;
reserve M for Function of [:X,X:],X;
reserve V for Ring;
reserve V1 for Subset of V;

theorem
  V1 is additively-closed multiplicatively-closed non empty implies
  doubleLoopStr(# V1,Add_(V1,V),mult_(V1,V),One_(V1,V),Zero_(V1,V) #) is Ring
proof
  assume
A1: V1 is additively-closed multiplicatively-closed non empty;
  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 thesis by A1,A2,Th1;
end;
