diff -r 438703674711 -r 321e220a6baa ProgTutorial/Tactical.thy --- a/ProgTutorial/Tactical.thy Tue May 21 14:37:39 2019 +0200 +++ b/ProgTutorial/Tactical.thy Tue May 21 16:22:30 2019 +0200 @@ -1029,7 +1029,8 @@ ML %grayML\fun select_tac' ctxt = FIRST' [resolve_tac ctxt [@{thm conjI}], resolve_tac ctxt [@{thm impI}], - resolve_tac ctxt [@{thm notI}], resolve_tac ctxt [@{thm allI}], K all_tac]\text_raw\\label{tac:selectprime}\ + resolve_tac ctxt [@{thm notI}], resolve_tac ctxt [@{thm allI}], + K all_tac]\text_raw\\label{tac:selectprime}\ text \ Since we like to mimic the behaviour of @{ML select_tac} as closely as possible, @@ -1473,6 +1474,7 @@ ML %grayML\val ss1 = put_simpset empty_ss @{context} addsimps [@{thm Diff_Int} RS @{thm eq_reflection}]\ +thm "INF_cong" text \ Printing then out the components of the simpset gives: @@ -1485,10 +1487,10 @@ \footnote{\bf FIXME: Why does it print out ??.unknown} - Adding also the congruence rule @{thm [source] strong_INF_cong} + Adding also the congruence rule @{thm [source] INF_cong} \ -ML %grayML\val ss2 = ss1 |> Simplifier.add_cong (@{thm strong_INF_cong} RS @{thm eq_reflection})\ +ML %grayML\val ss2 = ss1 |> Simplifier.add_cong (@{thm INF_cong} RS @{thm eq_reflection})\ text \ gives @@ -1499,7 +1501,7 @@ ??.unknown: A1 - B1 \ C1 \ A1 - B1 \ (A1 - C1) Congruences rules: Complete_Lattices.Inf_class.Inf: - \A1 = B1; \x. x \ B1 =simp=> C1 x = D1 x\ \ INFIMUM A1 C1 \ INFIMUM B1 D1 + \A1 = B1; \x. x \ B1 \ C1 x = D1 x\ \ Inf (C1 ` A1) \ Inf (D1 ` B1) Simproc patterns:\} Notice that we had to add these lemmas as meta-equations. The @{ML empty_ss}