Nuprl Definition : qadd
r + s ==
  let r' ⟵ r
  in let s' ⟵ s
     in if isint(r')
     then if isint(s') then r' + s' else let i,j = s' in <(r' * j) + i, j> fi 
     else let p,q = r' 
          in if isint(s') then <p + (s' * q), q> else let i,j = s' in <(p * j) + (i * q), q * j> fi 
     fi 
Definitions occuring in Statement : 
callbyvalueall: callbyvalueall, 
ifthenelse: if b then t else f fi 
, 
bfalse: ff
, 
btrue: tt
, 
isint: isint def, 
spread: spread def, 
pair: <a, b>
, 
multiply: n * m
, 
add: n + m
Definitions occuring in definition : 
callbyvalueall: callbyvalueall, 
ifthenelse: if b then t else f fi 
, 
isint: isint def, 
btrue: tt
, 
bfalse: ff
, 
spread: spread def, 
pair: <a, b>
, 
add: n + m
, 
multiply: n * m
FDL editor aliases : 
qadd
Latex:
r  +  s  ==
    let  r'  \mleftarrow{}{}  r
    in  let  s'  \mleftarrow{}{}  s
          in  if  isint(r')
          then  if  isint(s')  then  r'  +  s'  else  let  i,j  =  s'  in  <(r'  *  j)  +  i,  j>  fi 
          else  let  p,q  =  r' 
                    in  if  isint(s')  then  <p  +  (s'  *  q),  q>  else  let  i,j  =  s'  in  <(p  *  j)  +  (i  *  q),  q  *  j>  fi 
          fi 
Date html generated:
2016_05_15-PM-10_37_30
Last ObjectModification:
2015_09_23-AM-08_26_53
Theory : rationals
Home
Index