On 01/11/2019 18:38, David Topham wrote:
Adapting to the idea of using only whole numbers for a geometric progression that sums over powers I am trying this approach:



It works up until trying to instantiate into induction_thm where it breaks down since conjecture needs 2 variables:  r and e (summing over terms r^e)


If you want to prove a theorem by induction, you need to chose carefully the property which you are using, which must be a property of a single number, this has an impact on the complexity of the proof. Where the theorem you are trying to prove quantifies over more than one number, you might find that you have to do a double induction, but could possibly avoid this if you formulate the proposition optimally (you will then be able to prove the theorem you really want from the one that is easier for the induction).

So, for example, if your theorem involves two  natural numbers you might do induction over the sum of the two numbers.

I attached screenshot (but I know the mailing list won't take that)

force_delete_theory "cs113" handle Fail _ => ();
new_theory "cs113";
¹HOLCONST
Ü sum:î­î
÷üü
Ü µn· sum 0 = 0 ± sum (n) = n + (sum n-1)
°
¹HOLCONST
Ü pow:î­î­î
÷üü
Ü µb e· (pow b 0) = 1 ± (pow b e) = b * (pow b (e - 1))
°
val ex92 = ¬Ì n r· sum (pow r n) = (1 - (pow r (n - 1)) Div (1 - r))®;
val UI = µ_elim ex92 induction_thm;
val lemma1 = rewrite_rule [] UI;
That's not so easy to read!
However, I can see first that you have done your inductive definitions in a style similar to what would work well for SML rather than the slightly different style you need for ProofPower to automatically prove the consistency of the definition, which will make things awkward later.

sum (n + 1) = (n + 1) + (sum n)

is preferable, and the definition of power will work better if the second clause is:

pow b (e+1) = b*(pow b e)

To include the ProofPower script in your email try saving in a .doc file and running conv_ascii to get
an ascii version using keywords.

I can't see how Div(1-r) is going to work for you!

Roger
_______________________________________________
Proofpower mailing list
[email protected]
http://lemma-one.com/mailman/listinfo/proofpower_lemma-one.com

Reply via email to