# HG changeset patch # User Christian Urban # Date 1265014803 -3600 # Node ID 1893316b9ef868f20493d34dd2cc4f4c421bba0f # Parent 64874975f08725fd79f86874ea2b08afa80feced slight tuning diff -r 64874975f087 -r 1893316b9ef8 Quot/quotient_term.ML --- a/Quot/quotient_term.ML Mon Feb 01 09:47:46 2010 +0100 +++ b/Quot/quotient_term.ML Mon Feb 01 10:00:03 2010 +0100 @@ -446,14 +446,14 @@ if ty = ty' then subtrm else mk_babs $ (mk_resp $ equiv_relation ctxt (ty, ty')) $ subtrm end - | (Const (@{const_name "Babs"}, T) $ r $ (t as (Abs (_, ty, _))), t' as (Abs (_, ty', _))) => + | (Const (@{const_name "Babs"}, T) $ resrel $ (t as (Abs (_, ty, _))), t' as (Abs (_, ty', _))) => let val subtrm = regularize_trm ctxt (t, t') val needres = mk_resp $ equiv_relation_chk ctxt (ty, ty') in - if r <> needres - then term_mismatch "regularize (Babs)" ctxt r needres - else mk_babs $ r $ subtrm + if resrel <> needres + then term_mismatch "regularize (Babs)" ctxt resrel needres + else mk_babs $ resrel $ subtrm end | (Const (@{const_name "All"}, ty) $ t, Const (@{const_name "All"}, ty') $ t') => @@ -491,7 +491,6 @@ else mk_ball $ (mk_resp $ resrel) $ subtrm end - | (Const (@{const_name "Bex"}, ty) $ (Const (@{const_name "Respects"}, _) $ resrel) $ t, Const (@{const_name "Ex"}, ty') $ t') => let @@ -556,16 +555,16 @@ end end - | (((t1 as Const (@{const_name "split"}, _)) $ Abs(v1, ty, Abs(v1', ty', s1))), - ((t2 as Const (@{const_name "split"}, _)) $ Abs(v2, _ , Abs(v2', _ , s2)))) => - (regularize_trm ctxt (t1, t2)) $ Abs(v1, ty, Abs(v1', ty', regularize_trm ctxt (s1, s2))) + | (((t1 as Const (@{const_name "split"}, _)) $ Abs (v1, ty, Abs(v1', ty', s1))), + ((t2 as Const (@{const_name "split"}, _)) $ Abs (v2, _ , Abs(v2', _ , s2)))) => + regularize_trm ctxt (t1, t2) $ Abs (v1, ty, Abs (v1', ty', regularize_trm ctxt (s1, s2))) - | (((t1 as Const (@{const_name "split"}, _)) $ Abs(v1, ty, s1)), - ((t2 as Const (@{const_name "split"}, _)) $ Abs(v2, _ , s2))) => - (regularize_trm ctxt (t1, t2)) $ Abs(v1, ty, regularize_trm ctxt (s1, s2)) + | (((t1 as Const (@{const_name "split"}, _)) $ Abs (v1, ty, s1)), + ((t2 as Const (@{const_name "split"}, _)) $ Abs (v2, _ , s2))) => + regularize_trm ctxt (t1, t2) $ Abs (v1, ty, regularize_trm ctxt (s1, s2)) | (t1 $ t2, t1' $ t2') => - (regularize_trm ctxt (t1, t1')) $ (regularize_trm ctxt (t2, t2')) + regularize_trm ctxt (t1, t1') $ regularize_trm ctxt (t2, t2') | (Bound i, Bound i') => if i = i' then rtrm