tuned
authorhaftmann
Fri, 01 Apr 2022 10:54:40 +0000
changeset 75391 047e1aaa0f06
parent 75390 38663b1de300
child 75392 2c3eadf5ca6f
tuned
src/Tools/Code/code_thingol.ML
--- a/src/Tools/Code/code_thingol.ML	Fri Apr 01 12:26:45 2022 +0200
+++ b/src/Tools/Code/code_thingol.ML	Fri Apr 01 10:54:40 2022 +0000
@@ -293,9 +293,9 @@
       restrict_vars_to (build (add_varnames t));
     fun distill' vs_map pat_args v i clauses =
       let
-        val vs = build (fold add_varnames (nth_drop i pat_args));
+        val pat_vs = build (fold add_varnames (nth_drop i pat_args));
         fun varnames_disjunctive pat =
-          null (inter (op =) vs (build (add_varnames pat)));
+          null (inter (op =) pat_vs (build (add_varnames pat)));
       in
         if forall (fn (pat', body') => varnames_disjunctive pat'
             (*prevent mingled scopes resulting in duplicated variables in pattern arguments*)
@@ -519,12 +519,12 @@
 
 (* preprocessing pattern schemas *)
 
-fun preprocess_pattern_schema ctxt (t_pos, case_pats) (c_ty, ts) =
+fun preprocess_pattern_schema ctxt (t_pos, case_pats) (ty, ts) =
   let
     val thy = Proof_Context.theory_of ctxt;
-    val ty = nth (binder_types (snd c_ty)) t_pos;
-    fun select_clauses xs =
-      xs
+    val ty = nth (binder_types ty) t_pos;
+    fun select_clauses ts =
+      ts
       |> nth_drop t_pos
       |> curry (op ~~) case_pats
       |> map_filter (fn (NONE, _) => NONE | (SOME _, x) => SOME x);
@@ -744,7 +744,7 @@
 and translate_case ctxt algbr eqngr permissive some_thm pattern_schema (c_ty, ts) =
   let
     val (ty, constrs, split_clauses) =
-      preprocess_pattern_schema ctxt pattern_schema (c_ty, ts);
+      preprocess_pattern_schema ctxt pattern_schema (snd c_ty, ts);
     fun is_undefined_clause (_, IConst { sym = Constant c, ... }) =
           Code.is_undefined (Proof_Context.theory_of ctxt) c
       | is_undefined_clause _ =