Re: [isabelle-dev] Proper sign of gcd / lcm on type int

2016-06-02 Thread Amine Chaieb
I believe Florian's proposal is good. On a proof-engineering level, the only "inconvinience" is mainly that the property gcd a b * lcm a b = a * b does not hold as such but generally I suspect in the form gcd a b * lcm a b = normalize(a * b) -- The normalize in GCD.thy perhaps has the property

Re: [isabelle-dev] MIR decision procedure

2015-12-01 Thread Amine Chaieb
At the time we decided against it due to the following: By design arith has to solve its goal or fail fast otherwise. Quantifier Elimination is just the opposite of both, since its is in its general form a conversion, and also due to very hard complexity costs (in particular for this MIR theory)

Re: [isabelle-dev] Remaining uses of defer_recdef?

2015-06-06 Thread Amine Chaieb
I remember trying to convert Cooper's as well as other Decision proc's recdefs to fun, also with the help of Alex but gave up at some point. I think the killer at the time was rather the induction principle and not the simp rules. The one derived by recdef really fits the definition and

[isabelle-dev] Order of sublocale declarations

2013-01-31 Thread Amine Chaieb
Hi, I came across a situation where the order of sublocale declarations makes a difference in the theory development, which in this case is not clear to me. Can anyone please clarify the following behaviour within the simplified case below? Is the behaviour due to purely technical reasons or

Re: [isabelle-dev] Order of sublocale declarations

2013-01-31 Thread Amine Chaieb
Thanks Andreas. Does this mean that this sublocale scenario is prohibited? And if so, is it due to technical reasons or is there a fundamental problem here? Amine. On 01/31/2013 02:04 PM, Andreas Lochbihler wrote: Hi Amine, the error message in the second case is only delayed: You get it,

Re: [isabelle-dev] Order of sublocale declarations

2013-01-31 Thread Amine Chaieb
technical reasons; Clemens might be able to tell you more. Andreas On 01/31/2013 02:56 PM, Amine Chaieb wrote: Thanks Andreas. Does this mean that this sublocale scenario is prohibited? And if so, is it due to technical reasons or is there a fundamental problem here? Amine. On 01/31/2013 02

Re: [isabelle-dev] the “algebra proof method

2012-08-22 Thread Amine Chaieb
Hi, Many thanks for your very detailed response! I wonder what to do next in terms of documenting this method, and perhaps, developing it further. Is there a latex source for the information you sent? It could be added to the documentation somewhere: but where? I could send the Latex

Re: [isabelle-dev] (Re-)introducing set as a type constructor rather than as mere abbreviation

2011-08-12 Thread Amine Chaieb
I am also in favor of the set type-constructor. The issue of compatibility with other HOL provers could very probably be solved by the transfer mechanism. If not immediately from the generic setup, the surely from a tailored one dedicated to this issue, if enough people are concerned. Amine.

[isabelle-dev] Clash of specifications

2009-07-04 Thread Amine Chaieb
Thanks Florian, it helps. It is apparently the same issue as with typerep. I fixed it. Amine. Florian Haftmann wrote: Hi Amine, *** Clash of specifications Sign.sign.size_sign_inst.size_sign_def and Sign.sign.size_sign_inst.size_sign_def for constant Nat.size_class.size *** At

[isabelle-dev] Pending sort hypotheses

2009-07-02 Thread Amine Chaieb
Hi Brian, Many thanks for the explanation. Indeed, if I make Abstract_Rat import say Complex_Main, the proofs work without the sort assumption. This must be due to the fact that concrete instances of field (I think) come only after Main. That's exactly right. Theorems need to have sort

[isabelle-dev] {..n} and {..n}

2009-03-09 Thread Amine Chaieb
Is it about removing the {..n} completely or just for SUM? Amine. Tobias Nipkow wrote: On nat, the sets {0..n} and {..n} are the same, which can be irksome. Hence I discourage the use of {..n}. However, there are notations such as SUM k=n. t which stand for setsum (%k. t) {..n} and introduce

[isabelle-dev] Repository OK?

2009-03-04 Thread Amine Chaieb
Hi, I updated and get the following error. What is Option? Amine. bash-3.2$ hg fetch Password: pulling from ssh://chaieb at atbroy100.informatik.tu-muenchen.de//home/isabelle-repository/repos/isabelle searching for changes adding changesets adding manifests adding file changes added 220

[isabelle-dev] Repository OK?

2009-03-04 Thread Amine Chaieb
I think somebody removed Option.thy but left the dependency in the Makefile. This is strange since it is still needed by Extraction (Plain). theory Extraction imports Option Amine. Amine Chaieb wrote: Hi, I updated and get the following error. What is Option? Amine. bash-3.2$ hg

[isabelle-dev] [Fwd: Isabelle, refute and nitpick]

2009-03-03 Thread Amine Chaieb
As long as it is not Coq this looks great. An I am sure with Jasmin's and Sascha's new ideas and approaches second best won't last very long :) Amine. Tobias Nipkow wrote: Not sure, possibly Leo II. No other ITP is in the competition. Tobias Amine Chaieb schrieb: Second best

[isabelle-dev] Typerep again

2009-02-10 Thread Amine Chaieb
I completely agree with Brian (even I can not agree to import Main instead of theories under Main). There is only two things I can think of: 1) You can't be serious about this 2) We are all sitting back and watching how things get worse. The bootstrap process of Main *was* fragile. For

[isabelle-dev] Typerep again

