Simplify unification, drop unifies constraint, drop trace constraint.

This commit is contained in:
Fedor Isakov 2017-05-17 16:52:32 +02:00
parent 8a932dafa6
commit 54153b57a6
1 changed files with 16 additions and 447 deletions

View File

@ -405,7 +405,6 @@
<concept id="5524459797190399502" name="jetbrains.mps.lang.typesystem2.structure.TermDeclaration" flags="ng" index="BRKj$">
<child id="5524459797190401236" name="template" index="BRKSY" />
</concept>
<concept id="7248331023826941335" name="jetbrains.mps.lang.typesystem2.structure.AssertExpressionConstraint" flags="ng" index="3lcGGY" />
<concept id="8908809128804390455" name="jetbrains.mps.lang.typesystem2.structure.TypeLogicalExpression" flags="ng" index="3txIi4" />
<concept id="8908809128801951589" name="jetbrains.mps.lang.typesystem2.structure.TypeInitializer" flags="ng" index="3uniRm">
<child id="8908809128801951592" name="code" index="3uniRr" />
@ -1122,21 +1121,20 @@
</node>
</node>
</node>
<node concept="3I6s7M" id="WBEjvSTmlK" role="3I6sU7">
<node concept="3Aqt3T" id="44a9n8Es2$L" role="3I6s78">
<ref role="3AqCNq" node="44a9n8ErYcT" resolve="unifies" />
<node concept="a7P8L" id="3Lj6UsgFxtE" role="3AunhB">
<node concept="3I6s7M" id="2BWkXu0IGGD" role="3I6sU7">
<node concept="3A8Hvi" id="2BWkXu0IGGz" role="3I6s78">
<node concept="a7P8L" id="2BWkXu0IGPA" role="3A8wtg">
<ref role="a7OzE" node="3Lj6UsgFxni" resolve="FI" />
</node>
<node concept="1Q4cc8" id="44a9n8Es2_e" role="3AunhB">
<node concept="1Q4cc8" id="2BWkXu0IGHk" role="3A8w4Q">
<ref role="1nfQt" node="4dPZ2m2hWGK" resolve="Fun" />
<node concept="1RziaG" id="44a9n8Es2_m" role="1Ryyee">
<node concept="1RziaG" id="2BWkXu0IGHC" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXGZ" resolve="arg" />
<node concept="3AP2Rn" id="44a9n8Es2_n" role="1RzmR7">
<node concept="3clFbS" id="44a9n8Es2_o" role="16YjZG">
<node concept="3clFbF" id="44a9n8Es2Ay" role="3cqZAp">
<node concept="3A9UF8" id="44a9n8Es2Av" role="3clFbG">
<node concept="a7P8L" id="44a9n8Es2Ax" role="3A9W3M">
<node concept="3AP2Rn" id="2BWkXu0IGHD" role="1RzmR7">
<node concept="3clFbS" id="2BWkXu0IGHE" role="16YjZG">
<node concept="3clFbF" id="2BWkXu0IGHT" role="3cqZAp">
<node concept="3A9UF8" id="2BWkXu0IGHR" role="3clFbG">
<node concept="a7P8L" id="2BWkXu0IGI8" role="3A9W3M">
<ref role="a7OzE" node="44a9n8Es2A7" resolve="FA" />
</node>
</node>
@ -1144,13 +1142,13 @@
</node>
</node>
</node>
<node concept="1RziaG" id="44a9n8Es2_O" role="1Ryyee">
<node concept="1RziaG" id="2BWkXu0IGKY" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXHj" resolve="res" />
<node concept="3AP2Rn" id="44a9n8Es2_P" role="1RzmR7">
<node concept="3clFbS" id="44a9n8Es2_Q" role="16YjZG">
<node concept="3clFbF" id="44a9n8Es2C4" role="3cqZAp">
<node concept="3A9UF8" id="44a9n8Es2C1" role="3clFbG">
<node concept="a7P8L" id="44a9n8Es2C3" role="3A9W3M">
<node concept="3AP2Rn" id="2BWkXu0IGKZ" role="1RzmR7">
<node concept="3clFbS" id="2BWkXu0IGL0" role="16YjZG">
<node concept="3clFbF" id="2BWkXu0IGLl" role="3cqZAp">
<node concept="3A9UF8" id="2BWkXu0IGLj" role="3clFbG">
<node concept="a7P8L" id="2BWkXu0IGMf" role="3A9W3M">
<ref role="a7OzE" node="44a9n8Es2Aj" resolve="FR" />
</node>
</node>
@ -1389,23 +1387,6 @@
<property role="TrG5h" value="forall" />
</node>
</node>
<node concept="3AqmO8" id="44a9n8ErYcT" role="3AqmFx">
<property role="TrG5h" value="unifies" />
<property role="3AqDzJ" value="2" />
<node concept="1zAUYm" id="44a9n8ErYcV" role="1zAUyy">
<property role="TrG5h" value="left" />
</node>
<node concept="1zAUYm" id="44a9n8ErYcX" role="1zAUyy">
<property role="TrG5h" value="right" />
</node>
</node>
<node concept="3AqmO8" id="g7nsZkprnF" role="3AqmFx">
<property role="TrG5h" value="trace" />
<property role="3AqDzJ" value="1" />
<node concept="1zAUYm" id="g7nsZkprnR" role="1zAUyy">
<property role="TrG5h" value="term" />
</node>
</node>
<node concept="3AqmO8" id="RRVBbp6QpB" role="3AqmFx">
<property role="TrG5h" value="varname" />
<property role="3AqDzJ" value="2" />
@ -1447,418 +1428,6 @@
</node>
</node>
</node>
<node concept="AVZre" id="44a9n8ErYgw">
<property role="TrG5h" value="unifies" />
<node concept="AVZhu" id="44a9n8ErYgz" role="3ArX_J">
<property role="TrG5h" value="unifies" />
<node concept="3Aq93q" id="44a9n8ErYgA" role="3orSU4">
<property role="3ArMco" value="false" />
<node concept="3NuqgR" id="44a9n8ErYgE" role="3Nuqhd">
<node concept="aZer4" id="44a9n8ErYgF" role="3XD1gS">
<property role="TrG5h" value="LA" />
</node>
<node concept="aZer4" id="44a9n8ErYjU" role="3XD1gS">
<property role="TrG5h" value="LR" />
</node>
<node concept="aZer4" id="44a9n8ErYgO" role="3XD1gS">
<property role="TrG5h" value="RA" />
</node>
<node concept="aZer4" id="44a9n8ErYkg" role="3XD1gS">
<property role="TrG5h" value="RR" />
</node>
</node>
<node concept="3I6sU6" id="Cn$NxdZfEK" role="3Ip0Jz">
<node concept="3I6s7M" id="Cn$NxdZfEL" role="3I6sU7">
<node concept="3Aqt3T" id="44a9n8ErYh0" role="3I6s78">
<ref role="3AqCNq" node="44a9n8ErYcT" resolve="unifies" />
<node concept="1Q4cc8" id="44a9n8ErYi3" role="3AunhB">
<ref role="1nfQt" node="4dPZ2m2hWGK" resolve="Fun" />
<node concept="1RziaG" id="44a9n8ErYib" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXGZ" resolve="arg" />
<node concept="3AP2Rn" id="44a9n8ErYic" role="1RzmR7">
<node concept="3clFbS" id="44a9n8ErYid" role="16YjZG">
<node concept="3clFbF" id="44a9n8ErYkB" role="3cqZAp">
<node concept="3A9UF8" id="44a9n8ErYk$" role="3clFbG">
<node concept="a7P8L" id="44a9n8ErYkA" role="3A9W3M">
<ref role="a7OzE" node="44a9n8ErYgF" resolve="LA" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1RziaG" id="44a9n8ErYiq" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXHj" resolve="res" />
<node concept="3AP2Rn" id="44a9n8ErYir" role="1RzmR7">
<node concept="3clFbS" id="44a9n8ErYis" role="16YjZG">
<node concept="3clFbF" id="44a9n8ErYm8" role="3cqZAp">
<node concept="3A9UF8" id="44a9n8ErYm5" role="3clFbG">
<node concept="a7P8L" id="44a9n8ErYm7" role="3A9W3M">
<ref role="a7OzE" node="44a9n8ErYjU" resolve="LR" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1Q4cc8" id="44a9n8ErYj4" role="3AunhB">
<ref role="1nfQt" node="4dPZ2m2hWGK" resolve="Fun" />
<node concept="1RziaG" id="44a9n8ErYjm" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXGZ" resolve="arg" />
<node concept="3AP2Rn" id="44a9n8ErYjn" role="1RzmR7">
<node concept="3clFbS" id="44a9n8ErYjo" role="16YjZG">
<node concept="3clFbF" id="44a9n8ErYnD" role="3cqZAp">
<node concept="3A9UF8" id="44a9n8ErYnA" role="3clFbG">
<node concept="a7P8L" id="44a9n8ErYnC" role="3A9W3M">
<ref role="a7OzE" node="44a9n8ErYgO" resolve="RA" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1RziaG" id="44a9n8ErYj_" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXHj" resolve="res" />
<node concept="3AP2Rn" id="44a9n8ErYjA" role="1RzmR7">
<node concept="3clFbS" id="44a9n8ErYjB" role="16YjZG">
<node concept="3clFbF" id="44a9n8ErYpa" role="3cqZAp">
<node concept="3A9UF8" id="44a9n8ErYp7" role="3clFbG">
<node concept="a7P8L" id="44a9n8ErYp9" role="3A9W3M">
<ref role="a7OzE" node="44a9n8ErYkg" resolve="RR" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3Aq9E8" id="44a9n8ErYhH" role="3otmyu">
<node concept="3I6sU6" id="Cn$NxdZfIg" role="3Ip0Jz">
<node concept="3I6s7M" id="Cn$NxdZfIh" role="3I6sU7">
<node concept="3A8Hvi" id="44a9n8ErYqC" role="3I6s78">
<node concept="a7P8L" id="44a9n8ErYqK" role="3A8wtg">
<ref role="a7OzE" node="44a9n8ErYgF" resolve="LA" />
</node>
<node concept="a7P8L" id="44a9n8ErYqP" role="3A8w4Q">
<ref role="a7OzE" node="44a9n8ErYgO" resolve="RA" />
</node>
</node>
</node>
<node concept="3I6s7M" id="Cn$NxdZfIi" role="3I6sU7">
<node concept="3A8Hvi" id="44a9n8ErYqV" role="3I6s78">
<node concept="a7P8L" id="44a9n8ErYra" role="3A8wtg">
<ref role="a7OzE" node="44a9n8ErYjU" resolve="LR" />
</node>
<node concept="a7P8L" id="44a9n8ErYsH" role="3A8w4Q">
<ref role="a7OzE" node="44a9n8ErYkg" resolve="RR" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="AVZhu" id="6eI2Tb45gAb" role="3ArX_J">
<property role="TrG5h" value="unifies_left" />
<node concept="3Aq93q" id="6eI2Tb45gAc" role="3orSU4">
<property role="3ArMco" value="false" />
<node concept="3NuqgR" id="6eI2Tb45gAd" role="3Nuqhd">
<node concept="aZer4" id="6eI2Tb45gAe" role="3XD1gS">
<property role="TrG5h" value="LA" />
</node>
<node concept="aZer4" id="6eI2Tb45gAf" role="3XD1gS">
<property role="TrG5h" value="LR" />
</node>
<node concept="aZer4" id="6eI2Tb45gHC" role="3XD1gS">
<property role="TrG5h" value="R" />
</node>
</node>
<node concept="3I6sU6" id="Cn$NxdZfKx" role="3Ip0Jz">
<node concept="3I6s7M" id="Cn$NxdZfKy" role="3I6sU7">
<node concept="3Aqt3T" id="6eI2Tb45gAk" role="3I6s78">
<ref role="3AqCNq" node="44a9n8ErYcT" resolve="unifies" />
<node concept="1Q4cc8" id="6eI2Tb45gAl" role="3AunhB">
<ref role="1nfQt" node="4dPZ2m2hWGK" resolve="Fun" />
<node concept="1RziaG" id="6eI2Tb45gAn" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXGZ" resolve="arg" />
<node concept="3AP2Rn" id="6eI2Tb45gAo" role="1RzmR7">
<node concept="3clFbS" id="6eI2Tb45gAp" role="16YjZG">
<node concept="3clFbF" id="6eI2Tb45gAq" role="3cqZAp">
<node concept="3A9UF8" id="6eI2Tb45gAr" role="3clFbG">
<node concept="a7P8L" id="6eI2Tb45gAs" role="3A9W3M">
<ref role="a7OzE" node="6eI2Tb45gAe" resolve="LA" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1RziaG" id="6eI2Tb45gAt" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXHj" resolve="res" />
<node concept="3AP2Rn" id="6eI2Tb45gAu" role="1RzmR7">
<node concept="3clFbS" id="6eI2Tb45gAv" role="16YjZG">
<node concept="3clFbF" id="6eI2Tb45gAw" role="3cqZAp">
<node concept="3A9UF8" id="6eI2Tb45gAx" role="3clFbG">
<node concept="a7P8L" id="6eI2Tb45gAy" role="3A9W3M">
<ref role="a7OzE" node="6eI2Tb45gAf" resolve="LR" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="a7P8L" id="6eI2Tb45huQ" role="3AunhB">
<ref role="a7OzE" node="6eI2Tb45gHC" resolve="R" />
</node>
</node>
</node>
</node>
</node>
<node concept="3Aq9E8" id="6eI2Tb45gAL" role="3otmyu">
<node concept="3I6sU6" id="Cn$NxdZfNe" role="3Ip0Jz">
<node concept="3I6s7M" id="Cn$NxdZfNf" role="3I6sU7">
<node concept="3A8Hvi" id="6eI2Tb45hx2" role="3I6s78">
<node concept="a7P8L" id="6eI2Tb45hxa" role="3A8wtg">
<ref role="a7OzE" node="6eI2Tb45gHC" resolve="R" />
</node>
<node concept="1Q4cc8" id="6eI2Tb45hxf" role="3A8w4Q">
<ref role="1nfQt" node="4dPZ2m2hWGK" resolve="Fun" />
<node concept="1RziaG" id="6eI2Tb45hxh" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXGZ" resolve="arg" />
<node concept="3AP2Rn" id="6eI2Tb45hxi" role="1RzmR7">
<node concept="3clFbS" id="6eI2Tb45hxj" role="16YjZG">
<node concept="3clFbF" id="6eI2Tb45hxk" role="3cqZAp">
<node concept="3A9UF8" id="6eI2Tb45hxl" role="3clFbG">
<node concept="a7P8L" id="6eI2Tb45hxm" role="3A9W3M">
<ref role="a7OzE" node="6eI2Tb45gAe" resolve="LA" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1RziaG" id="6eI2Tb45hxn" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXHj" resolve="res" />
<node concept="3AP2Rn" id="6eI2Tb45hxo" role="1RzmR7">
<node concept="3clFbS" id="6eI2Tb45hxp" role="16YjZG">
<node concept="3clFbF" id="6eI2Tb45hxq" role="3cqZAp">
<node concept="3A9UF8" id="6eI2Tb45hxr" role="3clFbG">
<node concept="a7P8L" id="6eI2Tb45hxs" role="3A9W3M">
<ref role="a7OzE" node="6eI2Tb45gAf" resolve="LR" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="AVZhu" id="6eI2Tb45hzs" role="3ArX_J">
<property role="TrG5h" value="unifies_right" />
<node concept="3Aq93q" id="6eI2Tb45hzt" role="3orSU4">
<property role="3ArMco" value="false" />
<node concept="3NuqgR" id="6eI2Tb45hzu" role="3Nuqhd">
<node concept="aZer4" id="6eI2Tb45hKz" role="3XD1gS">
<property role="TrG5h" value="L" />
</node>
<node concept="aZer4" id="6eI2Tb45hzx" role="3XD1gS">
<property role="TrG5h" value="RA" />
</node>
<node concept="aZer4" id="6eI2Tb45hzy" role="3XD1gS">
<property role="TrG5h" value="RR" />
</node>
</node>
<node concept="3I6sU6" id="Cn$NxdZfPV" role="3Ip0Jz">
<node concept="3I6s7M" id="Cn$NxdZfPW" role="3I6sU7">
<node concept="3Aqt3T" id="6eI2Tb45hz_" role="3I6s78">
<ref role="3AqCNq" node="44a9n8ErYcT" resolve="unifies" />
<node concept="a7P8L" id="6eI2Tb45hN$" role="3AunhB">
<ref role="a7OzE" node="6eI2Tb45hKz" resolve="L" />
</node>
<node concept="1Q4cc8" id="6eI2Tb45hzO" role="3AunhB">
<ref role="1nfQt" node="4dPZ2m2hWGK" resolve="Fun" />
<node concept="1RziaG" id="6eI2Tb45hzQ" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXGZ" resolve="arg" />
<node concept="3AP2Rn" id="6eI2Tb45hzR" role="1RzmR7">
<node concept="3clFbS" id="6eI2Tb45hzS" role="16YjZG">
<node concept="3clFbF" id="6eI2Tb45hzT" role="3cqZAp">
<node concept="3A9UF8" id="6eI2Tb45hzU" role="3clFbG">
<node concept="a7P8L" id="6eI2Tb45hzV" role="3A9W3M">
<ref role="a7OzE" node="6eI2Tb45hzx" resolve="RA" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1RziaG" id="6eI2Tb45hzW" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXHj" resolve="res" />
<node concept="3AP2Rn" id="6eI2Tb45hzX" role="1RzmR7">
<node concept="3clFbS" id="6eI2Tb45hzY" role="16YjZG">
<node concept="3clFbF" id="6eI2Tb45hzZ" role="3cqZAp">
<node concept="3A9UF8" id="6eI2Tb45h$0" role="3clFbG">
<node concept="a7P8L" id="6eI2Tb45h$1" role="3A9W3M">
<ref role="a7OzE" node="6eI2Tb45hzy" resolve="RR" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3Aq9E8" id="6eI2Tb45h$2" role="3otmyu">
<node concept="3I6sU6" id="Cn$NxdZfSC" role="3Ip0Jz">
<node concept="3I6s7M" id="Cn$NxdZfSD" role="3I6sU7">
<node concept="3A8Hvi" id="6eI2Tb45i2R" role="3I6s78">
<node concept="a7P8L" id="6eI2Tb45io5" role="3A8wtg">
<ref role="a7OzE" node="6eI2Tb45hKz" resolve="L" />
</node>
<node concept="1Q4cc8" id="6eI2Tb45i2T" role="3A8w4Q">
<ref role="1nfQt" node="4dPZ2m2hWGK" resolve="Fun" />
<node concept="1RziaG" id="6eI2Tb45i2V" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXGZ" resolve="arg" />
<node concept="3AP2Rn" id="6eI2Tb45i2W" role="1RzmR7">
<node concept="3clFbS" id="6eI2Tb45i2X" role="16YjZG">
<node concept="3clFbF" id="6eI2Tb45i2Y" role="3cqZAp">
<node concept="3A9UF8" id="6eI2Tb45i2Z" role="3clFbG">
<node concept="a7P8L" id="6eI2Tb45iop" role="3A9W3M">
<ref role="a7OzE" node="6eI2Tb45hzx" resolve="RA" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1RziaG" id="6eI2Tb45i31" role="1Ryyee">
<ref role="1RzibV" node="4dPZ2m2hXHj" resolve="res" />
<node concept="3AP2Rn" id="6eI2Tb45i32" role="1RzmR7">
<node concept="3clFbS" id="6eI2Tb45i33" role="16YjZG">
<node concept="3clFbF" id="6eI2Tb45i34" role="3cqZAp">
<node concept="3A9UF8" id="6eI2Tb45i35" role="3clFbG">
<node concept="a7P8L" id="6eI2Tb45iqC" role="3A9W3M">
<ref role="a7OzE" node="6eI2Tb45hzy" resolve="RR" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="AVZhu" id="7edv2S3db5T" role="3ArX_J">
<property role="TrG5h" value="unifies_vars" />
<node concept="3Aq9_M" id="7edv2S3db9e" role="3oo59u">
<node concept="3I6sU6" id="7edv2S3db9f" role="3Ip0Jz">
<node concept="3I6s7M" id="7edv2S3db9j" role="3I6sU7">
<node concept="2aLmEc" id="7edv2S3db9i" role="3I6s78">
<node concept="a7P8L" id="7edv2S3db9m" role="2aLmnP">
<ref role="a7OzE" node="7edv2S3db8m" resolve="L" />
</node>
</node>
</node>
<node concept="3I6s7M" id="7edv2S3db9J" role="3I6sU7">
<node concept="2aLmEc" id="7edv2S3db9H" role="3I6s78">
<node concept="a7P8L" id="7edv2S3db9P" role="2aLmnP">
<ref role="a7OzE" node="7edv2S3db8v" resolve="R" />
</node>
</node>
</node>
</node>
</node>
<node concept="3Aq93q" id="7edv2S3db8h" role="3orSU4">
<node concept="3NuqgR" id="7edv2S3db8l" role="3Nuqhd">
<node concept="aZer4" id="7edv2S3db8m" role="3XD1gS">
<property role="TrG5h" value="L" />
</node>
<node concept="aZer4" id="7edv2S3db8v" role="3XD1gS">
<property role="TrG5h" value="R" />
</node>
</node>
<node concept="3I6sU6" id="7edv2S3db8i" role="3Ip0Jz">
<node concept="3I6s7M" id="7edv2S3db8V" role="3I6sU7">
<node concept="3Aqt3T" id="7edv2S3db8T" role="3I6s78">
<ref role="3AqCNq" node="44a9n8ErYcT" resolve="unifies" />
<node concept="a7P8L" id="7edv2S3db92" role="3AunhB">
<ref role="a7OzE" node="7edv2S3db8m" resolve="L" />
</node>
<node concept="a7P8L" id="7edv2S3db98" role="3AunhB">
<ref role="a7OzE" node="7edv2S3db8v" resolve="R" />
</node>
</node>
</node>
</node>
</node>
<node concept="3Aq9E8" id="7edv2S3db9T" role="3otmyu">
<node concept="3I6sU6" id="7edv2S3db9U" role="3Ip0Jz">
<node concept="3I6s7M" id="7edv2S3dba0" role="3I6sU7">
<node concept="3A8Hvi" id="7edv2S3db9X" role="3I6s78">
<node concept="a7P8L" id="7edv2S3dba5" role="3A8wtg">
<ref role="a7OzE" node="7edv2S3db8m" resolve="L" />
</node>
<node concept="a7P8L" id="7edv2S3dbaa" role="3A8w4Q">
<ref role="a7OzE" node="7edv2S3db8v" resolve="R" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="AVZhu" id="44a9n8ErYv2" role="3ArX_J">
<property role="TrG5h" value="unifies_fail" />
<node concept="3Aq9E8" id="44a9n8ErYxt" role="3otmyu">
<node concept="3I6sU6" id="Cn$NxdZfVE" role="3Ip0Jz">
<node concept="3I6s7M" id="Cn$NxdZfVF" role="3I6sU7">
<node concept="3lcGGY" id="44a9n8ErYxx" role="3I6s78">
<node concept="3clFbT" id="44a9n8ErYx_" role="3wWo3s">
<property role="3clFbU" value="false" />
</node>
</node>
</node>
</node>
</node>
<node concept="3Aq93q" id="44a9n8Es4Ki" role="3orSU4">
<property role="3ArMco" value="true" />
<node concept="3NuqgR" id="44a9n8Es4KI" role="3Nuqhd">
<node concept="aZer4" id="44a9n8Es4KJ" role="3XD1gS">
<property role="TrG5h" value="L" />
</node>
<node concept="aZer4" id="44a9n8Es4KS" role="3XD1gS">
<property role="TrG5h" value="R" />
</node>
</node>
<node concept="3I6sU6" id="Cn$NxdZfVl" role="3Ip0Jz">
<node concept="3I6s7M" id="Cn$NxdZfVm" role="3I6sU7">
<node concept="3Aqt3T" id="44a9n8Es4Km" role="3I6s78">
<ref role="3AqCNq" node="44a9n8ErYcT" resolve="unifies" />
<node concept="a7P8L" id="44a9n8Es4L8" role="3AunhB">
<ref role="a7OzE" node="44a9n8Es4KJ" resolve="L" />
</node>
<node concept="a7P8L" id="44a9n8Es4Lg" role="3AunhB">
<ref role="a7OzE" node="44a9n8Es4KS" resolve="R" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="312cEu" id="4rRw8_AtKo0">
<property role="TrG5h" value="VarUnionFind" />
<node concept="2tJIrI" id="4rRw8_AtKoQ" role="jymVt" />