From 5c89c6f55d62b22830ecba161bae089a816e1dd6 Mon Sep 17 00:00:00 2001 From: Thomas Walker Lynch Date: Fri, 10 Jan 2025 05:18:23 +0000 Subject: [PATCH] SRM->SRTM examples into their own directories --- .../CountingNumber$ASRM_Infinite.class | Bin 1589 -> 0 bytes .../example/CountingNumber$ASRM_Null.class | Bin 1564 -> 0 bytes .../CountingNumber$ASRM_Rightmost.class | Bin 1583 -> 0 bytes .../example/CountingNumber$ASRM_Segment.class | Bin 1901 -> 0 bytes developer/example/CountingNumber.class | Bin 2181 -> 0 bytes .../{ => CountingNumber}/CountingNumber.java | 20 +-- .../Example_CountingNumber_0.java | 6 +- .../Example_IndexTree_4x4.java | 20 +-- .../Example_IndexTree_Diagonal_SRM.java | 8 +- .../example/IndexTree/IndexTree_Graph.java | 21 ++++ .../example/IndexTree/IndexTree_Label.java | 18 +-- .../example/IndexTree/IndexTree_Node.java | 23 ++++ .../IndexTree/IndexTree_SRTM_Child.java | 10 +- .../IndexTree/IndexTree_SRTM_Diagonal.java | 118 ++++++++++++++++++ .../example/IndexTree_Diagonal_SRM.class | Bin 2988 -> 0 bytes .../Example_SRTMI_Array.java} | 10 +- .../Example_SRTM_List.java} | 10 +- developer/example/temp.java | 108 ++++++++++++++++ .../javac\360\237\226\211/Ariadne_Graph.java" | 2 +- .../Ariadne_IndexTree_Graph.java" | 21 ---- .../Ariadne_IndexTree_Node.java" | 23 ---- .../javac\360\237\226\211/Ariadne_Node.java" | 4 +- .../Ariadne_SRM_Set.java" | 18 --- .../javac\360\237\226\211/Ariadne_SRTM.java" | 14 +-- .../javac\360\237\226\211/Ariadne_SRTMI.java" | 6 +- .../Ariadne_SRTMI_Array.java" | 8 +- .../Ariadne_SRTM_Label.java" | 6 +- .../Ariadne_SRTM_List.java" | 10 +- .../Ariadne_SRTM_Set.java" | 17 +++ .../tool\360\237\226\211/clean_example" | 14 ++- "developer/tool\360\237\226\211/make_example" | 7 +- .../IndexTree_Diagonal_SRM.java => temp.java | 3 + 32 files changed, 383 insertions(+), 142 deletions(-) delete mode 100644 developer/example/CountingNumber$ASRM_Infinite.class delete mode 100644 developer/example/CountingNumber$ASRM_Null.class delete mode 100644 developer/example/CountingNumber$ASRM_Rightmost.class delete mode 100644 developer/example/CountingNumber$ASRM_Segment.class delete mode 100644 developer/example/CountingNumber.class rename developer/example/{ => CountingNumber}/CountingNumber.java (80%) rename developer/example/{ => CountingNumber}/Example_CountingNumber_0.java (83%) rename developer/example/{ => IndexTree}/Example_IndexTree_4x4.java (57%) rename developer/example/{ => IndexTree}/Example_IndexTree_Diagonal_SRM.java (80%) create mode 100644 developer/example/IndexTree/IndexTree_Graph.java rename "developer/javac\360\237\226\211/Ariadne_IndexTree_Label.java" => developer/example/IndexTree/IndexTree_Label.java (74%) create mode 100644 developer/example/IndexTree/IndexTree_Node.java rename "developer/javac\360\237\226\211/Ariadne_IndexTree_Child_SRM.java" => developer/example/IndexTree/IndexTree_SRTM_Child.java (82%) create mode 100644 developer/example/IndexTree/IndexTree_SRTM_Diagonal.java delete mode 100644 developer/example/IndexTree_Diagonal_SRM.class rename developer/example/{Example_SRMI_Array.java => SRTM/Example_SRTMI_Array.java} (62%) rename developer/example/{Example_SRM_List.java => SRTM/Example_SRTM_List.java} (64%) create mode 100644 developer/example/temp.java delete mode 100644 "developer/javac\360\237\226\211/Ariadne_IndexTree_Graph.java" delete mode 100644 "developer/javac\360\237\226\211/Ariadne_IndexTree_Node.java" delete mode 100644 "developer/javac\360\237\226\211/Ariadne_SRM_Set.java" rename "developer/javac\360\237\226\211/Ariadne_SRM.java" => "developer/javac\360\237\226\211/Ariadne_SRTM.java" (82%) rename "developer/javac\360\237\226\211/Ariadne_SRMI.java" => "developer/javac\360\237\226\211/Ariadne_SRTMI.java" (74%) rename "developer/javac\360\237\226\211/Ariadne_SRMI_Array.java" => "developer/javac\360\237\226\211/Ariadne_SRTMI_Array.java" (91%) rename "developer/javac\360\237\226\211/Ariadne_SRM_Label.java" => "developer/javac\360\237\226\211/Ariadne_SRTM_Label.java" (50%) rename "developer/javac\360\237\226\211/Ariadne_SRM_List.java" => "developer/javac\360\237\226\211/Ariadne_SRTM_List.java" (89%) create mode 100644 "developer/javac\360\237\226\211/Ariadne_SRTM_Set.java" rename developer/example/IndexTree_Diagonal_SRM.java => temp.java (99%) diff --git a/developer/example/CountingNumber$ASRM_Infinite.class b/developer/example/CountingNumber$ASRM_Infinite.class deleted file mode 100644 index 4ce6eae55fe357dd5f6e5608947288fd760e0018..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1589 zcmbVMO-~b16g_WfJ8c=D@+BbnS+y=H7W9=iGPCyZ8P2{o^NqEHWWT=#k-5;75RAGHWz+ zOVi8wMr~i1(ag^F=ANn_Xu4(zhJaPk>d{$-NUn8bI*cGfGQtXaq0ssvKjx__*UPD` z{X}7 zs33|J-KZMnlT^mkcu5zRevd?p7K|fjks+w&H`KgZSZ7$w{SO6+E8&5HC>}ESOu;FW zvDjbEEaNf5LbqYm174*29g4NzYkZeNW{nap4&*dlH0z?k_p3BBm@|sJy2~kj8oQG| zyG9spw=uPrQkqI+Q&<(F^p=~vCM;nRCRpV9UNb)`l6USz-4aK1h^7l#SGq2d1l{Io zUl+w5zEsasp)?)Z(aJiv8Ybn&nnmUKb=*UrTSwpw61^LJp$7F42(v>ztM5;(>*S;hGeV+K!Xl%&s3i$uzh!Yo;v zY=*oIk$hil>mfPukVq~GvwOfr&bi27;tcEzeP7$~?>+e775?czME>AGUPqpD60*;n zMUQjl5j(OQ{S-qN7&}MbwH9{Q0w3uS`s5)TxjM=-QnD#R(oMy8iplmgK6|jfCN`2G z85Ue@%EkH<7r5UJ_FjbF4eZ0BqttUOIsOG+I=&xi@)MMsM33__*(t2x)!I0f!V1;` F${*u|U>*Pf diff --git a/developer/example/CountingNumber$ASRM_Null.class b/developer/example/CountingNumber$ASRM_Null.class deleted file mode 100644 index 90190a85f14548c9a1cd998bed9c97072d5c78c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1564 zcmbVMTTc@~6#k|y-L|ZyQb2BMRg|_U1qB2PXl*o-6foQpeIY|TlqKzKvpY5VpL|e* zl4zpu{wU*_ZGolHM10seGv~~AF5fw`KYxAw4xos~Q3Mb)5Hit)FvDQcZc1gz>RPkD zC!Ddu=EmyoTC-MT2&)6j9h+iEl+Itu#}Gl(K+HrpOtK&HH#}G4vYK1pI}~L_*hNcP zYMCLJ&g?`HM~{JoiOc9^h@bbyz$}J=lINt()j{s5Rb7!vRE3i_(8n--=6_qd%|^p^ zl&GvXgu|6(%V%%PqMSuauIDxccWp`bEm1y@cFnH7%M~1pSEM+RyF}aAmfi4- z3?UtpVXpK)aH2PW8zyez7I|_6uTY!PnZFTqn_>2%VOI8eSuiBiot@3>P{^WPA!AR; zlA<*gTYRrZn%g?nf5sew4E?L`)%ZXk{TJw9)TU< z(uWTGtPdYK#pnJZ@`4X}7J14ms6{}~iyZrgLj)a%k#5^-zuF zOwH7LKdNb;3+k2XfgafVe6ZHud+mMh&tG4^1IXY}5FU8_@EPbsKf_eUYDs0v%1*1k zFYK9(d~Um#Gb>e9x0;HfUscWK%pyZ1d;Xv45CRDL5i&3UgYFOc8=k6hSxN2gABvL3 zu9?zQ>kQs_VlRj=2K|T_xQHQ!@Od@{W-^Rs9g;d%)zlNSvL%(M2s`b^FvIK_|4Z3y zH5!(!M0vL%Y_3d8K7Csf4ZR3plwmT%rLm7-laBdlb5A9@kNqu zreHOkONQWSNQRZ{|8S7R9$YnW4c8fbw%}!kv3TNNBHdtE?lsKT0WS%LXuP|-i9HIL zvC4Egm^Gznk4J&;*XU#@Yn6Cyk5m1$?;QH{q%cf(F?CH;nkHpisH#45NIV@9re8q^d8dO6B#*$3 zaN$E2{=kI~oZ?e|M)r0`K6D|^A}=}xwFU4xIfuR>`f6z87?*x@#g;CH69E`*L+7j+ zboIJw-zQ9T=WV;NzINV`4XXQY2b=0(`;uP}>jt}(@9PxpqmF55m$BmbdsuaR828Cf Xz)N>wJRm!XG#)-4r{1Tr-f#Q{7ZhVe diff --git a/developer/example/CountingNumber$ASRM_Segment.class b/developer/example/CountingNumber$ASRM_Segment.class deleted file mode 100644 index 91da239baa0f53fc5cd2c40db9f99664841f0248..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1901 zcmbVMT~pIQ6g^uCX-mKgf(m|%+7_gW2xt+(S^;ef+R8Ziz%1$7MwHK-Xk%%TT9>5tIMV04haSQ_r22~uF z&|`-kA}1@wT#QbhR565MTJuVUVLWj-XY%lE8RcmeXQUs+;BR!JVMx+*D$e5qr6gWA zc->(b@Oc9XXOim@KBD3hE;Af)T<(euTd&q!!*WQE>AYqc=_i6amPvY-g;q1Ix>bFf zUa)muF~v{2K_wU|TU*xh3$6)Lx)%u*Nu(HJT+@U@6}d(=d6;M|%71#0-8x zAm+(-Bb8~8WTo67aH`;m#9wNqV2a^pyMcO=GW7o; zU2=_FX03{#(&cqiG~1!fH|w<1m$x)tU*l9KTKk(}*&7U}TZ(X?gEG_^1>x4L$||?H zAzWb-B%*P1qnRG{#=5`ZxMGW9Xqujq%e7YpzU4cMxO5+yD$kH2?WXOiOTF_`%;3Fc zh?exK$=!xcsq$uL1P`?B%@cX{@D`gRNn$0dVQb=nF177H_!NxG_9jJ&!f}_pzEPJ= zQ`p%$cN{_DslgXYL6Kp!4K*m)U!6r>l9!rJxx-m`T46P=~ zhRDWJqkCYfPf$M6Dui1!b`cWD;Wmw`H;*BMSz6tpuakZfDZ?D@(kRKs$Vx~k{9cX$ zlBEDi$R}a4BYfn9kBp>t!FJK}p#`50;3L2A^Z(#^HGur>dBICa#=MOVFXn0K+4sJK z{(YR-Lyy01np68Y`wmBcpS$=OSEO1UUZQ;n)4WXY>Qf}JhABJ?xSsZdzUQ51Q{*#? z`+oN0e)i!VjJ9U}JU|j|lEfECxtxzp``FIZKCZWdgSG4QBM9RG#Sp?GmOQ(Rho0@l aBeFx3O^BZ6JdHO|z)F`&Wi4QJ{^SpbJh|2Y diff --git a/developer/example/CountingNumber.class b/developer/example/CountingNumber.class deleted file mode 100644 index 7e2f76befb0907403d5a7e0b306bf0a72efaa8aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2181 zcmbVO|56)O6#j0YSqKY+AEhmYN?W8!XdAR*6%b32YA}E%5iMGoCB1}glU>Yi9DEUH z{KI$9j-fMl#s~0id;#@4y9+cnb_O!Jx#ygF&v$;@a}NCZ_wRoISjM*r#L!`&)5JN% z75bLlhU42#WxY|`(RBsW)Bd*a?z>gD@`J)$DqnVM*@Ct_*WtC2F7G+PS$3&zTaO)m zv~L#+Ym+4^=60>Jo=sL!ueTklDcn6{77ScgxZG+dbf>5*HSPEbjAB^KUNP~8nC%VCdf~Bws|w@o^b2-n z&#$>25hg-}NfU1hLVt)*Ke}MxhQe4ojGVJ8&!Q8U3L!EkrUjxegs`LYZrs9c16dO@ zcuQfp-3#*3Hr7`ZM%urxgm}lqJEE^_;odcIS2&|)9oV%-O^m#6Voqe8TPuZ)1O*Ew zJ^;(6nRMsrY|p#UKGwx~Mo_b!5;*mL<^JE=qsFrPm>T_g+tFb&maLsBC4+glY*jZcwj22) zVJh7Q!r!wQaq`uZ-lA`npRQT^k$S=^m$m0j&dkgxtiI9-XG;egNFjDW#Ml8Japg29 zuSsR1=r-zQ{lJ!F47JwrZ7D^Co^|c{Yg#54<2Q4TqwC96%k#8n;46jMQ%sPP8O9np zo@b|y3Pj9&uSPxu=T4h-Z-o8hI%1p!!%04C^! ze7XeSIeJ82;Y7cO90zoC`$u$=0`fG~mwAB!u{qSl23I@S zo_s#=n16F3AOE7h#N^WKnSGq5gVWFO-XZ3HhAFO&h^rLcJj91Tg`(>slC$wBjE*3T z#o*<~+JrIAFs|Sp$M-5Lq=0KEa)3YLEY`SzU1Z>J8cTR1VF*!p3?_Iwg*Bcf5&MUV zF+;w$SW(F?tYaeze~y|GempbXlH9NyI$uJMN@CdJ8s++$OUmgRt|_iZi2Vy1D)&PG diff --git a/developer/example/CountingNumber.java b/developer/example/CountingNumber/CountingNumber.java similarity index 80% rename from developer/example/CountingNumber.java rename to developer/example/CountingNumber/CountingNumber.java index cbfc6b9..11ce61c 100644 --- a/developer/example/CountingNumber.java +++ b/developer/example/CountingNumber/CountingNumber.java @@ -1,7 +1,7 @@ -import com.ReasoningTechnology.Ariadne.Ariadne_SRM; +import com.ReasoningTechnology.Ariadne.Ariadne_SRMT; import java.math.BigInteger; -public class CountingNumber extends Ariadne_SRM{ +public class CountingNumber extends Ariadne_SRMT{ public static CountingNumber make(BigInteger maximum){ return new CountingNumber(maximum); @@ -14,10 +14,10 @@ public class CountingNumber extends Ariadne_SRM{ private BigInteger i; private BigInteger maximum; - private final TopoIface state_null = new ASRM_Null(); - private final TopoIface state_segment = new ASRM_Segment(); - private final TopoIface state_rightmost = new ASRM_Rightmost(); - private final TopoIface state_infinite = new ASRM_Infinite(); + private final TopoIface state_null = new ASRMT_Null(); + private final TopoIface state_segment = new ASRMT_Segment(); + private final TopoIface state_rightmost = new ASRMT_Rightmost(); + private final TopoIface state_infinite = new ASRMT_Infinite(); public CountingNumber(){ this.i = BigInteger.ONE; @@ -43,7 +43,7 @@ public class CountingNumber extends Ariadne_SRM{ } - private class ASRM_Null implements TopoIface{ + private class ASRMT_Null implements TopoIface{ @Override public boolean can_read(){ return false; @@ -66,7 +66,7 @@ public class CountingNumber extends Ariadne_SRM{ } } - private class ASRM_Segment implements TopoIface{ + private class ASRMT_Segment implements TopoIface{ @Override public boolean can_read(){ return true; @@ -92,7 +92,7 @@ public class CountingNumber extends Ariadne_SRM{ } } - private class ASRM_Rightmost implements TopoIface{ + private class ASRMT_Rightmost implements TopoIface{ @Override public boolean can_read(){ return true; @@ -115,7 +115,7 @@ public class CountingNumber extends Ariadne_SRM{ } } - private class ASRM_Infinite implements TopoIface{ + private class ASRMT_Infinite implements TopoIface{ @Override public boolean can_read(){ return true; diff --git a/developer/example/Example_CountingNumber_0.java b/developer/example/CountingNumber/Example_CountingNumber_0.java similarity index 83% rename from developer/example/Example_CountingNumber_0.java rename to developer/example/CountingNumber/Example_CountingNumber_0.java index 0dab204..48ec99b 100644 --- a/developer/example/Example_CountingNumber_0.java +++ b/developer/example/CountingNumber/Example_CountingNumber_0.java @@ -1,4 +1,4 @@ -import com.ReasoningTechnology.Ariadne.Ariadne_SRM; +import com.ReasoningTechnology.Ariadne.Ariadne_SRMT; import java.math.BigInteger; public class Example_CountingNumber_0{ @@ -8,14 +8,14 @@ public class Example_CountingNumber_0{ if( !n.can_read() ) return; - if( n.topology() == Ariadne_SRM.Topology.SEGMENT ){ + if( n.topology() == Ariadne_SRMT.Topology.SEGMENT ){ do{ System.out.println("Current Number: " + n.read()); if( !n.can_step() ) break; n.step(); }while( true ); - }else if( n.topology() == Ariadne_SRM.Topology.INFINITE ){ + }else if( n.topology() == Ariadne_SRMT.Topology.INFINITE ){ int count = 0; do{ System.out.println("Current Number: " + n.read()); diff --git a/developer/example/Example_IndexTree_4x4.java b/developer/example/IndexTree/Example_IndexTree_4x4.java similarity index 57% rename from developer/example/Example_IndexTree_4x4.java rename to developer/example/IndexTree/Example_IndexTree_4x4.java index 5f766bd..9e1b008 100644 --- a/developer/example/Example_IndexTree_4x4.java +++ b/developer/example/IndexTree/Example_IndexTree_4x4.java @@ -1,8 +1,8 @@ -import com.ReasoningTechnology.Ariadne.Ariadne_SRM; -import com.ReasoningTechnology.Ariadne.Ariadne_SRM_List; -import com.ReasoningTechnology.Ariadne.Ariadne_IndexTree_Child_SRM; -import com.ReasoningTechnology.Ariadne.Ariadne_IndexTree_Graph; -import com.ReasoningTechnology.Ariadne.Ariadne_IndexTree_Node; +import com.ReasoningTechnology.Ariadne.Ariadne_SRMT; +import com.ReasoningTechnology.Ariadne.Ariadne_SRMT_List; +import com.ReasoningTechnology.Ariadne.IndexTree_SRMT_Child; +import com.ReasoningTechnology.Ariadne.IndexTree_Graph; +import com.ReasoningTechnology.Ariadne.IndexTree_Node; public class Example_IndexTree_4x4{ @@ -11,15 +11,15 @@ public class Example_IndexTree_4x4{ System.out.println("Example_IndexTree_4x4"); // Initialize graph and start at root - Ariadne_IndexTree_Graph graph = Ariadne_IndexTree_Graph.make(); - Ariadne_IndexTree_Child_SRM root = graph.start(); + IndexTree_Graph graph = IndexTree_Graph.make(); + IndexTree_SRMT_Child root = graph.start(); System.out.println("root: " + root.read().toString()); // Variables for traversal - Ariadne_IndexTree_Label label = root.read(); - Ariadne_IndexTree_Node node; - Ariadne_SRM child_srm; + IndexTree_Label label = root.read(); + IndexTree_Node node; + Ariadne_SRMT child_srm; // Descend 3 more levels int i = 1; diff --git a/developer/example/Example_IndexTree_Diagonal_SRM.java b/developer/example/IndexTree/Example_IndexTree_Diagonal_SRM.java similarity index 80% rename from developer/example/Example_IndexTree_Diagonal_SRM.java rename to developer/example/IndexTree/Example_IndexTree_Diagonal_SRM.java index 746735a..84c4400 100644 --- a/developer/example/Example_IndexTree_Diagonal_SRM.java +++ b/developer/example/IndexTree/Example_IndexTree_Diagonal_SRM.java @@ -1,13 +1,13 @@ import java.math.BigInteger; import java.util.Queue; -public class Example_IndexTree_Diagonal_SRM { +public class Example_IndexTree_Diagonal_SRMT { public static void main(String[] args){ - System.out.println("Starting IndexTree SRM Example"); + System.out.println("Starting IndexTree SRMT Example"); - // Instantiate the IndexTree Diagonal SRM - IndexTree_Diagonal_SRM srm = IndexTree_Diagonal_SRM.make(); + // Instantiate the IndexTree Diagonal SRMT + IndexTree_Diagonal_SRMT srm = IndexTree_Diagonal_SRMT.make(); int step_count = 0; do{ diff --git a/developer/example/IndexTree/IndexTree_Graph.java b/developer/example/IndexTree/IndexTree_Graph.java new file mode 100644 index 0000000..6b4f873 --- /dev/null +++ b/developer/example/IndexTree/IndexTree_Graph.java @@ -0,0 +1,21 @@ +package com.ReasoningTechnology.Ariadne; + +public class IndexTree_Graph{ + + public static IndexTree_Graph make(){ + return new IndexTree_Graph(); + } + protected IndexTree_Graph(){ + } + + public IndexTree_SRMT_Child start(){ + IndexTree_Label root_label = IndexTree_Label.root(); + return IndexTree_SRMT_Child.make(root_label); + } + + IndexTree_Node lookup(IndexTree_Label label){ + return IndexTree_Node.make(label); + } + +} + diff --git "a/developer/javac\360\237\226\211/Ariadne_IndexTree_Label.java" b/developer/example/IndexTree/IndexTree_Label.java similarity index 74% rename from "developer/javac\360\237\226\211/Ariadne_IndexTree_Label.java" rename to developer/example/IndexTree/IndexTree_Label.java index 8abb146..d416e71 100644 --- "a/developer/javac\360\237\226\211/Ariadne_IndexTree_Label.java" +++ b/developer/example/IndexTree/IndexTree_Label.java @@ -7,17 +7,17 @@ package com.ReasoningTechnology.Ariadne; import java.math.BigInteger; import java.util.Arrays; -public class Ariadne_IndexTree_Label implements Ariadne_Label{ +public class IndexTree_Label implements Ariadne_Label{ // Owned by class // - public static Ariadne_IndexTree_Label make(BigInteger[] array){ - return new Ariadne_IndexTree_Label(array); + public static IndexTree_Label make(BigInteger[] array){ + return new IndexTree_Label(array); } - public static Ariadne_IndexTree_Label root(){ - return new Ariadne_IndexTree_Label(new BigInteger[0]); + public static IndexTree_Label root(){ + return new IndexTree_Label(new BigInteger[0]); } // Instance data @@ -28,7 +28,7 @@ public class Ariadne_IndexTree_Label implements Ariadne_Label{ // Constructor // - private Ariadne_IndexTree_Label(BigInteger[] array){ + private IndexTree_Label(BigInteger[] array){ this.value = array.clone(); } @@ -43,8 +43,8 @@ public class Ariadne_IndexTree_Label implements Ariadne_Label{ return Arrays.toString(value); } - @Override public Ariadne_IndexTree_Label copy(){ - return new Ariadne_IndexTree_Label(value); + @Override public IndexTree_Label copy(){ + return new IndexTree_Label(value); } // Increment last element by one, modifying in place @@ -71,7 +71,7 @@ public class Ariadne_IndexTree_Label implements Ariadne_Label{ @Override public boolean equals(Object o){ if(this == o) return true; if( o == null || getClass() != o.getClass() ) return false; - Ariadne_IndexTree_Label that = (Ariadne_IndexTree_Label) o; + IndexTree_Label that = (IndexTree_Label) o; return Arrays.equals(value, that.value); } diff --git a/developer/example/IndexTree/IndexTree_Node.java b/developer/example/IndexTree/IndexTree_Node.java new file mode 100644 index 0000000..bf1f7cd --- /dev/null +++ b/developer/example/IndexTree/IndexTree_Node.java @@ -0,0 +1,23 @@ +package com.ReasoningTechnology.Ariadne; +import java.util.Arrays; + +public class IndexTree_Node extends Ariadne_Node{ + + public static IndexTree_Node make(IndexTree_Label label){ + return new IndexTree_Node(label); + } + + private final IndexTree_Label first_child_label; + + public IndexTree_Node(IndexTree_Label label){ + super(label); + first_child_label = label.copy(); + first_child_label.inc_down(); + } + + // public IndexTree_SRMT_Child neighbor(){ + public IndexTree_SRMT_Child neighbor(){ + return IndexTree_SRMT_Child.make(first_child_label); + } + +} diff --git "a/developer/javac\360\237\226\211/Ariadne_IndexTree_Child_SRM.java" b/developer/example/IndexTree/IndexTree_SRTM_Child.java similarity index 82% rename from "developer/javac\360\237\226\211/Ariadne_IndexTree_Child_SRM.java" rename to developer/example/IndexTree/IndexTree_SRTM_Child.java index bbe68e8..7b84ac2 100644 --- "a/developer/javac\360\237\226\211/Ariadne_IndexTree_Child_SRM.java" +++ b/developer/example/IndexTree/IndexTree_SRTM_Child.java @@ -1,14 +1,14 @@ package com.ReasoningTechnology.Ariadne; -public class Ariadne_IndexTree_Child_SRM extends Ariadne_SRM_Label { +public class IndexTree_SRMT_Child extends Ariadne_SRMT_Label { - public static Ariadne_IndexTree_Child_SRM make( Ariadne_IndexTree_Label first_child_label ){ - return new Ariadne_IndexTree_Child_SRM( first_child_label ); + public static IndexTree_SRMT_Child make( IndexTree_Label first_child_label ){ + return new IndexTree_SRMT_Child( first_child_label ); } - private final Ariadne_IndexTree_Label label; + private final IndexTree_Label label; - protected Ariadne_IndexTree_Child_SRM( Ariadne_IndexTree_Label first_child_label ){ + protected IndexTree_SRMT_Child( IndexTree_Label first_child_label ){ this.label = first_child_label.copy(); if( label == null ){ diff --git a/developer/example/IndexTree/IndexTree_SRTM_Diagonal.java b/developer/example/IndexTree/IndexTree_SRTM_Diagonal.java new file mode 100644 index 0000000..5e39c93 --- /dev/null +++ b/developer/example/IndexTree/IndexTree_SRTM_Diagonal.java @@ -0,0 +1,118 @@ +/* +An index Tree is infinite. + +A tree diagonal consists of +a) a node descending from each child discovered thus far +b> a node extending each child list discovered thus far. + +Hence, each diagonal extends the tree down one, and over one. + +*/ + +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.List; +import com.ReasoningTechnology.Ariadne.Ariadne_Test; +import com.ReasoningTechnology.Ariadne.Ariadne_SRMT; +import com.ReasoningTechnology.Ariadne.Ariadne_IndexTree_Node; + +public class IndexTree_Diagonal_SRMT extends Ariadne_SRMT_Label>{ + + // Static + // + + public static IndexTree_Diagonal_SRMT make(){ + return new IndexTree_Diagonal_SRMT(); + } + + //Instance data + // + + private final List list_of__unopened_node; + // each node has a child list, this is a list of child lists + private final List list_of__opened_incomplete_child_list; + // Each diagonal is a list of nodes, referenced by their label + private final List read_list; + + // Constructor(s) + // + + protected IndexTree_Diagonal_SRMT(){ + list_of__unopened_node = new ArrayList<>(); + list_of__opened_incomplete_child_list = new ArrayList<>(); + read_list = new ArrayList<>(); + enqueue_root(); + } + + // Implementation of instance interface. + // + + private void enqueue_root(){ + Ariadne_IndexTree_Label root_label = Ariadne_IndexTree_Label.root(); + read_list.add(root_label); + + Ariadne_IndexTree_Node root_node = lookup(root_label); + if( !fetch_child_labels(root_node).isEmpty() ){ + list_of__unopened_node.add(root_label); + } + } + + // lol! This can not be done on an infinite list! + private List fetch_child_labels(Ariadne_IndexTree_Node node){ + List child_labels = new ArrayList<>(); + if(node != null){ + IndexTree_Diagonal_SRMT child_srm = node.neighbor(); + if( child_srm.can_read() ){ + do{ + child_labels.add(child_srm.read()); + if( !srm.can_step ) break; + child_srm.step(); + }while(true); + } + } + return child_labels; + } + + @Override public List read(){ + return read_list; + } + + @Override public void step(){ + read_list.clear(); + + // Process unopened nodes + while( !list_of__unopened_node.isEmpty() ){ + BigInteger[] label = list_of__unopened_node.remove(0); + + // Retrieve the node using lookup + Ariadne_IndexTree_Node node = lookup(label); + + // Descend by getting neighbors + List child_labels = fetch_child_labels(node); + if( !child_labels.isEmpty() ){ + list_of__opened_incomplete_child_list.add(child_labels); + } + } + + // Process incomplete child lists + while( !list_of__opened_incomplete_child_list.isEmpty() ){ + List child_labels = list_of__opened_incomplete_child_list.remove(0); + if( !child_labels.isEmpty() ){ + BigInteger[] label = child_labels.remove(0); + read_list.add(label); + + // Retrieve node and check its neighbors + Ariadne_IndexTree_Node node = lookup(label); + if( !fetch_child_labels(node).isEmpty() ){ + list_of__unopened_node.add(label); + } + } + } + } + + private Ariadne_IndexTree_Node lookup(BigInteger[] label){ + // Perform a lookup to retrieve the node corresponding to the label + return Ariadne_IndexTree_Node.make(label); + } + +} diff --git a/developer/example/IndexTree_Diagonal_SRM.class b/developer/example/IndexTree_Diagonal_SRM.class deleted file mode 100644 index a9bf2ed686a0f91c7a25c691f004bbcf1f1f5bce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2988 zcmb_eS#uOs6#lwr#-61KSs(<07-h*UNd}bFge3$5fyp2whD~idGnbi$neMUELzyR^ z`~$vel~wXY`KDDGM9Srf2mgrwK@0J_-94Eh7z$Fpbl-E&{+)B~y?^}k^RED=a4QKF z5e-otF}$WAS90q4E5clIY|F09i&E8gYEET2Kj~U#*%qz8F?VHF!D|ziZFwgYMADfB z4RHm1x6Qj|zUf&tO1kE9!CLZ?&=5%=1zp1?9bMS0pnt|Li%;iWA&fJYS#fN$7MSd> zQNwU<8Aj7~8p0N3!*z2PnUsN9g8Jv#PcAK`LE-MPzLwx(w?K{_?luH-K*-WDZqTtiyHwwnQ? zZhF=HX{$10d!i!TaT!cjM-C&jQ*)d<&4z-@>2;(tg_o^kyADOd?7JD$k;i@oy|;u{ zsKK=}9Nt*c3ZixMj*!NV>o|dv3gWh~D%C~DRd6!B5iqCxrsI$hQ5BOqPRrJamrUDO z@*`AF=#)RBn+ujLip~0>aOcg%8bjzUI3=^TVDj`J9d1Uw zs>N0sD72fe^AMoD9ZYRqX70JXUzAv^COelQ2FJ+JjkYfjhwvl`C!zn@)Rr5q^ft|T zX6eqX*$C53%EQD6!$|l<5R2aGGGocDD;Rz0&}3gJn0^)c7eQ3|-)8znUaq}TxUbZH z$vLO#mc+CrTW;{b8)r-o7fDH21>~o^Q7c%Ec*lcq^Q~< zx~s!gEOZq>u|OprIQ-Ixa+g|B>fVz^9%6?AE|L%NhJvqfP_82nv0KIO7%pUUE6B`d zM^-Re91TUfDAG;hfQqa4pFWmU$hj=nE#<*NF5EtnYwZosQlf7p(3Ms*#q20;cUVq_ z-1|?zmH0;e1TPR%U^kK5M?{CY$`adA;xWb}KF?Rr0Zii{0XT$@aTpekz$51~BKh3B(e|)W5NyQiuS=}hbor)2}jm8+9ltE%$fqB2e}H+lql{ePxk9?{L5C$hvPJxdyGA7sfi-1 ze(FmMjPO6jMhlWBaqj-pKS!j)pzym`D9}Zm1EXVs<8{?9$3CVo%9P}AWhvW(oiGT! zkLhYidB1SHq}ejEtSVaN3gk`72fQMA5|A#aPtc=bP=opxA2Y%HEOt*4=IIcd_7JY% X!dh(Nen`Q*x3Ez|GbNPiLWTGj^tQII diff --git a/developer/example/Example_SRMI_Array.java b/developer/example/SRTM/Example_SRTMI_Array.java similarity index 62% rename from developer/example/Example_SRMI_Array.java rename to developer/example/SRTM/Example_SRTMI_Array.java index d630176..7283167 100644 --- a/developer/example/Example_SRMI_Array.java +++ b/developer/example/SRTM/Example_SRTMI_Array.java @@ -1,16 +1,16 @@ -import com.ReasoningTechnology.Ariadne.Ariadne_SRM; -import com.ReasoningTechnology.Ariadne.Ariadne_SRMI_Array; +import com.ReasoningTechnology.Ariadne.Ariadne_SRMT; +import com.ReasoningTechnology.Ariadne.Ariadne_SRMTI_Array; import java.util.Arrays; import java.util.List; -public class Example_SRMI_Array { +public class Example_SRMTI_Array { public static void main( String[] args ){ // Create an Array List label_array = Arrays.asList( "A", "B", "C", "D" ); - // Attach SRMI to the array - Ariadne_SRMI_Array srm = Ariadne_SRMI_Array.make( label_array ); + // Attach SRMTI to the array + Ariadne_SRMTI_Array srm = Ariadne_SRMTI_Array.make( label_array ); if( srm.can_read() ){ do{ System.out.println( "Reading: " + srm.read() ); diff --git a/developer/example/Example_SRM_List.java b/developer/example/SRTM/Example_SRTM_List.java similarity index 64% rename from developer/example/Example_SRM_List.java rename to developer/example/SRTM/Example_SRTM_List.java index 197c1bf..6d35ead 100644 --- a/developer/example/Example_SRM_List.java +++ b/developer/example/SRTM/Example_SRTM_List.java @@ -1,9 +1,9 @@ -import com.ReasoningTechnology.Ariadne.Ariadne_SRM; -import com.ReasoningTechnology.Ariadne.Ariadne_SRM_List; +import com.ReasoningTechnology.Ariadne.Ariadne_SRMT; +import com.ReasoningTechnology.Ariadne.Ariadne_SRMT_List; import java.util.LinkedList; -public class Example_SRM_List { +public class Example_SRMT_List { public static void main( String[] args ){ // Create a linked list LinkedList label_list = new LinkedList<>(); @@ -11,8 +11,8 @@ public class Example_SRM_List { label_list.add( "B" ); label_list.add( "C" ); - // Attach SRM to the linked list and traverse - Ariadne_SRM_List srm = Ariadne_SRM_List.make(label_list); + // Attach SRMT to the linked list and traverse + Ariadne_SRMT_List srm = Ariadne_SRMT_List.make(label_list); if( srm.can_read() ){ do{ System.out.println( "Reading: " + srm.read() ); diff --git a/developer/example/temp.java b/developer/example/temp.java new file mode 100644 index 0000000..2f09bb4 --- /dev/null +++ b/developer/example/temp.java @@ -0,0 +1,108 @@ +/* + IndexTree_SRMT_Diagonal + + An index tree is infinite. + + A tree diagonal consists of: + a) a node descending from each child discovered thus far + b) a node extending each child list discovered thus far. + + Hence, each diagonal extends the tree down one and over one. +*/ + +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.List; +import com.ReasoningTechnology.Ariadne.Ariadne_SRMT; +import com.ReasoningTechnology.Ariadne.IndexTree_Node; + +public class IndexTree_SRMT_Diagonal extends Ariadne_SRMT_Label { + + // Static + + public static IndexTree_SRMT_Diagonal make(){ + return new IndexTree_SRMT_Diagonal(); + } + + // Instance Data + + private final List list_of__unopened_node; + private final List> list_of__opened_incomplete_child_list; + private final List read_list; + private final Ariadne_SRMT_Label breadth_srm; + + // Constructor + + protected IndexTree_SRMT_Diagonal(){ + list_of__unopened_node = new ArrayList<>(); + list_of__opened_incomplete_child_list = new ArrayList<>(); + read_list = new ArrayList<>(); + breadth_srm = Ariadne_SRMT_Label.make(); + enqueue_root(); + } + + // Instance Methods + + private void enqueue_root(){ + IndexTree_Label root_label = IndexTree_Label.root(); + read_list.add( root_label ); + + IndexTree_Node root_node = lookup( root_label ); + breadth_srm.mount( root_node.neighbor() ); + + if( breadth_srm.can_read() ){ + list_of__unopened_node.add( root_label ); + } + } + + private IndexTree_Node lookup( Ariadne_Label label ){ + return IndexTree_Node.make( (IndexTree_Label)label ); + } + + @Override + public List read(){ + return read_list; + } + + @Override + public void step(){ + read_list.clear(); + + // Process unopened nodes + while( !list_of__unopened_node.isEmpty() ){ + Ariadne_Label label = list_of__unopened_node.remove( 0 ); + + // Retrieve the node using lookup + IndexTree_Node node = lookup( label ); + + // Mount a new breadth-first SRMT for children + breadth_srm.mount( node.neighbor() ); + + if( breadth_srm.can_read() ){ + do{ + Ariadne_Label child_label = breadth_srm.read(); + list_of__unopened_node.add( child_label ); + list_of__opened_incomplete_child_list.add( new ArrayList<>( List.of( child_label ) ) ); + + breadth_srm.step(); + }while( breadth_srm.can_step() ); + } + } + + // Process incomplete child lists + while( !list_of__opened_incomplete_child_list.isEmpty() ){ + List child_list = list_of__opened_incomplete_child_list.remove( 0 ); + if( !child_list.isEmpty() ){ + Ariadne_Label label = child_list.remove( 0 ); + read_list.add( label ); + + IndexTree_Node node = lookup( label ); + breadth_srm.mount( node.neighbor() ); + + if( breadth_srm.can_read() ){ + list_of__unopened_node.add( label ); + } + } + } + } +} diff --git "a/developer/javac\360\237\226\211/Ariadne_Graph.java" "b/developer/javac\360\237\226\211/Ariadne_Graph.java" index 769eeda..6739911 100644 --- "a/developer/javac\360\237\226\211/Ariadne_Graph.java" +++ "b/developer/javac\360\237\226\211/Ariadne_Graph.java" @@ -12,7 +12,7 @@ package com.ReasoningTechnology.Ariadne; public interface Ariadne_Graph { - Ariadne_SRM start(); + Ariadne_SRMT start(); Ariadne_Node lookup(Ariadne_Label label); diff --git "a/developer/javac\360\237\226\211/Ariadne_IndexTree_Graph.java" "b/developer/javac\360\237\226\211/Ariadne_IndexTree_Graph.java" deleted file mode 100644 index 034d604..0000000 --- "a/developer/javac\360\237\226\211/Ariadne_IndexTree_Graph.java" +++ /dev/null @@ -1,21 +0,0 @@ -package com.ReasoningTechnology.Ariadne; - -public class Ariadne_IndexTree_Graph{ - - public static Ariadne_IndexTree_Graph make(){ - return new Ariadne_IndexTree_Graph(); - } - protected Ariadne_IndexTree_Graph(){ - } - - public Ariadne_IndexTree_Child_SRM start(){ - Ariadne_IndexTree_Label root_label = Ariadne_IndexTree_Label.root(); - return Ariadne_IndexTree_Child_SRM.make(root_label); - } - - Ariadne_IndexTree_Node lookup(Ariadne_IndexTree_Label label){ - return Ariadne_IndexTree_Node.make(label); - } - -} - diff --git "a/developer/javac\360\237\226\211/Ariadne_IndexTree_Node.java" "b/developer/javac\360\237\226\211/Ariadne_IndexTree_Node.java" deleted file mode 100644 index 314ab6b..0000000 --- "a/developer/javac\360\237\226\211/Ariadne_IndexTree_Node.java" +++ /dev/null @@ -1,23 +0,0 @@ -package com.ReasoningTechnology.Ariadne; -import java.util.Arrays; - -public class Ariadne_IndexTree_Node extends Ariadne_Node{ - - public static Ariadne_IndexTree_Node make(Ariadne_IndexTree_Label label){ - return new Ariadne_IndexTree_Node(label); - } - - private final Ariadne_IndexTree_Label first_child_label; - - public Ariadne_IndexTree_Node(Ariadne_IndexTree_Label label){ - super(label); - first_child_label = label.copy(); - first_child_label.inc_down(); - } - - // public Ariadne_IndexTree_Child_SRM neighbor(){ - public Ariadne_IndexTree_Child_SRM neighbor(){ - return Ariadne_IndexTree_Child_SRM.make(first_child_label); - } - -} diff --git "a/developer/javac\360\237\226\211/Ariadne_Node.java" "b/developer/javac\360\237\226\211/Ariadne_Node.java" index 732b0a7..89f50ad 100644 --- "a/developer/javac\360\237\226\211/Ariadne_Node.java" +++ "b/developer/javac\360\237\226\211/Ariadne_Node.java" @@ -54,7 +54,7 @@ public class Ariadne_Node extends HashMap{ return this.label; } - public Ariadne_SRM_Label neighbor(){ + public Ariadne_SRMT_Label neighbor(){ throw new UnsupportedOperationException("Ariadne_Node::neighbor not implemented in the base class."); } @@ -88,7 +88,7 @@ public class Ariadne_Node extends HashMap{ // Marks representation if( !mark_set.isEmpty() ){ - Ariadne_SRM_Set srm = Ariadne_SRM_Set.make(mark_set); + Ariadne_SRMT_Set srm = Ariadne_SRMT_Set.make(mark_set); output.append( " Mark(" ); do{ diff --git "a/developer/javac\360\237\226\211/Ariadne_SRM_Set.java" "b/developer/javac\360\237\226\211/Ariadne_SRM_Set.java" deleted file mode 100644 index 8ec5ad0..0000000 --- "a/developer/javac\360\237\226\211/Ariadne_SRM_Set.java" +++ /dev/null @@ -1,18 +0,0 @@ -package com.ReasoningTechnology.Ariadne; - -import java.util.ArrayList; -import java.util.Set; - -public class Ariadne_SRM_Set extends Ariadne_SRMI_Array{ - - // Static factory method - public static Ariadne_SRM_Set make(Set set){ - return new Ariadne_SRM_Set( set ); - } - - // Constructor - protected Ariadne_SRM_Set(Set set){ - super( new ArrayList(set) ); - } - -} diff --git "a/developer/javac\360\237\226\211/Ariadne_SRM.java" "b/developer/javac\360\237\226\211/Ariadne_SRTM.java" similarity index 82% rename from "developer/javac\360\237\226\211/Ariadne_SRM.java" rename to "developer/javac\360\237\226\211/Ariadne_SRTM.java" index 462c9df..ba15c04 100644 --- "a/developer/javac\360\237\226\211/Ariadne_SRM.java" +++ "b/developer/javac\360\237\226\211/Ariadne_SRTM.java" @@ -8,7 +8,7 @@ */ package com.ReasoningTechnology.Ariadne; -public class Ariadne_SRM{ +public class Ariadne_SRMT{ // static // @@ -21,8 +21,8 @@ public class Ariadne_SRM{ ,INFINITE } - public static make(){ - return new Ariadne_SRM + public static Ariadne_SRMT make(){ + return new Ariadne_SRMT(); } // instance data @@ -34,7 +34,7 @@ public class Ariadne_SRM{ // constructor(s) // - protected Ariadne_SRM(){ + protected Ariadne_SRMT(){ set_topology( not_mounted ); } @@ -60,16 +60,16 @@ public class Ariadne_SRM{ return false; } @Override public Object read(){ - throw new UnsupportedOperationException("Ariadne_SRM::NotMounted::read."); + throw new UnsupportedOperationException("Ariadne_SRMT::NotMounted::read."); } @Override public boolean can_step(){ return false; } @Override public void step(){ - throw new UnsupportedOperationException("Ariadne_SRM::NotMounted::step."); + throw new UnsupportedOperationException("Ariadne_SRMT::NotMounted::step."); } @Override public Topology topology(){ - throw new UnsupportedOperationException("Ariadne_SRM::NotMounted::topology."); + throw new UnsupportedOperationException("Ariadne_SRMT::NotMounted::topology."); } } diff --git "a/developer/javac\360\237\226\211/Ariadne_SRMI.java" "b/developer/javac\360\237\226\211/Ariadne_SRTMI.java" similarity index 74% rename from "developer/javac\360\237\226\211/Ariadne_SRMI.java" rename to "developer/javac\360\237\226\211/Ariadne_SRTMI.java" index 4bb120a..4bdd585 100644 --- "a/developer/javac\360\237\226\211/Ariadne_SRMI.java" +++ "b/developer/javac\360\237\226\211/Ariadne_SRTMI.java" @@ -1,16 +1,16 @@ /* -Ariadne_SRM with index +Ariadne_SRMT with index */ package com.ReasoningTechnology.Ariadne; import java.math.BigInteger; -public abstract class Ariadne_SRMI extends Ariadne_SRM{ +public abstract class Ariadne_SRMTI extends Ariadne_SRMT{ private BigInteger current_index; - public Ariadne_SRMI(){ + public Ariadne_SRMTI(){ this.current_index = BigInteger.ZERO; } diff --git "a/developer/javac\360\237\226\211/Ariadne_SRMI_Array.java" "b/developer/javac\360\237\226\211/Ariadne_SRTMI_Array.java" similarity index 91% rename from "developer/javac\360\237\226\211/Ariadne_SRMI_Array.java" rename to "developer/javac\360\237\226\211/Ariadne_SRTMI_Array.java" index 9027594..c63fe73 100644 --- "a/developer/javac\360\237\226\211/Ariadne_SRMI_Array.java" +++ "b/developer/javac\360\237\226\211/Ariadne_SRTMI_Array.java" @@ -3,11 +3,11 @@ package com.ReasoningTechnology.Ariadne; import java.math.BigInteger; import java.util.List; -public class Ariadne_SRMI_Array extends Ariadne_SRMI{ +public class Ariadne_SRMTI_Array extends Ariadne_SRMTI{ // Static methods - public static Ariadne_SRMI_Array make(List array){ - return new Ariadne_SRMI_Array( array ); + public static Ariadne_SRMTI_Array make(List array){ + return new Ariadne_SRMTI_Array( array ); } // Instance data @@ -18,7 +18,7 @@ public class Ariadne_SRMI_Array extends Ariadne_SRMI{ private final TopoIface topo_rightmost = new TopoRightmost(); // Constructor - protected Ariadne_SRMI_Array(List array){ + protected Ariadne_SRMTI_Array(List array){ super(); this.array = array; diff --git "a/developer/javac\360\237\226\211/Ariadne_SRM_Label.java" "b/developer/javac\360\237\226\211/Ariadne_SRTM_Label.java" similarity index 50% rename from "developer/javac\360\237\226\211/Ariadne_SRM_Label.java" rename to "developer/javac\360\237\226\211/Ariadne_SRTM_Label.java" index b69e3e1..1aa4824 100644 --- "a/developer/javac\360\237\226\211/Ariadne_SRM_Label.java" +++ "b/developer/javac\360\237\226\211/Ariadne_SRTM_Label.java" @@ -1,9 +1,9 @@ package com.ReasoningTechnology.Ariadne; -public class Ariadne_SRM_Label extends Ariadne_SRM { +public class Ariadne_SRMT_Label extends Ariadne_SRMT { - public static Ariadne_SRM_Label make(){ - return new Ariadne_SRM_Label(); + public static Ariadne_SRMT_Label make(){ + return new Ariadne_SRMT_Label(); } @Override public Ariadne_Label read(){ diff --git "a/developer/javac\360\237\226\211/Ariadne_SRM_List.java" "b/developer/javac\360\237\226\211/Ariadne_SRTM_List.java" similarity index 89% rename from "developer/javac\360\237\226\211/Ariadne_SRM_List.java" rename to "developer/javac\360\237\226\211/Ariadne_SRTM_List.java" index 2974af5..233db1e 100644 --- "a/developer/javac\360\237\226\211/Ariadne_SRM_List.java" +++ "b/developer/javac\360\237\226\211/Ariadne_SRTM_List.java" @@ -1,5 +1,5 @@ /* - The Ariadne_SRM_List class provides a Step Right Machine (SRM) for linked lists. + The Ariadne_SRMT_List class provides a Step Right Machine (SRMT) for linked lists. This implementation uses Java's ListIterator, which lacks a direct method to read the current element without advancing the iterator. @@ -8,11 +8,11 @@ package com.ReasoningTechnology.Ariadne; import java.util.List; import java.util.ListIterator; -public class Ariadne_SRM_List extends Ariadne_SRM{ +public class Ariadne_SRMT_List extends Ariadne_SRMT{ // Static methods - public static Ariadne_SRM_List make(List list){ - return new Ariadne_SRM_List(list); + public static Ariadne_SRMT_List make(List list){ + return new Ariadne_SRMT_List(list); } private List list; // The attached linked list @@ -23,7 +23,7 @@ public class Ariadne_SRM_List extends Ariadne_SRM{ private final TopoIface topo_segment = new TopoSegment(); private final TopoIface topo_rightmost = new TopoRightmost(); - protected Ariadne_SRM_List(List list){ + protected Ariadne_SRMT_List(List list){ this.list = list; if( list == null || list.isEmpty() ){ diff --git "a/developer/javac\360\237\226\211/Ariadne_SRTM_Set.java" "b/developer/javac\360\237\226\211/Ariadne_SRTM_Set.java" new file mode 100644 index 0000000..84bdaa1 --- /dev/null +++ "b/developer/javac\360\237\226\211/Ariadne_SRTM_Set.java" @@ -0,0 +1,17 @@ +package com.ReasoningTechnology.Ariadne; + +import java.util.ArrayList; +import java.util.Set; + +public class Ariadne_SRMT_Set extends Ariadne_SRMTI_Array{ + + // Static factory method + public static Ariadne_SRMT_Set make(Set set){ + return new Ariadne_SRMT_Set( set ); + } + + protected Ariadne_SRMT_Set(Set set){ + super( new ArrayList(set) ); + } + +} diff --git "a/developer/tool\360\237\226\211/clean_example" "b/developer/tool\360\237\226\211/clean_example" index bd0670b..59496e3 100755 --- "a/developer/tool\360\237\226\211/clean_example" +++ "b/developer/tool\360\237\226\211/clean_example" @@ -9,16 +9,24 @@ script_afp=$(realpath "${BASH_SOURCE[0]}") cd "$REPO_HOME"/developer || exit 1 source tool🖉/env_script -# remove example class files +# Check if the directory $1 exists +if [ ! -d "example/$1" ]; then + echo "Error: Directory 'example/$1' does not exist." + exit 1 +fi - cd example || exit 1 +cd "example/$1" || exit 1 + + +# remove wrappers and class files for file in Example_*.class; do echo "file: " $file - rm_na "$file" wrapper_name=$(basename "$file" .class) rm_na "$wrapper_name" done + rm_na *.class + echo "$(script_fn) done." diff --git "a/developer/tool\360\237\226\211/make_example" "b/developer/tool\360\237\226\211/make_example" index 6eaf0c9..1abd031 100755 --- "a/developer/tool\360\237\226\211/make_example" +++ "b/developer/tool\360\237\226\211/make_example" @@ -4,8 +4,13 @@ script_afp=$(realpath "${BASH_SOURCE[0]}") cd "$REPO_HOME"/developer || exit 1 source tool🖉/env_script +# Check if the directory $1 exists +if [ ! -d "example/$1" ]; then + echo "Error: Directory 'example/$1' does not exist." + exit 1 +fi -cd example || exit 1 +cd "example/$1" || exit 1 echo "Compiling example .java files..." diff --git a/developer/example/IndexTree_Diagonal_SRM.java b/temp.java similarity index 99% rename from developer/example/IndexTree_Diagonal_SRM.java rename to temp.java index 4daa8b3..460b5b4 100644 --- a/developer/example/IndexTree_Diagonal_SRM.java +++ b/temp.java @@ -1,3 +1,5 @@ + + /* An index Tree is infinite. @@ -9,6 +11,7 @@ Hence, each diagonal extends the tree down one, and over one. */ + import java.math.BigInteger; import java.util.ArrayList; import java.util.List; -- 2.20.1