From: Lawrence Paulson <lp15@cam.ac.uk>
I was able to diagnose your problem by enabling the option show_consts:
goal (1 subgoal):
The two occurrences of free_group have different types! You can correct this situation by inserting type constraints.
Larry Paulson
From: Joachim Breitner <mail@joachim-breitner.de>
Hi,
thaks, works perfectly. I can turn off quick_and_dirty mode again, feels
much better :-)
Greetings,
Joachim
signature.asc
From: Joachim Breitner <mail@joachim-breitner.de>
Hi,
I’m currently working on a submission to the AFP, formalizing the
construction of Free Groups. While proving that bijective sets of
generators produce isomorphic Free Groups, I came across a problem where
I cannot continue, and it seems to be an Isabelle bug.
In line of 337 of
http://darcs.nomeata.de/afp-Free-Groups/Free-Groups.thy
I try to do this
assume "x ∈ image (map (prod_fun id f)) (carrier (free_group gens1))"
then obtain y :: "(bool × 'b) list" where "x = map (prod_fun id f) y"
and "y ∈ carrier (free_group gens1)"
and expected to close this using "by auto", as I did in similar
situations before. This fails. Unwrapping the proof and trying to do it
manually with Isar steps, I end up with this state (as given by i3p):
proof (prove): step 38
goal (1 subgoal):
but "apply assumption" does not work. It is also not a i3p bug, as the
IsaMakefile also fails to build the theory.
I’d be grateful if someone else could try it and see if he can reproduce
the problem, and maybe tell me how I can work around the issue. The
theory Free-Groups also uses
http://darcs.nomeata.de/afp-Free-Groups/Cancelation.thy
and if you have darcs installed, you can just run
darcs get http://darcs.nomeata.de/afp-Free-Groups/
Thanks,
Joachim
signature.asc
Last updated: Nov 21 2024 at 12:39 UTC