I want an environment for proofs and/or mathematical explanations, which treats them as a tree or a graph rather than text. More specifically, I want to be able to write proofs like:
* Suppose A
* From A it follows that B
* C can be proved by induction
* Because B implies not C, it follows that A is false

And if you click on "C can be proved by induction", you get a more detailed explanation of how that happens:
* What property exactly we're proving by induction
* How base case is proved
* How inductive step is proved

And there somewhere if you see a logical step and you're not sure what theorems we invoke to prove it, you click on it and see "by lemma 2.2 (ii)"

There's an article by Leslie Lamport (link to article: microsoft.com/en-us/research/u; link to hacker news discussion: news.ycombinator.com/item?id=1)
in which he advocates writing a more structured way of writing proofs, which goes like this:

1. A
2. A implies B
3. not C
4. B implies C, hence not B, hence not A

Proof of 1:
blah blaah

...

Proof of 4:
safdlkjaslfdjafds

What other similar things are there?

workflowy.com/ - a TODO program where you simply have nested lists, and you can easily expand or collapse subtrees

waitbutwhy.com has these circles of different colors in text. Green circles are interesting footnotes, grey ones are boring footnotes. This doesn't allow creating trees of arbitrary depth but the usability of these things is very good in my opinion and perhaps we don't need that much depth.

It seems arbital.com/ has a thing like waitbutwhy, except it allows arbitrary depth.

QOTO: Question Others to Teach Ourselves. A STEM-oriented instance.

An inclusive free speech instance.
All cultures and opinions welcome.
Explicit hate speech and harassment strictly forbidden.
We federate with all servers: we don't block any servers.