Speaking of proofs and not calculators, this dropped on HN this week:

"Formalizing 100 theorems in Coq"
> This is an appendix to Freek Wiedijk's webpage on the "top 100"
mathematical theorems, to keep track of the statements of the theorems that
are formalised in Coq.
https://madiot.fr/coq100/

... There's a JS implementation of Coq:
https://github.com/ejgallego/jscoq/blob/master/README.md#homotopy-type-theory

https://github.com/HoTT/book

Optimal Coq/Jupyter integration may require extending the kernel interface:
https://github.com/jupyter/jupyter/issues/333

Is there a good way to do proof modeling in Python?

What's your favorite Python-basee CAS?

On Sunday, October 7, 2018, kirby urner <kirby.ur...@gmail.com> wrote:

>
> A stereotype some people have, of computers, is they're like giant
> calculators on steroids.
>
> Then they find as much "text processing" goes on as "number crunching" -- ala
> "regular expressions" -- and forget about the calculator model.
> Calculators don't do strings, let alone much in the way of data files.
> Of course that line got blurred in the golden age of programmable
> calculators (HP65 etc.).
>
> However, the Python docs start with Using Python as a Calculator in
> Guido's tutorial.
>
> Perhaps we could do more to fulfill the "on steroids" expectations (that
> the computer is a "beefed up" calculator device) by exploring our number
> types in more depth, and in particular by exploiting their superhuman
> abilities in the extended precision department.
>
> Yes, the int type is awesome, now that it integrates long int (for those
> new to Python, these used to be separate), but lets not forget Decimal and
> also... gmpy, or actually gmpy2.
>
> I've probably lost even some seasoned Python teachers in jumping to that
> relatively obscure third party tool, providing extended precision
> numeracy beyond what Decimal (in Standard Library) will do.  gmpy has a
> long history, predating Python.  I'm not the expert in the room.
>
> In particular, it does trig.
>
> Our Python User Group used to get one of the package maintainers from
> nearby Mentor Graphics (Wilsonville). He was adding complex numbers to the
> gmpy mix, and was in touch with Alex Martelli.  I enjoyed our little
> chats.
>
> Without having all the higher level math it might take to actually prove
> some identity, and while starting to learn of those identities nonetheless,
> extended precision would seem especially relevant.
>
> "Seriously, I can generate Pi with that summation series?" Lets check.
>
> Just writing the program is a great workout.
>
> Some subscribers may recall a contest here on edu-sig, for Pi Day (3/14),
> to generate same to a 1001 places, given one of Ramanujan's convergence
> expressions for the algorithm.
>
> https://github.com/4dsolutions/Python5/blob/master/Pi%20Day%20Fun.ipynb
> http://mathforum.org/kb/thread.jspa?threadID=2246748
>
> I had an adventure in gmpy2 just recently when my friend David Koski
> shared the following:
>
>     from math import atan as arctan
>     Ø = (1 + rt2(5))/2
>     arctan( Ø ** 1) -  arctan( Ø ** -1) == arctan(1/2)
>     arctan( Ø **-1) -  arctan( Ø ** -3) == arctan(1/3)
>     arctan( Ø **-3) -  arctan( Ø ** -5) == arctan(1/7)
>     arctan( Ø **-5) -  arctan( Ø ** -7) == arctan(1/18)
>     arctan( Ø **-7) -  arctan( Ø ** -9) == arctan(1/47)
>     arctan( Ø **-9) -  arctan( Ø **-11) == arctan(1/123)
>     ...
>
> Without offering any kind of algebraic proof, I just wanted to see if the
> arithmetic panned out.
>
> These denominators on the right turned out to be a "bisection of the Lucas
> numbers" (like Fibonaccis with a different seed).  That's a great job for
> a Python generator, and only integers are involved.
>
> But am I really confined to verification (not proof) using floating
> points?  Not at all.  At first it seemed that way thought, because whereas
> Decimal supports powering and roots, it's not equipped with atan.
>
> Then I remembered gmpy2 and could all of a sudden push the number of
> verifying decimals out past 92.  Definitely a calculator couldn't do this.
>
> https://github.com/4dsolutions/Python5/blob/master/VerifyArctan.ipynb
>
> Math students the world over, if free of the tyranny of calculators -- or
> at least allowed to aid and abet (supplement) with Raspberry Pi etc. -- get
> to dabble in these industrial strength algorithms, a part of their
> inheritance.
>
> Indeed lets use Python as a calculator sometimes, in accordance with said
> Python.org tutorial.
>
> A much stronger calculator, with a bigger screen, more keys, and a lot
> more horsepower.
>
> Kirby
> PS:  I ran into this problem with gmpy2.atan: the above convergence wasn't
> verifying beyond like 19 digits.  When I switched to gmpy2.atan2 istead,
> everything started to work out.  The question being, why should atan(x) vs
> atan2(y,x) differ except in terms of API?  gmpy2.atan2(y,x) computes the
> arctan of y/x but in some other way apparently.  Food for thought.  I did
> do some digging in the docs.
>
>
_______________________________________________
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig

Reply via email to