[isabelle-dev] Isabelle_10-Sep-2013
Tobias Nipkow
nipkow at in.tum.de
Wed Sep 11 11:51:32 CEST 2013
You mean parentheses, not braces. This is an intentional change. See the NEWS:
* Weaker precendence of syntax for big intersection and union on sets,
in accordance with corresponding lattice operations. INCOMPATIBILITY.
Tobias
Am 11/09/2013 11:31, schrieb C. Diekmann:
> Hi,
>
> I just downloaded the compiled binary for Linux and wanted to share my
> experience. It seems there are some issues with braces. My thy files
> work fine with the release, however, in the AFP Collections entry, I
> had to make the following changes:
> In Collections/spec/SetSpec.thy:
> locale set_Union_image = set α1 invar1 + set α2 invar2 + set α3 invar3
> for α1 :: "'s1 ⇒ 'a set" and invar1
> and α2 :: "'s2 ⇒ 'b set" and invar2
> and α3 :: "'s3 ⇒ 'b set" and invar3
> + (*<-- not a diff plus*)
> fixes Union_image :: "('a ⇒ 's2) ⇒ 's1 ⇒ 's3"
> assumes Union_image_correct:
> - "⟦ invar1 s; !!x. x∈α1 s ⟹ invar2 (f x) ⟧ ⟹ α3 (Union_image f s)
> = ⋃α2`f`α1 s"
> + "⟦ invar1 s; !!x. x∈α1 s ⟹ invar2 (f x) ⟧ ⟹ α3 (Union_image f s) =
> ⋃(α2`f`α1 s)"
> "⟦ invar1 s; !!x. x∈α1 s ⟹ invar2 (f x) ⟧ ⟹ invar3 (Union_image f s)"
>
> In Collections/gen_algo/SetGA.thy:
> lemma it_Union_image_correct:
> assumes "set_iteratei α1 invar1 iti1"
> assumes "set_empty α3 invar3 em3"
> assumes "set_union α2 invar2 α3 invar3 α3 invar3 un233"
> shows "set_Union_image α1 invar1 α2 invar2 α3 invar3
> (it_Union_image iti1 em3 un233)"
> proof -
> interpret set_iteratei α1 invar1 iti1 by fact
> interpret set_empty α3 invar3 em3 by fact
> interpret set_union α2 invar2 α3 invar3 α3 invar3 un233 by fact
>
> {
> fix s f
> - α3 (it_Union_image iti1 em3 un233 f s) = ⋃α2 ` f ` α1 s
> + α3 (it_Union_image iti1 em3 un233 f s) = ⋃(α2 ` f ` α1 s)
> ∧ invar3 (it_Union_image iti1 em3 un233 f s)"
> apply (unfold it_Union_image_def)
> - apply (rule_tac I="λit res. invar3 res ∧ α3 res = ⋃α2`f`(α1 s
> - it)" in iterate_rule_P)
> + apply (rule_tac I="λit res. invar3 res ∧ α3 res = ⋃(α2`f`(α1 s
> - it))" in iterate_rule_P)
> apply (fastforce simp add: empty_correct union_correct)+
> done
> }
> thus ?thesis
> apply unfold_locales
> apply auto
> done
> qed
>
> Also, but this might be due to my stupidity, when I select something
> in jedit with the mouse, it gets green and I cannot deselect it.
>
> Finally, the following imports are no longer available:
> "~~/src/HOL/Library/Code_Char_chr"
> "~~/src/HOL/Library/Efficient_Nat"
> "~~/src/HOL/Library/Code_Char_ord"
> Something was already mentioned about this (I will investigate later).
> I cannot give feedback about the generated Scala code now as the
> change to the generated code is too huge because of this.
>
> Cheers
> Cornelius
> _______________________________________________
> isabelle-dev mailing list
> isabelle-dev at in.tum.de
> https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev
>
More information about the isabelle-dev
mailing list