On Thu, 9 Feb 2012, Tobias Nipkow wrote:

instantiation list :: (order) order
begin

fun le_list :: "('a::order)list => 'a list => bool" where
"le_list [] [] = True" |
"le_list (x#xs) (y#ys) = (x <= y & xs <= ys)" |
"le_list _ _ = False"

*** exception Empty raised (line 331 of "library.ML")

Of course it should be less_eq instead of le, but still...

This still happens in current Isabelle/59bc6374c121. A quick attempt with ML "Toplevel.debug := true" reveals this:


Exception trace for exception - Empty raised in library.ML line 332

List.map(2)
Function_Core.prove_stuff(12)
Function_Core.prove_stuff(1)(1)(1)(1)(1)(1)(1)(1)(1)(1)(1)
Function_Core.prepare_function(6)
Function_Mutual.prepare_function_mutual(6)
Function.prepare_function(8)
Function.gen_add_function(8)
Function_Fun.gen_add_fun(1)(1)
Toplevel.local_theory_presentation(2)(1)(1)
End of trace


So it looks like it is better handing over to Alex.


        Makarius
_______________________________________________
isabelle-dev mailing list
[email protected]
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev

Reply via email to