Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > d07d7ab417d79053e7e0155c99e1a1c8 > files > 2167

mlton-20100608-3.fc15.i686.rpm

(* a tautology checker *)

datatype t =
   Base of bool
 | Fun of bool -> t

val rec taut =
   fn Base b => b
    | Fun f => taut (f true) andalso taut (f false)

val rec bigTrue =
   fn 0 => Base true
    | n => Fun (fn _ => bigTrue (n - 1))

val _ = taut (bigTrue 12)