In[]:=
ResourceFunction["MultiwaySystem"][{"A""AB","BB""A"},"A",6,"StatesGraph"]
Out[]=
In[]:=
FindStringReplacePath[{"A""AB","BB""A"},"A","AAA"]
Out[]=
{A,AB,ABB,AA,AAB,AABB,AAA}
In[]:=
FindStringReplacePath[{"A""AB","BB""A"},"A","AAAAA"]
Out[]=
{A,AB,ABB,AA,AAB,AABB,AAA,AAAB,AAABB,AAAA,AAAAB,AAAABB,AAAAA}
In[]:=
ResourceFunction["MultiwaySystem"][Join[#,Reverse/@#]&[{"A"->"AB","BB""A"}],"A",6,"StatesGraph",GraphLayout"LayeredDigraphEmbedding"]
Out[]=
In[]:=
ResourceFunction["MultiwaySystem"][{"A""AB","BB""A","AB""AA"},"A",6,"StatesGraph"]
Out[]=
In[]:=
FindStringReplacePath[{"A""AB","BB""A"},"A","AAAAA"]
Out[]=
{A,AB,ABB,AA,AAB,AABB,AAA,AAAB,AAABB,AAAA,AAAAB,AAAABB,AAAAA}
In[]:=
FindStringReplacePath[{"A""AB","BB""A","AB""AA"},"A","AAAAA"]
Out[]=
{A,AB,AA,AAB,AAA,AAAB,AAAA,AAAAB,AAAAA}
Did we generate all possible LHSs for our candidate
Did we generate all possible LHSs for our candidate
In[]:=
SimpleGraph[EquationalMultiwaySystem[{{"AB","BA"},{"AAAB","AAAB"}},2,"ProofGraph"],VertexLabels->Automatic,GraphLayout"LayeredDigraphEmbedding",EdgeStyle{DirectedEdge[_,_,1]Gray,DirectedEdge[_,_,2]Dotted}]
Out[]=
Euclid
Euclid
In[]:=
euc=ResourceData["Theorem Network from Euclid's Elements"];
In[]:=
VertexOutComponent[euc,<|"Book"1,"Theorem"7|>,1]
Out[]=
{Book1,Theorem7,None,Common Notion5,Book1,Theorem5,Postulate1}
In[]:=
VertexOutComponent[euc,<|"Book"1,"Theorem"7|>,2]
Out[]=
{Book1,Theorem7,None,Common Notion5,Book1,Theorem5,Postulate1,Postulate2,Common Notion3,Book1,Theorem3,Book1,Theorem4}
In[]:=
VertexOutComponent[euc,<|"Book"1,"Theorem"7|>,Infinity]
Out[]=
{Book1,Theorem7,None,Common Notion5,Book1,Theorem5,Postulate1,Postulate2,Common Notion3,Book1,Theorem3,Book1,Theorem4,Common Notion1,Book1,Theorem2,Postulate3,Common Notion4,Book1,Theorem1}
Does Euclid only back-reference, and not forward reference?
Does Euclid only back-reference, and not forward reference?
Does every theorem eventually depend only on postulates and common notions?
Does every theorem eventually depend only on postulates and common notions?
Which theorems are most popular, used directly?
Which theorems are most popular, used directly?
In[]:=
TakeLargestBy[VertexList[euc],VertexInDegree[euc,#]&,5]
Out[]=
{Book10,Theorem11,Book6,Theorem1,Book5,Theorem11,Book1,Theorem3,Book10,Theorem6}
In[]:=
VertexInDegree[euc,#]&/@%729
Out[]=
{60,53,47,47,43}
In[]:=
eec[<|"Book"b_,"Theorem"t_|>]:=Entity["GeometricScene",StringTemplate["EuclidBook`b`Proposition`t`"][<|"b"b,"t"t|>]]
In[]:=
eec["Book"1,"Theorem"3]
In[]:=
Out[]=
To cut off from the longer of two given unequal line segments a part equal to the shorter.
In[]:=
Out[]=
GeometricScene[{{A.,B.,C.,D.,E.,F.},{}},{{Line[{A.,B.}],Line[{C.,D.}],EuclideanDistance[A.,B.]>EuclideanDistance[C.,D.]},{Line[{A.,E.}],EuclideanDistance[A.,E.]EuclideanDistance[C.,D.]},{GeometricAssertion[{CircleThrough[{E.},A.],Line[{A.,B.}]},{Concurrent,F.}]}},{EuclideanDistance[A.,F.]EuclideanDistance[C.,D.]}]
Direct uses
Direct uses
Did Euclid only Back Reference
Did Euclid only Back Reference
[[[ Something is wrong with the following;; only picking ]]]]
Decompose into purely the action of axioms
Decompose into purely the action of axioms
Source bug:
Number of axioms needed for each proof: [[[ WRONG! ]]]
Number of axioms needed for each proof: [[[ WRONG! ]]]
Shortening of 17gon construction: https://mathworld.wolfram.com/Heptadecagon.html
Shortening of 17gon construction: https://mathworld.wolfram.com/Heptadecagon.html
Communities of theorems
Communities of theorems