zlacker

CMU’s ‘Penrose’ Turns Complex Math Notations into Illustrative Diagrams

submitted by Yuqing+(OP) on 2020-06-05 16:23:36 | 412 points 48 comments
[view article] [source] [go to bottom]

NOTE: showing posts with links only show all posts
1. enrico+L7[view] [source] 2020-06-05 17:02:39
>>Yuqing+(OP)
This is the video source of the gif at the top of the article [0].

I was pretty interested in Penrose when I first saw it but I still haven't seen a "cool" example of its use. Either something that's easy in Penrose but hard in every other visualization tool, or an example of a visualization in Penrose that elucidates some deeper mathematical relationship between the objects being shown.

[0] https://vimeo.com/416822487

2. jarmit+M7[view] [source] 2020-06-05 17:02:47
>>Yuqing+(OP)
Direct link: https://penrose.ink/siggraph20.html
3. qubex+D8[view] [source] 2020-06-05 17:06:49
>>Yuqing+(OP)
Previously discussed: https://news.ycombinator.com/item?id=18178230
◧◩
5. detaro+nf[view] [source] [discussion] 2020-06-05 17:31:47
>>qubex+D8
and 3 days ago: https://news.ycombinator.com/item?id=23387687
6. memexy+rf[view] [source] 2020-06-05 17:32:03
>>Yuqing+(OP)
The website is really good as well: https://penrose.ink/siggraph20.html. Excellent find. How did you find it?
8. benrbr+qj[view] [source] 2020-06-05 17:47:50
>>Yuqing+(OP)
See also Anish Athalye 2019, "Experiments in Constraint-based Graphic Design" [1], which takes a similar approach to diagram creation. I'd also recommend looking at Keenan Crane's other research [2], in particular his book on Discrete Differential Geometry, which inspired some of the diagrams you see on the Penrose site.

[1]: https://www.anishathalye.com/2019/12/12/constraint-based-gra... [2]: http://www.cs.cmu.edu/~kmcrane/

14. formal+nr[view] [source] 2020-06-05 18:24:23
>>Yuqing+(OP)
Has anyone tried to make complex visualizations with Penrose that would mirror some of the graphics in https://www.amazon.com/Visual-Complex-Analysis-Tristan-Needh...

While I do see the value in a programmatic diagram tool, I'm not sure I'll use it over something like Inkscape if the visualization is fairly simple.

◧◩
18. august+Tt[view] [source] [discussion] 2020-06-05 18:35:41
>>jackco+ao
I saw this thing on r/math that might interest you: https://www.reddit.com/r/math/comments/fnjav6/i_created_an_a...
◧◩
20. wcrich+Pu[view] [source] [discussion] 2020-06-05 18:40:38
>>ColanR+lf
You should read the paper! http://penrose.ink/media/Penrose_SIGGRAPH2020.pdf

They include:

* Vector spaces

* Function diagrams

* Geometric illustrations

* Polygonal meshes

* Ray tracing diagrams

The linked article is pretty much fluff, but the SIGGRAPH paper has the real content.

◧◩◪
21. ColanR+yy[view] [source] [discussion] 2020-06-05 18:58:50
>>wcrich+Pu
Already did! Those are all basic examples of those various concepts. How about something that 'mixes metaphors', so to speak? Mathematicians are a creative bunch.

E.g., fuzzy sets. [1] One of the most-cited math papers ever. How could I use Penrose to represent a continuum of grades of membership between sets?

[1] https://sci-hub.st/10.1016/S0019-9958(65)90241-X

◧◩
25. openfu+zT[view] [source] [discussion] 2020-06-05 20:42:52
>>jimhef+AP
Take a look: https://vimeo.com/416822487

They have an IDE that allows you to fiddle with all the stages in the pipeline, including the imperative stuff.

26. forker+IT[view] [source] 2020-06-05 20:44:07
>>Yuqing+(OP)
Somehow from seeing the first few examples I was sure that the project is in Haskell.

And it turned out to be true:

https://github.com/penrose/penrose

37. dispos+Iu1[view] [source] 2020-06-06 01:37:06
>>Yuqing+(OP)
There's a Future of Coding podcast episode where Katherine Ye (one of Penrose's authors) is interviewed.

https://futureofcoding.org/episodes/034

Worth a listen to!

39. mikhai+DM1[view] [source] 2020-06-06 05:53:41
>>Yuqing+(OP)
There are a few things that need to come together for a complete diagram publishing system:

* Converting hand-drawn sketches to tidy diagrams [1]

* Converting tidy diagrams to look hand-drawn [2]

* A textual DSL for diagrams (e.g. Penrose)

* Support of declarative constraints for the diagram [3]

* Animation of the diagram [4][5]

[1] Paper https://www.fiftythree.com/think

[2] rough.js https://github.com/pshihn/rough

[3] Basalt https://www.anishathalye.com/2019/12/12/constraint-based-gra...

[4] Distill https://distill.pub/2017/momentum/ source https://github.com/distillpub/post--momentum

[65] g9.js https://omrelli.ug/g9/

40. mjcohe+NM1[view] [source] 2020-06-06 05:57:07
>>Yuqing+(OP)
Seems like a descendant of PIC - "A Graphics Language for Typesetting"

http://doc.cat-v.org/unix/v10/10thEdMan/pic.pdf

◧◩◪
41. tgv+xN1[view] [source] [discussion] 2020-06-06 06:11:10
>>august+Tt
That's pretty neat. I'll have to try it.

The thread mentioned an alternative, https://graspablemath.com/, which looks similar (note: only judging from the video), which you can immediately try in the browser, but that felt a bit clumsy to me. YMMV.

42. xvilka+zR1[view] [source] 2020-06-06 07:28:12
>>Yuqing+(OP)
I hope it will be integrated with the Sage Math[1].

[1] https://www.sagemath.org/

◧◩
46. obviyu+TM4[view] [source] [discussion] 2020-06-07 16:56:46
>>benrbr+qj
I thought I’ve heard that name before. Anish is also one of the teachers of Missing Semester of CS [1]. One of the best courses I have taken as a college student!

[1]: https://missing.csail.mit.edu/

◧◩
47. emmela+sQ5[view] [source] [discussion] 2020-06-08 01:38:32
>>emmela+Vo1
To answer myself -- there is an open issue and pull request for graph layout.

https://github.com/penrose/penrose/pull/332

[go to top]