src/Tools/Metis/src/Normalize.sml
changeset 45778 df6e210fb44c
parent 42102 fcfd07f122d4
child 72004 913162a47d9f
equal deleted inserted replaced
45777:c36637603821 45778:df6e210fb44c
   940         SOME fm => fm
   940         SOME fm => fm
   941       | NONE => raise Bug "Normalize.lookupProved";
   941       | NONE => raise Bug "Normalize.lookupProved";
   942 
   942 
   943   fun prove acc proved ths =
   943   fun prove acc proved ths =
   944       case ths of
   944       case ths of
   945         [] => rev acc
   945         [] => List.rev acc
   946       | th :: ths' =>
   946       | th :: ths' =>
   947         if isProved proved th then prove acc proved ths'
   947         if isProved proved th then prove acc proved ths'
   948         else
   948         else
   949           let
   949           let
   950             val pars = parentsThm th
   950             val pars = parentsThm th
  1372 in
  1372 in
  1373   fun proveCnf ths =
  1373   fun proveCnf ths =
  1374       let
  1374       let
  1375         val (cls,_) = List.foldl add ([],initialCnf) ths
  1375         val (cls,_) = List.foldl add ([],initialCnf) ths
  1376       in
  1376       in
  1377         rev cls
  1377         List.rev cls
  1378       end;
  1378       end;
  1379 end;
  1379 end;
  1380 
  1380 
  1381 fun cnf fm =
  1381 fun cnf fm =
  1382     let
  1382     let