Re: [isabelle-dev] Metis: Unused Theorem Reduces Run-Time?

2013-01-18 Thread Jasmin Christian Blanchette
Hi Tjark,

Am 18.01.2013 um 16:44 schrieb Tjark Weber:

> The new AFP entry on Kleene Algebras contains a metis call
> (http://afp.hg.sourceforge.net/hgweb/afp/afp/file/082b389cb3f8/thys/Kleene_Algebra/Kleene_Algebra.thy#l652)
> that generates a warning about an unused theorem local.opp_mult_def.
> Not passing opp_mult_def as an argument to metis gets rid of the
> warning, but increases run-time of this metis call from ~ 1 s to ~ 15 s
> on my machine.

Sure, these things happen with pretty much any tool that performs a heuristic 
search. There are even (rare) cases where taking out the unused theorems will 
lead to an unprovable first-order problem (because of incompletenesses in the 
translation of HO constructs).

What's your concrete suggestion here?

Cheers,

Jasmin

___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


[isabelle-dev] Metis: Unused Theorem Reduces Run-Time?

2013-01-18 Thread Tjark Weber
Hi,

The new AFP entry on Kleene Algebras contains a metis call
(http://afp.hg.sourceforge.net/hgweb/afp/afp/file/082b389cb3f8/thys/Kleene_Algebra/Kleene_Algebra.thy#l652)
that generates a warning about an unused theorem local.opp_mult_def.
Not passing opp_mult_def as an argument to metis gets rid of the
warning, but increases run-time of this metis call from ~ 1 s to ~ 15 s
on my machine.

Best regards,
Tjark


___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


[isabelle-dev] Resolve with premises

2013-01-18 Thread Peter Lammich
Hi all,

as the question currently arose on the users list, I remembered that I
have the following method laying around since several month. I'm using
it frequently in apply-style scripts (Mainly to apply induction
hypotheses).

We discussed here in Munich whether we should add it to Isabelle. Should
we? Opinions?

Peter


---

ML {*
  (* Resolve with premises. Copied and adjusted from
Goal.assume_rule_tac. *)
fun rprems_tac ctxt = Goal.norm_hhf_tac THEN' CSUBGOAL (fn (goal, i)
=>
  let
fun non_atomic (Const ("==>", _) $ _ $ _) = true
  | non_atomic (Const ("all", _) $ _) = true
  | non_atomic _ = false;

val ((_, goal'), ctxt') = Variable.focus_cterm goal ctxt;
val goal'' = Drule.cterm_rule 
  (singleton (Variable.export ctxt' ctxt)) goal';
val Rs = filter (non_atomic o Thm.term_of) 
  (Drule.strip_imp_prems goal'');

val ethms = Rs |> map (fn R =>
  (Raw_Simplifier.norm_hhf (Thm.trivial R)));
  in eresolve_tac ethms i end
  );

(* Resolve with premise. Copied and adjusted from
Goal.assume_rule_tac. *)
fun rprem_tac n ctxt = Goal.norm_hhf_tac THEN' CSUBGOAL (fn (goal,
i) =>
  let
val ((_, goal'), ctxt') = Variable.focus_cterm goal ctxt;
val goal'' = Drule.cterm_rule 
  (singleton (Variable.export ctxt' ctxt)) goal';

val R = nth (Drule.strip_imp_prems goal'') (n - 1)
val rl = Raw_Simplifier.norm_hhf (Thm.trivial R)
  in
etac rl i
  end
  );

  val setup =
  Method.setup @{binding rprems} 
(Scan.lift (Scan.option Parse.nat) >> (fn i => fn ctxt => 
  SIMPLE_METHOD' (
case i of
  NONE => rprems_tac ctxt
| SOME i => rprem_tac i ctxt
  ))
) 
"Resolve with premises"



*}

setup "setup"


(* EXAMPLES: *)


lemma "\ A\B; B\C; A \
\ C"
  apply (rprems 2) -- "Explicitely specify number of premise"
  apply (rprems 1)
  .

lemma "\ A\B; B\C; A \
\ C"
  apply (rprems) -- "Resolve with any matching premise, 
first to last, backtracking"
  apply (rprems)
  .

--


___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] key bindings

2013-01-18 Thread Lawrence Paulson
I have updated, see below:

~/isabelle/Repos/src/HOL: hg id
00d87ade2294 tip
~/isabelle/Repos/src/HOL: isabelle components -l

Available components:
  /Users/lp15/isabelle/Repos
  /Users/lp15/isabelle/Repos/src/Tools/Code
  /Users/lp15/isabelle/Repos/src/Tools/jEdit
  /Users/lp15/isabelle/Repos/src/Tools/Graphview
  /Users/lp15/isabelle/Repos/src/Tools/WWW_Find
  /Users/lp15/isabelle/Repos/src/HOL/Mirabelle
  /Users/lp15/isabelle/Repos/src/HOL/Mutabelle
  /Users/lp15/isabelle/Repos/src/HOL/Library/Sum_of_Squares
  /Users/lp15/isabelle/Repos/src/HOL/Tools/ATP
  /Users/lp15/isabelle/Repos/src/HOL/Tools/Predicate_Compile
  /Users/lp15/isabelle/Repos/src/HOL/Tools/Sledgehammer/MaSh
  /Users/lp15/isabelle/Repos/src/HOL/Tools/SMT
  /Users/lp15/isabelle/Repos/src/HOL/TPTP
  /Users/lp15/isabelle/Repos/Admin
  /Users/lp15/.isabelle
  /Users/lp15/.isabelle/contrib/cvc3-2.4.1
  /Users/lp15/.isabelle/contrib/e-1.6-2
  /Users/lp15/.isabelle/contrib/exec_process-1.0.3
  /Users/lp15/.isabelle/contrib/Haskabelle-2013
  /Users/lp15/.isabelle/contrib/jdk-7u11
  /Users/lp15/.isabelle/contrib/jedit_build-20130104
  /Users/lp15/.isabelle/contrib/jfreechart-1.0.14
  /Users/lp15/.isabelle/contrib/kodkodi-1.5.2
  /Users/lp15/.isabelle/contrib/polyml-5.5.0
  /Users/lp15/.isabelle/contrib/scala-2.10.0
  /Users/lp15/.isabelle/contrib/spass-3.8ds
  /Users/lp15/.isabelle/contrib/z3-3.2

Missing components:
~/isabelle/Repos/src/HOL: 

And I have to say, it looks very much better! The difference from just last 
week's version is remarkable.

I'm afraid that the crash is still there. By crash, I mean everything dies. 
I've attached a core dump. To do this, I select Utilities > Global Options > 
Shortcuts. In the filter, I type "select code block", choose the key binding 
CMD-[, and when it asks whether to overwrite an existing binding, click YES.

Larry


hs_err_pid2302.log
Description: Binary data

On 17 Jan 2013, at 12:59, Makarius  wrote:

> On Thu, 17 Jan 2013, Lawrence Paulson wrote:
> 
> Depending what you mean by "crash", this hyperreactive popup might cause 
> problems on Mac OS X.
> 
> 
>> ~/isabelle/Repos/src/HOL: hg id
>> cbc7002cc273 tip
>> ~/isabelle/Repos/src/HOL: isabelle component -l
>> 
>> Available components:
>> /Users/lp15/.isabelle/contrib/jdk-7u9
> 
> This is already 1 week old.  In the meantime Oracle puslished jdk-7u11 and I 
> updated to it.  This might or might not improve the Java-on-Mac situation 
> again a tiny little bit.

___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev