[isabelle-dev] Abbreviations + Monad_Syntax introduce "unit itself" additional type variable

Florian Haftmann florian.haftmann at informatik.tu-muenchen.de
Thu Sep 19 17:42:02 CEST 2013


Hi Peter,

adding some more detail (3518eeb8a6db):

> theory Monad_Syn
> imports 
>   Main
>   "~~/src/HOL/Library/Monad_Syntax"
> begin
> 
> abbreviation
>   "abbr1 == Some () >>= (%_. Some False)"
> 
> abbreviation
>   "abbr2 == do {
>     Some ();
>     Some False
>   }" -- "additional type variable"
> 
> abbreviation
>   "abbr3 == do {
>     (_::'a) ← Some ();
>     Some False
>   }" -- "additional type variable"
> 
> abbreviation
>   "abbr4 == do {
>     (_::unit) ← Some ();
>     Some False
>   }" -- "additional type variable"

abbr3 seems to exhibit that type inference and trans syntax stuff for
monad syntax does not interact as expected when reading abbrevitation
specifications.  Here a bisect would be helpful when this came to happen
actually (or is it already present in Isabelle2013).

Cheers,
	Florian

-- 

PGP available:
http://home.informatik.tu-muenchen.de/haftmann/pgp/florian_haftmann_at_informatik_tu_muenchen_de

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 263 bytes
Desc: OpenPGP digital signature
URL: <https://mailman46.in.tum.de/pipermail/isabelle-dev/attachments/20130919/b8322122/attachment.sig>


More information about the isabelle-dev mailing list