let module PEH = ProofEngineHelpers in
let module PT = PrimitiveTactics in
assert (wanted = None); (* this should be checked syntactically *)
- (*assert (hyps_pat = []); (*CSC: not implemented yet! *)*)
let proof,goal = status in
let curi, metasenv, pbo, pty = proof in
let (metano,context,gty) as conjecture = CicUtil.lookup_meta goal metasenv in
match hyps_pat with
[] -> None,true,PT.exact_tac,concl_pat,gty
| [name,pat] ->
- (*CSC: bug here; I am ignoring the concl_pat *)
let rec find_hyp n =
function
[] -> assert false
| Some (Cic.Name s,Cic.Decl ty)::_ when name = s ->
Cic.Rel n, CicSubstitution.lift n ty
- | Some (Cic.Name s,Cic.Def _)::_ -> assert false (*CSC: not implemented yet!*)
+ | Some (Cic.Name s,Cic.Def _)::_ -> assert false (*CSC: not implemented yet! But does this make any sense?*)
| _::tl -> find_hyp (n+1) tl
in
let arg,gty = find_hyp 1 context in