Proofs and You

Sandy Vanderbleek

@haskellandchill

github.com/svanderbleek

Raising VC money in NYC for a proof based math education app hmu

What are they?

And why should you care?

... I don't know

I've been studying it for years

Nothing works

Every app I use is broken

Deeplinks are generally always broken

Industry

Timescale ~ months

 

Can't share code because of fat wallets yo

Academia

Timescale ~ decades

 

Slow to share code for some reason... ego?

Impossible?

Dijkstra said it was, I tried to make it work for a decade and gave up but why not spend my 30s on it 🤷‍♀️

 

https://www.cs.utexas.edu/users/EWD/transcriptions/EWD11xx/EWD1175.html

Who's trying?

Geogebra (Grobener Basis idk I suck at linear algebra)

 

Edukera (via web front end over Coq hard to use)

 

Dragon Box (for kids but great execuation) also Euclidea

 

various MOOCs (garbage)

 

CMU (Frank Pfenning and crew)

 

Mathematicians but they don't care if you understand

Nota Bene

If you believe it’s ok to trick people to make money walk out now that’s not what proofs is

 

f*** blockchain sorry but whatever they are doing with smart contracts they are just chasing cash and haphazardly using formal methods I can't even

 

YOU CAN'T JUST INVENT PROGRAMMING LANGUAGES WITHOUT DOING ANY RESEARCH AT ALL PEOPLE COME ON

 

If you don't know who Dana Scott is like... you didn't do your homework, and showing no respect for a legend... not ok, yes this is a rant but just this slide mostly sorry

Don't Give up!

Found this dope new book on hacker news: Fundamental Proof Methods in Computer Science

 

Read some of it and was like hell yea

 

Met with one of the authors and we dished some good stuff

 

You can really learn math with it unlike Coq or Isabelle or Idris (Edwin Brady told me not to bother ha)

 

Goes well with Handbook of Practical (lol shade) Logic and Automated Reasoning which kind of shows you how to implement Athena in OCaml

 

So... Athena

Bad name

 

Trying to get it on Github ASAP

 

REPL is hot garbage like Ocaml default

 

If you know something better like tell me right now

 

What I want

Prove run time of algorithms (cost semantics, haven't seen much usable work on this)

 

Correctness/invariants etc (Athena is good at this)

 

To learn through the proofs, no magic tactics or global proof state (Athena is amaze at this)

 

Tooling (pipe dream I know...)

Types Logic Sorts Whatever

Don't get too caught up in names details bad notations bike shedding ya know

 

Focus on the concepts, they are good, promise, trust me

 

Athena uses "Sorts" cause of Universal Algebra or whatever who cares

 

Stop getting caught up in Type Theory details like dependent types and general unification that works for everything or whatever and do some specific optimized things, doesn't have to be slow but currently cause we want the whole world

Cool Stuff

  • substitutions are primitives!
  • datatype-axioms, assumption base

  • forall ~ pick-any
  • exists ~ pick-witness
  • by-induction
  • chain

Leibniz Equality and Transitive chaining

Long history

Gries, Dijkstra, Automath, ACL2, Other weird stuff, Term rewriting, Free algebras, Natural deduction, Semantic Tableux, I'm just listing things I ran out of time no REPL it's too hard to use fluently and will just slow us down let's chat or something cool

Wait uh certified computation think about that for a second

soundness > completeness!

change my mind?

you can't I guess idk

Wait there's another slide?

my boss is angry because this isn't related to work lol

in math you assume things then prove things

 

athena has assume of course

 

reverse maths, what you want to prove to what you have to assume (impossible or idk)

Athena REPL from the book if you want me to

I can open a chapter and hack at it

PDFs are lame

love books

😍

I'm on snapchat like all the time (that map!)

last slide! promise 😇

yes I'm a crazy person

well typed memes for constructivist teens

🐈

Proofs

By Sandy Vanderbleek

Proofs

  • 663