Myślę, że mam zgrubne wyobrażenie o tym, czym jest darmowa monada, ale chciałbym mieć lepszy sposób na jej wizualizację.Wizualizacja wolnej monady
Ma sens, że wolne magmy są po prostu binarnymi drzewami, ponieważ jest to "ogólne", jak można bez utraty informacji.
Podobnie ma sens, że darmowe monoidy to tylko listy, ponieważ kolejność operacji nie ma znaczenia. Istnieje teraz redundancja w "drzewie binarnym", więc można ją po prostu spłaszczyć, jeśli ma to sens.
To ma sens, że wolne grupy niby wyglądać fraktale, z podobnego powodu: https://upload.wikimedia.org/wikipedia/en/e/e8/F2_Cayley_Graph.png i dostać się do innych grup, po prostu identyfikacji poszczególnych elementów grupy jako „ten sam” i mamy inne grupy.
Jak mam wizualizować darmową monadę? W tej chwili uważam to za najbardziej ogólne abstrakcyjne drzewo składniowe, które można sobie wyobrazić. Czy to w istocie jest? Czy mogę to uprościć?
Co więcej, co tracimy, przechodząc od bezpłatnej monady do listy lub innych monad? Co identyfikujemy, by być "tym samym"?
Doceniam wszystkie komentarze, które rzucają światło na to. Dzięki!
Kilka funktorów w łańcuchu? Zasadniczo to ... Zawsze widziałem to jako rodzaj zagnieżdżonego pudełka funktorów, które popychasz innych. Funkcje samego funktora mogą sprawić, że będzie to struktura przypominająca drzewo lub fraktal, ale na poziomie typu nie ma to znaczenia. – AJFarmar