X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=components%2Ftactics%2Finversion.ml;h=74117f7109dd596602e0d1ee26a23c7a1cd132da;hb=726f5e6ae2b5d7c7699bd9253936ad46558e6f38;hp=0ff369a9a6d4b4367cfeec9bce090c386eeeb029;hpb=7803bba7862a492252d520d670614738b866ae1e;p=helm.git diff --git a/components/tactics/inversion.ml b/components/tactics/inversion.ml index 0ff369a9a..74117f710 100644 --- a/components/tactics/inversion.ml +++ b/components/tactics/inversion.ml @@ -171,6 +171,7 @@ let isSetType paramty = ((Pervasives.compare (get_sort_type paramty) (Cic.Sort Cic.Prop)) != 0) +exception EqualityNotDefinedYet let private_inversion_tac ~term = let module T = CicTypeChecker in let module R = CicReduction in @@ -181,7 +182,11 @@ let private_inversion_tac ~term = (*DEBUG*) debug_print (lazy ("private inversion begins")); let (_,metasenv,_,_) = proof in - let uri_of_eq = LibraryObjects.eq_URI () in + let uri_of_eq = + match LibraryObjects.eq_URI () with + None -> raise EqualityNotDefinedYet + | Some uri -> uri + in let (_,context,goalty) = CicUtil.lookup_meta goal metasenv in let termty,_ = T.type_of_aux' metasenv context term CicUniv.empty_ugraph in let uri = baseuri_of_term termty in @@ -209,8 +214,7 @@ let private_inversion_tac ~term = (List.map (fun t -> ( match (T.type_of_aux' metasenv context t CicUniv.empty_ugraph) with - (term,graph) -> term - |_ -> assert false)) + (term,graph) -> term)) parameters) in let consno = List.length cons_list in