2009-02-09 Thread Amine Chaieb
Dear all, I have a theory development which used to work not a long time ago. I am now trying to include it into the distribution. At some point I can not merge the theories and get: *** Clash of specifications Permutations.typerep_^_inst.typerep_^_def and Misc.typerep_^_inst.typerep_^_def

[isabelle-dev] Typerep again

2009-02-09 Thread Amine Chaieb
I've moved things up (although this is really artificial). Misc imports Complex_Main anyway, and I made Permutations import Main, the problem persists. Florian Haftmann wrote: Hi Amine, I have a theory development which used to work not a long time ago. I am now trying to include it into

[isabelle-dev] Typerep again

2009-02-09 Thread Amine Chaieb
science. Florian Haftmann wrote: Can you provide me with a theory graph of Permutations and Misc? (Isar command thy_graph, export to ps/pdf)? Florian Amine Chaieb schrieb: I've moved things up (although this is really artificial). Misc imports Complex_Main anyway, and I made

[isabelle-dev] Typerep again

2009-02-09 Thread Amine Chaieb
Florian Haftmann wrote: Amine Chaieb schrieb: Do you mean thy_deps? It's not working on my machine. Yes, thy_deps of course (sorry for the slip). But thy doesn't it work? cd lib/browser make should do the job... Florian Can you do cvs -d haftmann

[isabelle-dev] Typerep again

2009-02-09 Thread Amine Chaieb
OK Florian Haftmann wrote: I have to bother you further: it is necessary to unfold the [HOL] node in the graph (by clicking on it) because we need to inspect the internal structure of the HOL theories. Florian Amine Chaieb schrieb: Florian Haftmann wrote: Amine Chaieb schrieb

[isabelle-dev] Typerep again

2009-02-09 Thread Amine Chaieb
and the fishing rules... Our current policy is that Plain, Main and Complex_Main are either ancestors or descendants of any theory. But feel free to ask if this is still obscure. This rule does not tell me anything since it is trivally satisfied by any connected graph containing

[isabelle-dev] Factorials and binomial coefficients

2009-02-02 Thread Amine Chaieb
Hi, I left Fact.thy alone because it is necessary for building HOL. I moved it upwards though (now it imports Nat instead of RealDef). I added the other stuff to Binomial since it is Library stuff and not necessary for building HOL. This said, I have no objection (or strong opinion about) to

[isabelle-dev] problems with the class-package

2009-01-23 Thread Amine Chaieb
Dear all, Jeremy (and I) are encountering some (to us) strange problems with the class-package (it might also be the locale-part, so your expertise is highly welcome here). I am using Isabelle version 20 minutes ago. Attached is a small theory illustrating the problem. Originally, line 32

[isabelle-dev] problems with the class-package

2009-01-23 Thread Amine Chaieb
Thanks for the quick answer! At least we know that it was not because we wrote things in a wrong manner. best wishes, Amine. Florian Haftmann wrote: Hi Amine, sorry for the inconvenience. Currently there is major upheaval going on in the locale/class area. Im working hard on solving

[isabelle-dev] typrep?

2009-01-20 Thread Amine Chaieb
with all the theories imorted by Complex_Main, it works. Is this behaviour really intended? Maybe I should reboot? Best wishes, Amine. Amine Chaieb wrote: Dear all, When I try to merge two theories I get this (to me new) error message: *** Clash of specifications

[isabelle-dev] Polynomial theory

2009-01-12 Thread Amine Chaieb
Brian Huffman wrote: For multivariate polynomials, one way to get these would be to simply iterate the univariate polynomial type constructor. For example, you can think of the type 'a poly poly as representing polynomials over two variables with coefficients in 'a. Yes that's what I did

[isabelle-dev] Polynomial theory

2009-01-12 Thread Amine Chaieb
Brian Huffman wrote: I just meant using a typedef, something like typedef 'a poly = {f :: 'a fps. finite_fps f} Then the operations like addition, multiplication, etc. could be defined in terms of the underlying fps operations like this definition p * q = Abs_poly (Rep_poly p *

[isabelle-dev] instantiation

2008-10-27 Thread Amine Chaieb
Dear all, (How) Can I perform an instantiation of a type-constructor with two arguments, an thereby restricting them to be the same? Concrete problem: instantiation fun (type, type) power begin end but I want only to raise functions of type 'a = 'a to powers. Thank you for any hint!

[isabelle-dev] NEWS

2008-07-02 Thread Amine Chaieb
Very nice job! Amine. PS: In Reflected Ferrack you start combutation with True, i.e. @{code T}, if the input is @{term False}. Fortunately this does not happen often Even with @{code} we still need to be careful... Florian Haftmann wrote: New ML antiquotation 'code': takes constant as

[isabelle-dev] classes

2007-11-08 Thread Amine Chaieb
This would have not been possible without merging some classes. Which? Just these: class recpower_semiring = semiring + recpower class recpower_semiring_1 = semiring_1 + recpower class recpower_semiring_0 = semiring_0 + recpower class recpower_ring = ring + recpower class recpower_ring_1 =

[isabelle-dev] class recpower and other classes...

2007-11-06 Thread Amine Chaieb
this. (IMHO the key point is that we have to stop to abuse to type system to achieve the same notation for different operations). I don't see why the recpower is an abuse of the type system... If I want to use inside a class, the type is fixed and I see no problem... This was not my point

[isabelle-dev] quickcheck on type real

2007-09-02 Thread Amine Chaieb
This is perhaps an occasion to advertise Library/Executable_real.thy, which contains a verified implementation of rational numbers to be have like HOL --- So here you would no get an exception when dividing by zero, but just zero as you expect. Florian integrated this into the CVS to work with