@tuprolog/arg2p 0.14.2 → 0.16.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/2p-unify.js CHANGED
@@ -19,61 +19,67 @@
19
19
  'use strict';
20
20
  //region block: imports
21
21
  var imul = Math.imul;
22
- var KProperty1 = kotlin_kotlin.$_$.h7;
23
- var getPropertyCallableRef = kotlin_kotlin.$_$.x5;
24
- var asSequence = kotlin_kotlin.$_$.z1;
25
- var plus = kotlin_kotlin.$_$.k8;
26
- var map = kotlin_kotlin.$_$.g8;
27
- var Unit_instance = kotlin_kotlin.$_$.l1;
28
- var Companion_getInstance = kotlin_it_unibo_tuprolog_core.$_$.v;
29
- var ArrayList_init_$Create$ = kotlin_kotlin.$_$.d;
30
- var toCollection = kotlin_kotlin.$_$.t8;
31
- var Pair = kotlin_kotlin.$_$.oa;
22
+ var protoOf = kotlin_kotlin.$_$.f7;
23
+ var getBooleanHashCode = kotlin_kotlin.$_$.o6;
24
+ var initMetadataForClass = kotlin_kotlin.$_$.s6;
25
+ var toString = kotlin_kotlin.$_$.i7;
26
+ var hashCode = kotlin_kotlin.$_$.r6;
27
+ var equals = kotlin_kotlin.$_$.l6;
28
+ var KProperty1 = kotlin_kotlin.$_$.a8;
29
+ var getPropertyCallableRef = kotlin_kotlin.$_$.p6;
30
+ var asSequence = kotlin_kotlin.$_$.f2;
31
+ var plus = kotlin_kotlin.$_$.d9;
32
+ var map = kotlin_kotlin.$_$.z8;
33
+ var Unit_instance = kotlin_kotlin.$_$.o;
34
+ var Companion_getInstance = kotlin_it_unibo_tuprolog_core.$_$.o;
35
+ var ArrayList_init_$Create$ = kotlin_kotlin.$_$.q;
36
+ var toCollection = kotlin_kotlin.$_$.m9;
37
+ var constructCallableReference = kotlin_kotlin.$_$.j6;
38
+ var Pair = kotlin_kotlin.$_$.lb;
39
+ var lazy = kotlin_kotlin.$_$.ub;
40
+ var asSequence_0 = kotlin_kotlin.$_$.g2;
41
+ var THROW_CCE = kotlin_kotlin.$_$.nb;
32
42
  var VOID = kotlin_kotlin.$_$.b;
33
- var lazy = kotlin_kotlin.$_$.wa;
34
- var protoOf = kotlin_kotlin.$_$.n6;
35
- var asSequence_0 = kotlin_kotlin.$_$.a2;
36
- var THROW_CCE = kotlin_kotlin.$_$.qa;
37
- var initMetadataForClass = kotlin_kotlin.$_$.a6;
38
43
  var Companion_instance = kotlin_it_unibo_tuprolog_utils.$_$.a;
39
- var Triple = kotlin_kotlin.$_$.sa;
44
+ var Triple = kotlin_kotlin.$_$.pb;
40
45
  var Some = kotlin_it_unibo_tuprolog_utils.$_$.l;
41
- var zip = kotlin_kotlin.$_$.a9;
42
- var flatMap = kotlin_kotlin.$_$.x7;
43
- var sequenceOf = kotlin_kotlin.$_$.n8;
44
- var to = kotlin_kotlin.$_$.cb;
45
- var sequenceOf_0 = kotlin_kotlin.$_$.m8;
46
- var initMetadataForCompanion = kotlin_kotlin.$_$.b6;
47
- var toString = kotlin_kotlin.$_$.q6;
48
- var getKClass = kotlin_kotlin.$_$.f7;
49
- var ClassCastException_init_$Create$ = kotlin_kotlin.$_$.o;
50
- var Companion_getInstance_0 = kotlin_it_unibo_tuprolog_core.$_$.u;
46
+ var zip = kotlin_kotlin.$_$.t9;
47
+ var flatMap = kotlin_kotlin.$_$.q8;
48
+ var sequenceOf = kotlin_kotlin.$_$.g9;
49
+ var defineProp = kotlin_kotlin.$_$.k6;
50
+ var sequenceOf_0 = kotlin_kotlin.$_$.f9;
51
+ var initMetadataForCompanion = kotlin_kotlin.$_$.t6;
52
+ var getKClass = kotlin_kotlin.$_$.y7;
53
+ var ClassCastException_init_$Create$ = kotlin_kotlin.$_$.b1;
54
+ var IllegalArgumentException_init_$Create$ = kotlin_kotlin.$_$.e1;
55
+ var to = kotlin_kotlin.$_$.zb;
56
+ var Companion_getInstance_0 = kotlin_it_unibo_tuprolog_core.$_$.n;
51
57
  var castTo = kotlin_it_unibo_tuprolog_utils.$_$.e;
52
- var defineProp = kotlin_kotlin.$_$.t5;
53
- var TermConvertible = kotlin_it_unibo_tuprolog_core.$_$.u1;
58
+ var TermConvertible = kotlin_it_unibo_tuprolog_core.$_$.v1;
54
59
  var Castable = kotlin_it_unibo_tuprolog_utils.$_$.f;
55
- var collectionSizeOrDefault = kotlin_kotlin.$_$.c2;
56
- var ArrayList_init_$Create$_0 = kotlin_kotlin.$_$.c;
57
- var IllegalArgumentException_init_$Create$ = kotlin_kotlin.$_$.q;
58
- var initMetadataForInterface = kotlin_kotlin.$_$.c6;
60
+ var collectionSizeOrDefault = kotlin_kotlin.$_$.j2;
61
+ var ArrayList_init_$Create$_0 = kotlin_kotlin.$_$.p;
62
+ var initMetadataForInterface = kotlin_kotlin.$_$.u6;
59
63
  //endregion
60
64
  //region block: pre-declaration
65
+ initMetadataForClass(Mgu, 'Mgu');
66
+ initMetadataForClass(Merge, 'Merge');
61
67
  function mguWithOccurCheck(term1, term2, occurCheckEnabled, $super) {
62
68
  occurCheckEnabled = occurCheckEnabled === VOID ? true : occurCheckEnabled;
63
- return $super === VOID ? this.r1i(term1, term2, occurCheckEnabled) : $super.r1i.call(this, term1, term2, occurCheckEnabled);
69
+ return $super === VOID ? this.e1k(term1, term2, occurCheckEnabled) : $super.e1k.call(this, term1, term2, occurCheckEnabled);
64
70
  }
65
71
  function mgu(term1, term2) {
66
- return this.r1i(term1, term2, true);
72
+ return this.e1k(term1, term2, true);
67
73
  }
68
74
  function matchWithOccurCheck(term1, term2, occurCheckEnabled) {
69
- return !(this.r1i(term1, term2, occurCheckEnabled) === Companion_getInstance().failed());
75
+ return !(this.e1k(term1, term2, occurCheckEnabled) === Companion_getInstance().failed());
70
76
  }
71
77
  function match(term1, term2) {
72
78
  return this.matchWithOccurCheck(term1, term2, true);
73
79
  }
74
80
  function unifyWithOccurCheck(term1, term2, occurCheckEnabled) {
75
- var substitution = this.r1i(term1, term2, occurCheckEnabled);
76
- return substitution.k11() ? null : term1.getSubstituted(substitution, []);
81
+ var substitution = this.e1k(term1, term2, occurCheckEnabled);
82
+ return substitution.t11() ? null : term1.getSubstituted(substitution, []);
77
83
  }
78
84
  function unify(term1, term2) {
79
85
  return this.unifyWithOccurCheck(term1, term2, true);
@@ -87,6 +93,8 @@
87
93
  initMetadataForClass(Equation, 'Equation', VOID, VOID, [TermConvertible, Castable]);
88
94
  initMetadataForClass(Identity, 'Identity', VOID, Equation);
89
95
  initMetadataForClass(Assignment, 'Assignment', VOID, Equation);
96
+ initMetadataForClass(LeftAssignment, 'LeftAssignment', VOID, Assignment);
97
+ initMetadataForClass(RightAssignment, 'RightAssignment', VOID, Assignment);
90
98
  initMetadataForClass(Comparison, 'Comparison', VOID, Equation);
91
99
  initMetadataForClass(Contradiction, 'Contradiction', VOID, Equation);
92
100
  initMetadataForCompanion(Companion);
@@ -94,33 +102,87 @@
94
102
  initMetadataForClass(Unificator$Companion$strict$1, VOID, VOID, AbstractUnificator);
95
103
  initMetadataForCompanion(Companion_0);
96
104
  //endregion
105
+ function Mgu(term1, term2, occurCheckEnabled) {
106
+ this.c1j_1 = term1;
107
+ this.d1j_1 = term2;
108
+ this.e1j_1 = occurCheckEnabled;
109
+ }
110
+ protoOf(Mgu).toString = function () {
111
+ return 'Mgu(term1=' + this.c1j_1.toString() + ', term2=' + this.d1j_1.toString() + ', occurCheckEnabled=' + this.e1j_1 + ')';
112
+ };
113
+ protoOf(Mgu).hashCode = function () {
114
+ var result = this.c1j_1.hashCode();
115
+ result = imul(result, 31) + this.d1j_1.hashCode() | 0;
116
+ result = imul(result, 31) + getBooleanHashCode(this.e1j_1) | 0;
117
+ return result;
118
+ };
119
+ protoOf(Mgu).equals = function (other) {
120
+ if (this === other)
121
+ return true;
122
+ if (!(other instanceof Mgu))
123
+ return false;
124
+ if (!this.c1j_1.equals(other.c1j_1))
125
+ return false;
126
+ if (!this.d1j_1.equals(other.d1j_1))
127
+ return false;
128
+ if (!(this.e1j_1 === other.e1j_1))
129
+ return false;
130
+ return true;
131
+ };
132
+ function Merge(substitution1, substitution2, occurCheckEnabled) {
133
+ this.f1j_1 = substitution1;
134
+ this.g1j_1 = substitution2;
135
+ this.h1j_1 = occurCheckEnabled;
136
+ }
137
+ protoOf(Merge).toString = function () {
138
+ return 'Merge(substitution1=' + toString(this.f1j_1) + ', substitution2=' + toString(this.g1j_1) + ', occurCheckEnabled=' + this.h1j_1 + ')';
139
+ };
140
+ protoOf(Merge).hashCode = function () {
141
+ var result = hashCode(this.f1j_1);
142
+ result = imul(result, 31) + hashCode(this.g1j_1) | 0;
143
+ result = imul(result, 31) + getBooleanHashCode(this.h1j_1) | 0;
144
+ return result;
145
+ };
146
+ protoOf(Merge).equals = function (other) {
147
+ if (this === other)
148
+ return true;
149
+ if (!(other instanceof Merge))
150
+ return false;
151
+ if (!equals(this.f1j_1, other.f1j_1))
152
+ return false;
153
+ if (!equals(this.g1j_1, other.g1j_1))
154
+ return false;
155
+ if (!(this.h1j_1 === other.h1j_1))
156
+ return false;
157
+ return true;
158
+ };
97
159
  function _get_contextEquations__x0dd77($this) {
98
- var tmp0 = $this.a1i_1;
160
+ var tmp0 = $this.j1j_1;
99
161
  var tmp = KProperty1;
100
162
  // Inline function 'kotlin.getValue' call
101
- getPropertyCallableRef('contextEquations', 1, tmp, AbstractUnificator$_get_contextEquations_$ref_7ajcte(), null);
102
- return tmp0.e2();
163
+ /* dead property reference removed */
164
+ return tmp0.f2();
103
165
  }
104
166
  function occurrenceCheck($this, variable, term) {
105
167
  var tmp;
106
- if (term.bw()) {
107
- tmp = $this.b1i(variable, term);
108
- } else if (term.lv()) {
109
- var tmp0 = term.hv();
110
- var tmp$ret$1;
168
+ if (term.kw()) {
169
+ tmp = $this.k1j(variable, term);
170
+ } else if (term.uv()) {
171
+ var tmp0 = term.qv();
172
+ var tmp$ret$0;
111
173
  $l$block: {
112
174
  // Inline function 'kotlin.sequences.any' call
113
- var _iterator__ex2g4s = tmp0.p();
114
- while (_iterator__ex2g4s.s()) {
115
- var element = _iterator__ex2g4s.t();
175
+ var _iterator__ex2g4s = tmp0.n();
176
+ while (_iterator__ex2g4s.q()) {
177
+ var element = _iterator__ex2g4s.r();
116
178
  if (occurrenceCheck($this, variable, element)) {
117
- tmp$ret$1 = true;
179
+ tmp$ret$0 = true;
118
180
  break $l$block;
119
181
  }
120
182
  }
121
- tmp$ret$1 = false;
183
+ tmp$ret$0 = false;
122
184
  }
123
- tmp = tmp$ret$1;
185
+ tmp = tmp$ret$0;
124
186
  } else {
125
187
  tmp = false;
126
188
  }
@@ -128,7 +190,7 @@
128
190
  }
129
191
  function equationsFor($this, term1, term2) {
130
192
  var tmp = Companion_instance_0;
131
- return tmp.c1i(term1, term2, AbstractUnificator$checkTermsEquality$ref($this));
193
+ return tmp.l1j(term1, term2, AbstractUnificator$checkTermsEquality$ref($this));
132
194
  }
133
195
  function equationsFor_0($this, substitution1, substitution2) {
134
196
  var tmp = Companion_instance_0;
@@ -146,7 +208,7 @@
146
208
  }
147
209
  while (inductionVariable < exceptIndex);
148
210
  var inductionVariable_0 = exceptIndex + 1 | 0;
149
- var last = equations.v();
211
+ var last = equations.t();
150
212
  if (inductionVariable_0 < last)
151
213
  do {
152
214
  var i_0 = inductionVariable_0;
@@ -156,36 +218,37 @@
156
218
  while (inductionVariable_0 < last);
157
219
  return changed._v;
158
220
  }
159
- function mgu_0($this, equations, occurCheckEnabled) {
221
+ function mgu_0($this, request, equations, occurCheckEnabled) {
160
222
  var changed = true;
161
223
  while (changed) {
162
224
  changed = false;
163
- var eqIterator = equations.b4();
164
- while (eqIterator.s()) {
165
- var eq = eqIterator.t();
166
- if (eq.h1i()) {
225
+ var eqIterator = equations.c4();
226
+ while (eqIterator.q()) {
227
+ var eq = $this.m1j(request, eqIterator.r());
228
+ if (eq.r1j()) {
167
229
  return Companion_getInstance().failed();
168
- } else if (eq.i1i()) {
169
- eqIterator.c3();
230
+ } else if (eq.s1j()) {
231
+ eqIterator.d3();
170
232
  changed = true;
171
- } else if (eq.p1i()) {
172
- var assignment = eq.k1i();
173
- if (occurCheckEnabled && occurrenceCheck($this, assignment.n1i_1, eq.g1i())) {
233
+ } else if (eq.b1k()) {
234
+ var assignment = eq.castToAssignment();
235
+ if (occurCheckEnabled && occurrenceCheck($this, assignment.z1j(), assignment.a1k())) {
174
236
  return Companion_getInstance().failed();
175
237
  } else {
176
- changed = changed || applySubstitutionToEquations($this, assignment.toSubstitution(), equations, eqIterator.r3());
238
+ changed = changed || applySubstitutionToEquations($this, assignment.y1j(), equations, eqIterator.s3());
177
239
  }
178
- } else if (eq.j1i()) {
179
- eqIterator.c3();
180
- var _iterator__ex2g4s = equationsFor($this, eq.f1i(), eq.g1i()).p();
181
- insertion: while (_iterator__ex2g4s.s()) {
182
- var it = _iterator__ex2g4s.t();
183
- if (it.i1i())
184
- continue insertion;
185
- else if (it.h1i())
240
+ } else if (eq.t1j()) {
241
+ eqIterator.d3();
242
+ var _iterator__ex2g4s = equationsFor($this, eq.p1j(), eq.q1j()).n();
243
+ $l$loop: while (_iterator__ex2g4s.q()) {
244
+ var it = _iterator__ex2g4s.r();
245
+ var subEq = it.r1j() || it.s1j() ? $this.m1j(request, it) : it;
246
+ if (subEq.s1j())
247
+ continue $l$loop;
248
+ else if (subEq.r1j())
186
249
  return Companion_getInstance().failed();
187
250
  else {
188
- eqIterator.u3(it);
251
+ eqIterator.v3(subEq);
189
252
  }
190
253
  }
191
254
  changed = true;
@@ -195,14 +258,14 @@
195
258
  // Inline function 'kotlin.collections.filter' call
196
259
  // Inline function 'kotlin.collections.filterTo' call
197
260
  var destination = ArrayList_init_$Create$();
198
- var _iterator__ex2g4s_0 = equations.p();
199
- while (_iterator__ex2g4s_0.s()) {
200
- var element = _iterator__ex2g4s_0.t();
201
- if (element.p1i()) {
202
- destination.m(element);
261
+ var _iterator__ex2g4s_0 = equations.n();
262
+ while (_iterator__ex2g4s_0.q()) {
263
+ var element = _iterator__ex2g4s_0.r();
264
+ if (element.b1k()) {
265
+ destination.k(element);
203
266
  }
204
267
  }
205
- return toSubstitution(destination);
268
+ return $this.c1k(request, toSubstitution(destination));
206
269
  }
207
270
  function newDeque($this, items) {
208
271
  // Inline function 'kotlin.collections.arrayListOf' call
@@ -211,91 +274,87 @@
211
274
  }
212
275
  function AbstractUnificator$contextEquations$delegate$lambda(this$0) {
213
276
  return function () {
214
- return toEquations(this$0.h8());
277
+ return toEquations(this$0.k8());
215
278
  };
216
279
  }
217
280
  function AbstractUnificator$_get_contextEquations_$ref_7ajcte() {
218
- return function (p0) {
281
+ return constructCallableReference(function (p0) {
219
282
  return _get_contextEquations__x0dd77(p0);
220
- };
283
+ }, 1, 0, 26);
221
284
  }
222
285
  function AbstractUnificator$checkTermsEquality$ref(p0) {
223
- var l = function (_this__u8e3s4, p0_0) {
224
- return p0.b1i(_this__u8e3s4, p0_0);
225
- };
226
- l.callableName = 'checkTermsEquality';
227
- return l;
286
+ return constructCallableReference(function (p0_0, p1) {
287
+ return p0.k1j(p0_0, p1);
288
+ }, 2, 0, 27, 'checkTermsEquality', [p0]);
228
289
  }
229
290
  function AbstractUnificator$equationsFor$lambda(it) {
230
291
  // Inline function 'kotlin.collections.toPair' call
231
- return new Pair(it.d2(), it.e2());
232
- }
233
- function AbstractUnificator$checkTermsEquality$ref_0(p0) {
234
- var l = function (_this__u8e3s4, p0_0) {
235
- return p0.b1i(_this__u8e3s4, p0_0);
236
- };
237
- l.callableName = 'checkTermsEquality';
238
- return l;
292
+ return new Pair(it.e2(), it.f2());
239
293
  }
240
294
  function applySubstitutionToEquations$handleIndex($equations, $substitution, this$0, changed, i) {
241
- if ($equations.w(i).h1i() || $equations.w(i).i1i())
295
+ if ($equations.u(i).r1j() || $equations.u(i).s1j())
242
296
  return Unit_instance;
243
- var currentEq = $equations.w(i);
297
+ var currentEq = $equations.u(i);
244
298
  var _destruct__k2r9zo = currentEq.apply($substitution).toPair();
245
- var newLhs = _destruct__k2r9zo.zc();
246
- var newRhs = _destruct__k2r9zo.ad();
247
- if (!currentEq.f1i().equals(newLhs) || !currentEq.g1i().equals(newRhs)) {
299
+ var newLhs = _destruct__k2r9zo.dd();
300
+ var newRhs = _destruct__k2r9zo.ed();
301
+ if (!currentEq.p1j().equals(newLhs) || !currentEq.q1j().equals(newRhs)) {
248
302
  var tmp = Companion_instance_0;
249
- $equations.z2(i, tmp.q1i(newLhs, newRhs, AbstractUnificator$checkTermsEquality$ref_0(this$0)));
303
+ $equations.a3(i, tmp.d1k(newLhs, newRhs, AbstractUnificator$checkTermsEquality$ref(this$0)));
250
304
  changed._v = true;
251
305
  }
252
306
  }
253
307
  function AbstractUnificator(context) {
254
- context = context === VOID ? Companion_getInstance().empty() : context;
255
- this.z1h_1 = context;
308
+ this.i1j_1 = context;
256
309
  var tmp = this;
257
- tmp.a1i_1 = lazy(AbstractUnificator$contextEquations$delegate$lambda(this));
310
+ tmp.j1j_1 = lazy(AbstractUnificator$contextEquations$delegate$lambda(this));
258
311
  }
259
- protoOf(AbstractUnificator).h8 = function () {
260
- return this.z1h_1;
312
+ protoOf(AbstractUnificator).k8 = function () {
313
+ return this.i1j_1;
314
+ };
315
+ protoOf(AbstractUnificator).c1k = function (request, result) {
316
+ return result;
261
317
  };
262
- protoOf(AbstractUnificator).r1i = function (term1, term2, occurCheckEnabled) {
263
- if (this.h8().k11())
318
+ protoOf(AbstractUnificator).m1j = function (request, equation) {
319
+ return equation;
320
+ };
321
+ protoOf(AbstractUnificator).e1k = function (term1, term2, occurCheckEnabled) {
322
+ if (this.k8().t11())
264
323
  return Companion_getInstance().failed();
265
324
  var equations = newDeque(this, plus(asSequence_0(_get_contextEquations__x0dd77(this)), equationsFor(this, term1, term2)));
266
- return mgu_0(this, equations, occurCheckEnabled);
325
+ return mgu_0(this, new Mgu(term1, term2, occurCheckEnabled), equations, occurCheckEnabled);
267
326
  };
268
327
  protoOf(AbstractUnificator).mguWithOccurCheck = function (term1, term2, occurCheckEnabled, $super) {
269
328
  return this.mguWithOccurCheck(term1, term2, occurCheckEnabled, ($super == null ? true : $super instanceof AbstractUnificator) ? $super : THROW_CCE());
270
329
  };
271
- protoOf(AbstractUnificator).s1i = function (substitution1, substitution2, occurCheckEnabled) {
272
- if (this.h8().k11() || substitution1.k11() || substitution2.k11())
330
+ protoOf(AbstractUnificator).f1k = function (substitution1, substitution2, occurCheckEnabled) {
331
+ if (this.k8().t11() || substitution1.t11() || substitution2.t11())
273
332
  return Companion_getInstance().failed();
274
333
  if (!occurCheckEnabled) {
275
- var quickMerge = this.h8().plus(substitution1).plus(substitution2);
276
- if (quickMerge.j11()) {
334
+ var quickMerge = this.k8().plus(substitution1).plus(substitution2);
335
+ if (quickMerge.s11()) {
277
336
  return quickMerge;
278
337
  }
279
338
  }
280
339
  var equations = newDeque(this, plus(asSequence_0(_get_contextEquations__x0dd77(this)), equationsFor_0(this, substitution1, substitution2)));
281
- return mgu_0(this, equations, occurCheckEnabled);
340
+ return mgu_0(this, new Merge(substitution1, substitution2, occurCheckEnabled), equations, occurCheckEnabled);
282
341
  };
283
342
  protoOf(AbstractUnificator).mergeWithOccurCheck = function (substitution1, substitution2, occurCheckEnabled) {
284
- return this.s1i(substitution1, substitution2, occurCheckEnabled);
343
+ return this.f1k(substitution1, substitution2, occurCheckEnabled);
285
344
  };
286
345
  function CachedUnificator(decorated, cacheCapacity) {
287
- this.t1i_1 = decorated;
288
- this.u1i_1 = Companion_instance.up(cacheCapacity);
346
+ this.g1k_1 = decorated;
347
+ this.h1k_1 = Companion_instance.dq(cacheCapacity);
289
348
  }
290
- protoOf(CachedUnificator).r1i = function (term1, term2, occurCheckEnabled) {
349
+ protoOf(CachedUnificator).e1k = function (term1, term2, occurCheckEnabled) {
291
350
  var mguRequest = new Triple(term1, term2, occurCheckEnabled);
292
- var cached = this.u1i_1.h2(mguRequest);
351
+ var cached = this.h1k_1.i2(mguRequest);
293
352
  var tmp;
294
353
  if (cached instanceof Some) {
295
- tmp = cached.xp_1;
354
+ tmp = cached.gq_1;
296
355
  } else {
297
- var mguResult = this.t1i_1.r1i(term1, term2, occurCheckEnabled);
298
- this.u1i_1.vp(mguRequest, mguResult);
356
+ var mguResult = this.g1k_1.e1k(term1, term2, occurCheckEnabled);
357
+ this.h1k_1.eq(mguRequest, mguResult);
299
358
  tmp = mguResult;
300
359
  }
301
360
  return tmp;
@@ -303,123 +362,105 @@
303
362
  protoOf(CachedUnificator).mguWithOccurCheck = function (term1, term2, occurCheckEnabled, $super) {
304
363
  return this.mguWithOccurCheck(term1, term2, occurCheckEnabled, ($super == null ? true : $super instanceof CachedUnificator) ? $super : THROW_CCE());
305
364
  };
306
- protoOf(CachedUnificator).s1i = function (substitution1, substitution2, occurCheckEnabled) {
365
+ protoOf(CachedUnificator).f1k = function (substitution1, substitution2, occurCheckEnabled) {
307
366
  var mguRequest = new Triple(substitution1, substitution2, occurCheckEnabled);
308
- var cached = this.u1i_1.h2(mguRequest);
367
+ var cached = this.h1k_1.i2(mguRequest);
309
368
  var tmp;
310
369
  if (cached instanceof Some) {
311
- tmp = cached.xp_1;
370
+ tmp = cached.gq_1;
312
371
  } else {
313
- var mguResult = this.t1i_1.mergeWithOccurCheck(substitution1, substitution2, occurCheckEnabled);
314
- this.u1i_1.vp(mguRequest, mguResult);
372
+ var mguResult = this.g1k_1.mergeWithOccurCheck(substitution1, substitution2, occurCheckEnabled);
373
+ this.h1k_1.eq(mguRequest, mguResult);
315
374
  tmp = mguResult;
316
375
  }
317
376
  return tmp;
318
377
  };
319
378
  protoOf(CachedUnificator).mergeWithOccurCheck = function (substitution1, substitution2, occurCheckEnabled) {
320
- return this.s1i(substitution1, substitution2, occurCheckEnabled);
379
+ return this.f1k(substitution1, substitution2, occurCheckEnabled);
321
380
  };
322
381
  function allOfLists($this, lhs, rhs, equalityChecker) {
323
- var tmp = zip(lhs.unfold(), rhs.unfold());
324
- return flatMap(tmp, Equation$Companion$allOfLists$lambda(equalityChecker));
382
+ var tmp;
383
+ if (equalityChecker === VOID) {
384
+ tmp = Term$equals$ref();
385
+ } else {
386
+ tmp = equalityChecker;
387
+ }
388
+ equalityChecker = tmp;
389
+ var tmp_0 = zip(lhs.unfold(), rhs.unfold());
390
+ return flatMap(tmp_0, Equation$Companion$allOfLists$lambda(equalityChecker));
325
391
  }
326
392
  function allOfTuples($this, lhs, rhs, equalityChecker) {
327
- var tmp = zip(lhs.unfold(), rhs.unfold());
328
- return flatMap(tmp, Equation$Companion$allOfTuples$lambda(equalityChecker));
393
+ var tmp;
394
+ if (equalityChecker === VOID) {
395
+ tmp = Term$equals$ref();
396
+ } else {
397
+ tmp = equalityChecker;
398
+ }
399
+ equalityChecker = tmp;
400
+ var tmp_0 = zip(lhs.unfold(), rhs.unfold());
401
+ return flatMap(tmp_0, Equation$Companion$allOfTuples$lambda(equalityChecker));
329
402
  }
330
403
  function Term$equals$ref() {
331
- var l = function (p0, p1) {
404
+ return constructCallableReference(function (p0, p1) {
332
405
  return p0.equals(p1);
333
- };
334
- l.callableName = 'equals';
335
- return l;
336
- }
337
- function Term$equals$ref_0() {
338
- var l = function (p0, p1) {
339
- return p0.equals(p1);
340
- };
341
- l.callableName = 'equals';
342
- return l;
343
- }
344
- function Term$equals$ref_1() {
345
- var l = function (p0, p1) {
346
- return p0.equals(p1);
347
- };
348
- l.callableName = 'equals';
349
- return l;
406
+ }, 2, 0, 28, 'equals');
350
407
  }
351
408
  function Equation$Companion$from$lambda($equalityChecker) {
352
409
  return function (it) {
353
- return Companion_instance_0.v1i(it, $equalityChecker);
410
+ return Companion_instance_0.i1k(it, $equalityChecker);
354
411
  };
355
412
  }
356
- function Term$equals$ref_2() {
357
- var l = function (p0, p1) {
358
- return p0.equals(p1);
359
- };
360
- l.callableName = 'equals';
361
- return l;
362
- }
363
- function Term$equals$ref_3() {
364
- var l = function (p0, p1) {
365
- return p0.equals(p1);
366
- };
367
- l.callableName = 'equals';
368
- return l;
369
- }
370
- function Term$equals$ref_4() {
371
- var l = function (p0, p1) {
372
- return p0.equals(p1);
373
- };
374
- l.callableName = 'equals';
375
- return l;
376
- }
377
413
  function Equation$Companion$allOfLists$lambda($equalityChecker) {
378
414
  return function (_destruct__k2r9zo) {
379
- var l = _destruct__k2r9zo.zc();
380
- var r = _destruct__k2r9zo.ad();
381
- return l.sv() && r.sv() ? sequenceOf(Companion_instance_0.q1i(l.castToCons().lx(), r.castToCons().lx(), $equalityChecker)) : l.rv() && r.rv() ? sequenceOf(Companion_instance_0.q1i(l.castToList(), r.castToList(), $equalityChecker)) : Companion_instance_0.c1i(l, r, $equalityChecker);
415
+ var l = _destruct__k2r9zo.dd();
416
+ var r = _destruct__k2r9zo.ed();
417
+ return l.bw() && r.bw() ? sequenceOf(Companion_instance_0.d1k(l.castToCons().ux(), r.castToCons().ux(), $equalityChecker)) : l.aw() && r.aw() ? sequenceOf(Companion_instance_0.d1k(l.castToList(), r.castToList(), $equalityChecker)) : Companion_instance_0.l1j(l, r, $equalityChecker);
382
418
  };
383
419
  }
384
420
  function Equation$Companion$allOfTuples$lambda($equalityChecker) {
385
421
  return function (_destruct__k2r9zo) {
386
- var l = _destruct__k2r9zo.zc();
387
- var r = _destruct__k2r9zo.ad();
388
- return l.qv() && r.qv() ? sequenceOf(Companion_instance_0.q1i(l.castToTuple().zw(), r.castToTuple().zw(), $equalityChecker)) : Companion_instance_0.c1i(l, r, $equalityChecker);
389
- };
390
- }
391
- function Term$equals$ref_5() {
392
- var l = function (p0, p1) {
393
- return p0.equals(p1);
422
+ var l = _destruct__k2r9zo.dd();
423
+ var r = _destruct__k2r9zo.ed();
424
+ return l.zv() && r.zv() ? sequenceOf(Companion_instance_0.d1k(l.castToTuple().ix(), r.castToTuple().ix(), $equalityChecker)) : Companion_instance_0.l1j(l, r, $equalityChecker);
394
425
  };
395
- l.callableName = 'equals';
396
- return l;
397
426
  }
398
427
  function Equation$Companion$allOf$lambda($equalityChecker) {
399
428
  return function (it) {
400
- return Companion_instance_0.v1i(it, $equalityChecker);
429
+ return Companion_instance_0.i1k(it, $equalityChecker);
401
430
  };
402
431
  }
403
432
  function Identity(lhs, rhs) {
404
433
  Equation.call(this, lhs, rhs);
405
- this.y1i_1 = lhs;
406
- this.z1i_1 = rhs;
434
+ this.l1k_1 = lhs;
435
+ this.m1k_1 = rhs;
407
436
  }
408
- protoOf(Identity).f1i = function () {
409
- return this.y1i_1;
437
+ protoOf(Identity).p1j = function () {
438
+ return this.l1k_1;
410
439
  };
411
- protoOf(Identity).g1i = function () {
412
- return this.z1i_1;
440
+ protoOf(Identity).q1j = function () {
441
+ return this.m1k_1;
413
442
  };
414
- protoOf(Identity).i1i = function () {
443
+ protoOf(Identity).s1j = function () {
415
444
  return true;
416
445
  };
446
+ protoOf(Identity).n1k = function () {
447
+ return this;
448
+ };
449
+ protoOf(Identity).asIdentity = function () {
450
+ return this.n1k();
451
+ };
452
+ protoOf(Identity).o1k = function (lhs, rhs) {
453
+ return this.p1k(lhs, rhs);
454
+ };
455
+ protoOf(Identity).p1k = function (lhs, rhs) {
456
+ return new Identity(lhs, rhs);
457
+ };
417
458
  protoOf(Identity).toString = function () {
418
- return 'Identity(lhs=' + this.y1i_1.toString() + ', rhs=' + this.z1i_1.toString() + ')';
459
+ return 'Identity(lhs=' + this.l1k_1.toString() + ', rhs=' + this.m1k_1.toString() + ')';
419
460
  };
420
461
  protoOf(Identity).hashCode = function () {
421
- var result = this.y1i_1.hashCode();
422
- result = imul(result, 31) + this.z1i_1.hashCode() | 0;
462
+ var result = this.l1k_1.hashCode();
463
+ result = imul(result, 31) + this.m1k_1.hashCode() | 0;
423
464
  return result;
424
465
  };
425
466
  protoOf(Identity).equals = function (other) {
@@ -427,77 +468,194 @@
427
468
  return true;
428
469
  if (!(other instanceof Identity))
429
470
  return false;
430
- if (!this.y1i_1.equals(other.y1i_1))
471
+ if (!this.l1k_1.equals(other.l1k_1))
431
472
  return false;
432
- if (!this.z1i_1.equals(other.z1i_1))
473
+ if (!this.m1k_1.equals(other.m1k_1))
433
474
  return false;
434
475
  return true;
435
476
  };
436
477
  function Assignment(lhs, rhs) {
437
478
  Equation.call(this, lhs, rhs);
438
- this.n1i_1 = lhs;
439
- this.o1i_1 = rhs;
479
+ this.w1j_1 = lhs;
480
+ this.x1j_1 = rhs;
440
481
  }
441
- protoOf(Assignment).f1i = function () {
442
- return this.n1i_1;
482
+ protoOf(Assignment).p1j = function () {
483
+ return this.w1j_1;
443
484
  };
444
- protoOf(Assignment).g1i = function () {
445
- return this.o1i_1;
485
+ protoOf(Assignment).q1j = function () {
486
+ return this.x1j_1;
487
+ };
488
+ protoOf(Assignment).b1k = function () {
489
+ return true;
490
+ };
491
+ protoOf(Assignment).t1k = function () {
492
+ return this;
493
+ };
494
+ protoOf(Assignment).asAssignment = function () {
495
+ return this.t1k();
496
+ };
497
+ protoOf(Assignment).u1k = function () {
498
+ return new Pair(this.z1j(), this.a1k());
499
+ };
500
+ protoOf(Assignment).toAssignmentPair = function () {
501
+ return this.u1k();
502
+ };
503
+ protoOf(Assignment).y1j = function () {
504
+ return Companion_getInstance().unifier(this.z1j(), this.a1k());
446
505
  };
447
506
  protoOf(Assignment).toSubstitution = function () {
448
- return Companion_getInstance().unifier(this.n1i_1, this.o1i_1);
507
+ return this.y1j();
508
+ };
509
+ function LeftAssignment(lhs, rhs) {
510
+ Assignment.call(this, lhs, rhs);
511
+ this.z1k_1 = lhs;
512
+ this.a1l_1 = rhs;
513
+ this.b1l_1 = this.z1k_1;
514
+ this.c1l_1 = this.a1l_1;
515
+ }
516
+ protoOf(LeftAssignment).p1j = function () {
517
+ return this.z1k_1;
449
518
  };
450
- protoOf(Assignment).c1j = function () {
451
- return to(this.n1i_1, this.o1i_1);
519
+ protoOf(LeftAssignment).q1j = function () {
520
+ return this.a1l_1;
452
521
  };
453
- protoOf(Assignment).toPair = function () {
454
- return this.c1j();
522
+ protoOf(LeftAssignment).z1j = function () {
523
+ return this.b1l_1;
455
524
  };
456
- protoOf(Assignment).p1i = function () {
525
+ protoOf(LeftAssignment).a1k = function () {
526
+ return this.c1l_1;
527
+ };
528
+ protoOf(LeftAssignment).q1k = function () {
457
529
  return true;
458
530
  };
459
- protoOf(Assignment).a1j = function () {
531
+ protoOf(LeftAssignment).d1l = function () {
460
532
  return this;
461
533
  };
462
- protoOf(Assignment).toString = function () {
463
- return 'Assignment(lhs=' + this.n1i_1.toString() + ', rhs=' + this.o1i_1.toString() + ')';
534
+ protoOf(LeftAssignment).asLeftAssignment = function () {
535
+ return this.d1l();
536
+ };
537
+ protoOf(LeftAssignment).o1k = function (lhs, rhs) {
538
+ return this.e1l(lhs.castToVar(), rhs);
539
+ };
540
+ protoOf(LeftAssignment).f1l = function () {
541
+ return new Pair(this.z1k_1, this.a1l_1);
542
+ };
543
+ protoOf(LeftAssignment).toPair = function () {
544
+ return this.f1l();
464
545
  };
465
- protoOf(Assignment).hashCode = function () {
466
- var result = this.n1i_1.hashCode();
467
- result = imul(result, 31) + this.o1i_1.hashCode() | 0;
546
+ protoOf(LeftAssignment).e1l = function (lhs, rhs) {
547
+ return new LeftAssignment(lhs, rhs);
548
+ };
549
+ protoOf(LeftAssignment).toString = function () {
550
+ return 'LeftAssignment(lhs=' + this.z1k_1.toString() + ', rhs=' + this.a1l_1.toString() + ')';
551
+ };
552
+ protoOf(LeftAssignment).hashCode = function () {
553
+ var result = this.z1k_1.hashCode();
554
+ result = imul(result, 31) + this.a1l_1.hashCode() | 0;
468
555
  return result;
469
556
  };
470
- protoOf(Assignment).equals = function (other) {
557
+ protoOf(LeftAssignment).equals = function (other) {
471
558
  if (this === other)
472
559
  return true;
473
- if (!(other instanceof Assignment))
560
+ if (!(other instanceof LeftAssignment))
474
561
  return false;
475
- if (!this.n1i_1.equals(other.n1i_1))
562
+ if (!this.z1k_1.equals(other.z1k_1))
476
563
  return false;
477
- if (!this.o1i_1.equals(other.o1i_1))
564
+ if (!this.a1l_1.equals(other.a1l_1))
565
+ return false;
566
+ return true;
567
+ };
568
+ function RightAssignment(lhs, rhs) {
569
+ Assignment.call(this, lhs, rhs);
570
+ this.k1l_1 = lhs;
571
+ this.l1l_1 = rhs;
572
+ this.m1l_1 = this.l1l_1;
573
+ this.n1l_1 = this.k1l_1;
574
+ }
575
+ protoOf(RightAssignment).p1j = function () {
576
+ return this.k1l_1;
577
+ };
578
+ protoOf(RightAssignment).q1j = function () {
579
+ return this.l1l_1;
580
+ };
581
+ protoOf(RightAssignment).z1j = function () {
582
+ return this.m1l_1;
583
+ };
584
+ protoOf(RightAssignment).a1k = function () {
585
+ return this.n1l_1;
586
+ };
587
+ protoOf(RightAssignment).r1k = function () {
588
+ return true;
589
+ };
590
+ protoOf(RightAssignment).o1l = function () {
591
+ return this;
592
+ };
593
+ protoOf(RightAssignment).asRightAssignment = function () {
594
+ return this.o1l();
595
+ };
596
+ protoOf(RightAssignment).o1k = function (lhs, rhs) {
597
+ return this.p1l(lhs, rhs.castToVar());
598
+ };
599
+ protoOf(RightAssignment).f1l = function () {
600
+ return new Pair(this.k1l_1, this.l1l_1);
601
+ };
602
+ protoOf(RightAssignment).toPair = function () {
603
+ return this.f1l();
604
+ };
605
+ protoOf(RightAssignment).p1l = function (lhs, rhs) {
606
+ return new RightAssignment(lhs, rhs);
607
+ };
608
+ protoOf(RightAssignment).toString = function () {
609
+ return 'RightAssignment(lhs=' + this.k1l_1.toString() + ', rhs=' + this.l1l_1.toString() + ')';
610
+ };
611
+ protoOf(RightAssignment).hashCode = function () {
612
+ var result = this.k1l_1.hashCode();
613
+ result = imul(result, 31) + this.l1l_1.hashCode() | 0;
614
+ return result;
615
+ };
616
+ protoOf(RightAssignment).equals = function (other) {
617
+ if (this === other)
618
+ return true;
619
+ if (!(other instanceof RightAssignment))
620
+ return false;
621
+ if (!this.k1l_1.equals(other.k1l_1))
622
+ return false;
623
+ if (!this.l1l_1.equals(other.l1l_1))
478
624
  return false;
479
625
  return true;
480
626
  };
481
627
  function Comparison(lhs, rhs) {
482
628
  Equation.call(this, lhs, rhs);
483
- this.f1j_1 = lhs;
484
- this.g1j_1 = rhs;
629
+ this.s1l_1 = lhs;
630
+ this.t1l_1 = rhs;
485
631
  }
486
- protoOf(Comparison).f1i = function () {
487
- return this.f1j_1;
632
+ protoOf(Comparison).p1j = function () {
633
+ return this.s1l_1;
488
634
  };
489
- protoOf(Comparison).g1i = function () {
490
- return this.g1j_1;
635
+ protoOf(Comparison).q1j = function () {
636
+ return this.t1l_1;
491
637
  };
492
- protoOf(Comparison).j1i = function () {
638
+ protoOf(Comparison).t1j = function () {
493
639
  return true;
494
640
  };
641
+ protoOf(Comparison).u1l = function () {
642
+ return this;
643
+ };
644
+ protoOf(Comparison).asComparison = function () {
645
+ return this.u1l();
646
+ };
647
+ protoOf(Comparison).o1k = function (lhs, rhs) {
648
+ return this.p1k(lhs, rhs);
649
+ };
650
+ protoOf(Comparison).p1k = function (lhs, rhs) {
651
+ return new Comparison(lhs, rhs);
652
+ };
495
653
  protoOf(Comparison).toString = function () {
496
- return 'Comparison(lhs=' + this.f1j_1.toString() + ', rhs=' + this.g1j_1.toString() + ')';
654
+ return 'Comparison(lhs=' + this.s1l_1.toString() + ', rhs=' + this.t1l_1.toString() + ')';
497
655
  };
498
656
  protoOf(Comparison).hashCode = function () {
499
- var result = this.f1j_1.hashCode();
500
- result = imul(result, 31) + this.g1j_1.hashCode() | 0;
657
+ var result = this.s1l_1.hashCode();
658
+ result = imul(result, 31) + this.t1l_1.hashCode() | 0;
501
659
  return result;
502
660
  };
503
661
  protoOf(Comparison).equals = function (other) {
@@ -505,32 +663,50 @@
505
663
  return true;
506
664
  if (!(other instanceof Comparison))
507
665
  return false;
508
- if (!this.f1j_1.equals(other.f1j_1))
666
+ if (!this.s1l_1.equals(other.s1l_1))
509
667
  return false;
510
- if (!this.g1j_1.equals(other.g1j_1))
668
+ if (!this.t1l_1.equals(other.t1l_1))
511
669
  return false;
512
670
  return true;
513
671
  };
514
672
  function Contradiction(lhs, rhs) {
515
673
  Equation.call(this, lhs, rhs);
516
- this.j1j_1 = lhs;
517
- this.k1j_1 = rhs;
674
+ this.x1l_1 = lhs;
675
+ this.y1l_1 = rhs;
518
676
  }
519
- protoOf(Contradiction).f1i = function () {
520
- return this.j1j_1;
677
+ protoOf(Contradiction).p1j = function () {
678
+ return this.x1l_1;
521
679
  };
522
- protoOf(Contradiction).g1i = function () {
523
- return this.k1j_1;
680
+ protoOf(Contradiction).q1j = function () {
681
+ return this.y1l_1;
524
682
  };
525
- protoOf(Contradiction).h1i = function () {
683
+ protoOf(Contradiction).r1j = function () {
526
684
  return true;
527
685
  };
686
+ protoOf(Contradiction).z1l = function () {
687
+ return this;
688
+ };
689
+ protoOf(Contradiction).asContradiction = function () {
690
+ return this.z1l();
691
+ };
692
+ protoOf(Contradiction).o1k = function (lhs, rhs) {
693
+ return this.p1k(lhs, rhs);
694
+ };
695
+ protoOf(Contradiction).y1j = function () {
696
+ return Companion_getInstance().failed();
697
+ };
698
+ protoOf(Contradiction).toSubstitution = function () {
699
+ return this.y1j();
700
+ };
701
+ protoOf(Contradiction).p1k = function (lhs, rhs) {
702
+ return new Contradiction(lhs, rhs);
703
+ };
528
704
  protoOf(Contradiction).toString = function () {
529
- return 'Contradiction(lhs=' + this.j1j_1.toString() + ', rhs=' + this.k1j_1.toString() + ')';
705
+ return 'Contradiction(lhs=' + this.x1l_1.toString() + ', rhs=' + this.y1l_1.toString() + ')';
530
706
  };
531
707
  protoOf(Contradiction).hashCode = function () {
532
- var result = this.j1j_1.hashCode();
533
- result = imul(result, 31) + this.k1j_1.hashCode() | 0;
708
+ var result = this.x1l_1.hashCode();
709
+ result = imul(result, 31) + this.y1l_1.hashCode() | 0;
534
710
  return result;
535
711
  };
536
712
  protoOf(Contradiction).equals = function (other) {
@@ -538,29 +714,29 @@
538
714
  return true;
539
715
  if (!(other instanceof Contradiction))
540
716
  return false;
541
- if (!this.j1j_1.equals(other.j1j_1))
717
+ if (!this.x1l_1.equals(other.x1l_1))
542
718
  return false;
543
- if (!this.k1j_1.equals(other.k1j_1))
719
+ if (!this.y1l_1.equals(other.y1l_1))
544
720
  return false;
545
721
  return true;
546
722
  };
547
723
  function Companion() {
548
724
  }
549
- protoOf(Companion).q1i = function (lhs, rhs, equalityChecker) {
725
+ protoOf(Companion).d1k = function (lhs, rhs, equalityChecker) {
550
726
  var tmp;
551
- if (lhs.bw() && rhs.bw()) {
727
+ if (lhs.kw() && rhs.kw()) {
552
728
  var tmp_0;
553
729
  if (equalityChecker(lhs, rhs)) {
554
730
  tmp_0 = new Identity(lhs, rhs);
555
731
  } else {
556
- tmp_0 = new Assignment(lhs.castToVar(), rhs);
732
+ tmp_0 = new LeftAssignment(lhs.castToVar(), rhs);
557
733
  }
558
734
  tmp = tmp_0;
559
- } else if (lhs.bw()) {
560
- tmp = new Assignment(lhs.castToVar(), rhs);
561
- } else if (rhs.bw()) {
562
- tmp = new Assignment(rhs.castToVar(), lhs);
563
- } else if (lhs.ew() && rhs.ew()) {
735
+ } else if (lhs.kw()) {
736
+ tmp = new LeftAssignment(lhs.castToVar(), rhs);
737
+ } else if (rhs.kw()) {
738
+ tmp = new RightAssignment(lhs, rhs.castToVar());
739
+ } else if (lhs.nw() && rhs.nw()) {
564
740
  var tmp_1;
565
741
  if (equalityChecker(lhs, rhs)) {
566
742
  tmp_1 = new Identity(lhs, rhs);
@@ -568,13 +744,13 @@
568
744
  tmp_1 = new Contradiction(lhs, rhs);
569
745
  }
570
746
  tmp = tmp_1;
571
- } else if (lhs.ew() || rhs.ew()) {
747
+ } else if (lhs.nw() || rhs.nw()) {
572
748
  tmp = new Contradiction(lhs, rhs);
573
- } else if (lhs.lv() && rhs.lv()) {
749
+ } else if (lhs.uv() && rhs.uv()) {
574
750
  var lhsStruct = lhs.castToStruct();
575
751
  var rhsStruct = rhs.castToStruct();
576
752
  var tmp_2;
577
- if (!(lhsStruct.zu() === rhsStruct.zu()) || !(lhsStruct.fv() === rhsStruct.fv())) {
753
+ if (!(lhsStruct.iv() === rhsStruct.iv()) || !(lhsStruct.ov() === rhsStruct.ov())) {
578
754
  tmp_2 = new Contradiction(lhsStruct, rhsStruct);
579
755
  } else {
580
756
  tmp_2 = new Comparison(lhsStruct, rhsStruct);
@@ -593,192 +769,286 @@
593
769
  tmp = equalityChecker;
594
770
  }
595
771
  equalityChecker = tmp;
596
- return $super === VOID ? this.q1i(lhs, rhs, equalityChecker) : $super.q1i.call(this, lhs, rhs, equalityChecker);
772
+ return $super === VOID ? this.d1k(lhs, rhs, equalityChecker) : $super.d1k.call(this, lhs, rhs, equalityChecker);
597
773
  };
598
- protoOf(Companion).l1j = function (pair, equalityChecker) {
599
- return this.q1i(pair.first, pair.second, equalityChecker);
774
+ protoOf(Companion).a1m = function (pair, equalityChecker) {
775
+ return this.d1k(pair.first, pair.second, equalityChecker);
600
776
  };
601
777
  protoOf(Companion).ofPair = function (pair, equalityChecker, $super) {
602
778
  var tmp;
603
779
  if (equalityChecker === VOID) {
604
- tmp = Term$equals$ref_0();
780
+ tmp = Term$equals$ref();
605
781
  } else {
606
782
  tmp = equalityChecker;
607
783
  }
608
784
  equalityChecker = tmp;
609
- return $super === VOID ? this.l1j(pair, equalityChecker) : $super.l1j.call(this, pair, equalityChecker);
785
+ return $super === VOID ? this.a1m(pair, equalityChecker) : $super.a1m.call(this, pair, equalityChecker);
610
786
  };
611
- protoOf(Companion).m1j = function (pairs, equalityChecker) {
787
+ protoOf(Companion).b1m = function (pairs, equalityChecker) {
612
788
  return flatMap(pairs, Equation$Companion$from$lambda(equalityChecker));
613
789
  };
614
790
  protoOf(Companion).fromSequence = function (pairs, equalityChecker, $super) {
615
791
  var tmp;
616
792
  if (equalityChecker === VOID) {
617
- tmp = Term$equals$ref_1();
793
+ tmp = Term$equals$ref();
618
794
  } else {
619
795
  tmp = equalityChecker;
620
796
  }
621
797
  equalityChecker = tmp;
622
- return $super === VOID ? this.m1j(pairs, equalityChecker) : $super.m1j.call(this, pairs, equalityChecker);
798
+ return $super === VOID ? this.b1m(pairs, equalityChecker) : $super.b1m.call(this, pairs, equalityChecker);
623
799
  };
624
- protoOf(Companion).n1j = function (pairs, equalityChecker) {
625
- return this.m1j(asSequence_0(pairs), equalityChecker);
800
+ protoOf(Companion).c1m = function (pairs, equalityChecker) {
801
+ return this.b1m(asSequence_0(pairs), equalityChecker);
626
802
  };
627
803
  protoOf(Companion).fromIterable = function (pairs, equalityChecker, $super) {
628
804
  var tmp;
629
805
  if (equalityChecker === VOID) {
630
- tmp = Term$equals$ref_2();
806
+ tmp = Term$equals$ref();
631
807
  } else {
632
808
  tmp = equalityChecker;
633
809
  }
634
810
  equalityChecker = tmp;
635
- return $super === VOID ? this.n1j(pairs, equalityChecker) : $super.n1j.call(this, pairs, equalityChecker);
811
+ return $super === VOID ? this.c1m(pairs, equalityChecker) : $super.c1m.call(this, pairs, equalityChecker);
636
812
  };
637
- protoOf(Companion).o1j = function (pairs, equalityChecker) {
638
- return this.m1j(sequenceOf_0(pairs.slice()), equalityChecker);
813
+ protoOf(Companion).d1m = function (pairs, equalityChecker) {
814
+ return this.b1m(sequenceOf_0(pairs.slice()), equalityChecker);
639
815
  };
640
816
  protoOf(Companion).from = function (pairs, equalityChecker, $super) {
641
817
  var tmp;
642
818
  if (equalityChecker === VOID) {
643
- tmp = Term$equals$ref_3();
819
+ tmp = Term$equals$ref();
644
820
  } else {
645
821
  tmp = equalityChecker;
646
822
  }
647
823
  equalityChecker = tmp;
648
- return $super === VOID ? this.o1j(pairs, equalityChecker) : $super.o1j.call(this, pairs, equalityChecker);
824
+ return $super === VOID ? this.d1m(pairs, equalityChecker) : $super.d1m.call(this, pairs, equalityChecker);
649
825
  };
650
- protoOf(Companion).v1i = function (pair, equalityChecker) {
651
- return this.c1i(pair.first, pair.second, equalityChecker);
826
+ protoOf(Companion).i1k = function (pair, equalityChecker) {
827
+ return this.l1j(pair.first, pair.second, equalityChecker);
652
828
  };
653
829
  protoOf(Companion).allOfPair = function (pair, equalityChecker, $super) {
654
830
  var tmp;
655
831
  if (equalityChecker === VOID) {
656
- tmp = Term$equals$ref_4();
832
+ tmp = Term$equals$ref();
657
833
  } else {
658
834
  tmp = equalityChecker;
659
835
  }
660
836
  equalityChecker = tmp;
661
- return $super === VOID ? this.v1i(pair, equalityChecker) : $super.v1i.call(this, pair, equalityChecker);
837
+ return $super === VOID ? this.i1k(pair, equalityChecker) : $super.i1k.call(this, pair, equalityChecker);
662
838
  };
663
- protoOf(Companion).c1i = function (lhs, rhs, equalityChecker) {
839
+ protoOf(Companion).l1j = function (lhs, rhs, equalityChecker) {
664
840
  var tmp;
665
- if (lhs.av() && rhs.av()) {
666
- tmp = sequenceOf(this.q1i(lhs, rhs, equalityChecker));
667
- } else if (lhs.rv() && rhs.rv()) {
841
+ if (lhs.jv() && rhs.jv()) {
842
+ tmp = sequenceOf(this.d1k(lhs, rhs, equalityChecker));
843
+ } else if (lhs.aw() && rhs.aw()) {
668
844
  tmp = allOfLists(this, lhs.castToList(), rhs.castToList(), equalityChecker);
669
- } else if (lhs.qv() && rhs.qv()) {
845
+ } else if (lhs.zv() && rhs.zv()) {
670
846
  tmp = allOfTuples(this, lhs.castToTuple(), rhs.castToTuple(), equalityChecker);
671
- } else if (lhs.lv() && rhs.lv()) {
847
+ } else if (lhs.uv() && rhs.uv()) {
672
848
  var lhsStruct = lhs.castToStruct();
673
849
  var rhsStruct = rhs.castToStruct();
674
850
  var tmp_0;
675
- if (lhsStruct.zu() === rhsStruct.zu() && lhsStruct.fv() === rhsStruct.fv()) {
676
- var tmp_1 = zip(lhsStruct.yv(), rhsStruct.yv());
851
+ if (lhsStruct.iv() === rhsStruct.iv() && lhsStruct.ov() === rhsStruct.ov()) {
852
+ var tmp_1 = zip(lhsStruct.hw(), rhsStruct.hw());
677
853
  tmp_0 = flatMap(tmp_1, Equation$Companion$allOf$lambda(equalityChecker));
678
854
  } else {
679
- tmp_0 = sequenceOf(this.q1i(lhs, rhs, equalityChecker));
855
+ tmp_0 = sequenceOf(this.d1k(lhs, rhs, equalityChecker));
680
856
  }
681
857
  tmp = tmp_0;
682
858
  } else {
683
- tmp = sequenceOf(this.q1i(lhs, rhs, equalityChecker));
859
+ tmp = sequenceOf(this.d1k(lhs, rhs, equalityChecker));
684
860
  }
685
861
  return tmp;
686
862
  };
687
863
  protoOf(Companion).allOf = function (lhs, rhs, equalityChecker, $super) {
688
864
  var tmp;
689
865
  if (equalityChecker === VOID) {
690
- tmp = Term$equals$ref_5();
866
+ tmp = Term$equals$ref();
691
867
  } else {
692
868
  tmp = equalityChecker;
693
869
  }
694
870
  equalityChecker = tmp;
695
- return $super === VOID ? this.c1i(lhs, rhs, equalityChecker) : $super.c1i.call(this, lhs, rhs, equalityChecker);
871
+ return $super === VOID ? this.l1j(lhs, rhs, equalityChecker) : $super.l1j.call(this, lhs, rhs, equalityChecker);
696
872
  };
697
873
  var Companion_instance_0;
698
874
  function Companion_getInstance_1() {
699
875
  return Companion_instance_0;
700
876
  }
701
- function Term$equals$ref_6() {
702
- var l = function (p0, p1) {
703
- return p0.equals(p1);
704
- };
705
- l.callableName = 'equals';
706
- return l;
707
- }
708
877
  function Equation(lhs, rhs) {
709
- this.d1i_1 = lhs;
710
- this.e1i_1 = rhs;
878
+ this.n1j_1 = lhs;
879
+ this.o1j_1 = rhs;
711
880
  }
712
- protoOf(Equation).f1i = function () {
713
- return this.d1i_1;
881
+ protoOf(Equation).p1j = function () {
882
+ return this.n1j_1;
714
883
  };
715
- protoOf(Equation).g1i = function () {
716
- return this.e1i_1;
884
+ protoOf(Equation).q1j = function () {
885
+ return this.o1j_1;
717
886
  };
718
- protoOf(Equation).i1i = function () {
887
+ protoOf(Equation).s1j = function () {
719
888
  return false;
720
889
  };
721
- protoOf(Equation).p1i = function () {
890
+ protoOf(Equation).asIdentity = function () {
891
+ return null;
892
+ };
893
+ protoOf(Equation).castToIdentity = function () {
894
+ var tmp0_elvis_lhs = this.asIdentity();
895
+ var tmp;
896
+ if (tmp0_elvis_lhs == null) {
897
+ throw ClassCastException_init_$Create$('Cannot cast ' + toString(this) + ' to ' + getKClass(Identity).e9());
898
+ } else {
899
+ tmp = tmp0_elvis_lhs;
900
+ }
901
+ return tmp;
902
+ };
903
+ protoOf(Equation).b1k = function () {
904
+ return false;
905
+ };
906
+ protoOf(Equation).asAssignment = function () {
907
+ return null;
908
+ };
909
+ protoOf(Equation).castToAssignment = function () {
910
+ var tmp0_elvis_lhs = this.asAssignment();
911
+ var tmp;
912
+ if (tmp0_elvis_lhs == null) {
913
+ throw ClassCastException_init_$Create$('Cannot cast ' + toString(this) + ' to ' + getKClass(Assignment).e9());
914
+ } else {
915
+ tmp = tmp0_elvis_lhs;
916
+ }
917
+ return tmp;
918
+ };
919
+ protoOf(Equation).q1k = function () {
920
+ return false;
921
+ };
922
+ protoOf(Equation).asLeftAssignment = function () {
923
+ return null;
924
+ };
925
+ protoOf(Equation).castToLeftAssignment = function () {
926
+ var tmp0_elvis_lhs = this.asLeftAssignment();
927
+ var tmp;
928
+ if (tmp0_elvis_lhs == null) {
929
+ throw ClassCastException_init_$Create$('Cannot cast ' + toString(this) + ' to ' + getKClass(LeftAssignment).e9());
930
+ } else {
931
+ tmp = tmp0_elvis_lhs;
932
+ }
933
+ return tmp;
934
+ };
935
+ protoOf(Equation).r1k = function () {
722
936
  return false;
723
937
  };
724
- protoOf(Equation).a1j = function () {
938
+ protoOf(Equation).asRightAssignment = function () {
725
939
  return null;
726
940
  };
727
- protoOf(Equation).k1i = function () {
728
- var tmp0_elvis_lhs = this.a1j();
941
+ protoOf(Equation).castToRightAssignment = function () {
942
+ var tmp0_elvis_lhs = this.asRightAssignment();
729
943
  var tmp;
730
944
  if (tmp0_elvis_lhs == null) {
731
- throw ClassCastException_init_$Create$('Cannot cast ' + toString(this) + ' to ' + getKClass(Assignment).b9());
945
+ throw ClassCastException_init_$Create$('Cannot cast ' + toString(this) + ' to ' + getKClass(RightAssignment).e9());
732
946
  } else {
733
947
  tmp = tmp0_elvis_lhs;
734
948
  }
735
949
  return tmp;
736
950
  };
737
- protoOf(Equation).j1i = function () {
951
+ protoOf(Equation).t1j = function () {
738
952
  return false;
739
953
  };
740
- protoOf(Equation).h1i = function () {
954
+ protoOf(Equation).asComparison = function () {
955
+ return null;
956
+ };
957
+ protoOf(Equation).castToComparison = function () {
958
+ var tmp0_elvis_lhs = this.asComparison();
959
+ var tmp;
960
+ if (tmp0_elvis_lhs == null) {
961
+ throw ClassCastException_init_$Create$('Cannot cast ' + toString(this) + ' to ' + getKClass(Comparison).e9());
962
+ } else {
963
+ tmp = tmp0_elvis_lhs;
964
+ }
965
+ return tmp;
966
+ };
967
+ protoOf(Equation).r1j = function () {
741
968
  return false;
742
969
  };
743
- protoOf(Equation).i1h = function () {
744
- return Companion_getInstance_0().of('=', [this.f1i(), this.g1i()]);
970
+ protoOf(Equation).asContradiction = function () {
971
+ return null;
972
+ };
973
+ protoOf(Equation).castToContradiction = function () {
974
+ var tmp0_elvis_lhs = this.asContradiction();
975
+ var tmp;
976
+ if (tmp0_elvis_lhs == null) {
977
+ throw ClassCastException_init_$Create$('Cannot cast ' + toString(this) + ' to ' + getKClass(Contradiction).e9());
978
+ } else {
979
+ tmp = tmp0_elvis_lhs;
980
+ }
981
+ return tmp;
982
+ };
983
+ protoOf(Equation).clone = function (lhs, rhs, $super) {
984
+ lhs = lhs === VOID ? this.p1j() : lhs;
985
+ rhs = rhs === VOID ? this.q1j() : rhs;
986
+ return $super === VOID ? this.o1k(lhs, rhs) : $super.o1k.call(this, lhs, rhs);
987
+ };
988
+ protoOf(Equation).toContradiction = function () {
989
+ return new Contradiction(this.p1j(), this.q1j());
990
+ };
991
+ protoOf(Equation).toAssignmentPair = function () {
992
+ var tmp;
993
+ if (this.p1j().kw()) {
994
+ tmp = to(this.p1j().castToVar(), this.q1j());
995
+ } else if (this.q1j().kw()) {
996
+ tmp = to(this.q1j().castToVar(), this.p1j());
997
+ } else {
998
+ throw IllegalArgumentException_init_$Create$('Equation contains no variables: ' + toString(this));
999
+ }
1000
+ return tmp;
1001
+ };
1002
+ protoOf(Equation).toSubstitution = function () {
1003
+ var tmp;
1004
+ if (this.p1j().kw()) {
1005
+ tmp = Companion_getInstance().unifier(this.p1j().castToVar(), this.q1j());
1006
+ } else if (this.q1j().kw()) {
1007
+ tmp = Companion_getInstance().unifier(this.q1j().castToVar(), this.p1j());
1008
+ } else {
1009
+ throw IllegalArgumentException_init_$Create$('Equation contains no variables: ' + toString(this));
1010
+ }
1011
+ return tmp;
1012
+ };
1013
+ protoOf(Equation).l1i = function () {
1014
+ return Companion_getInstance_0().of('=', [this.p1j(), this.q1j()]);
745
1015
  };
746
1016
  protoOf(Equation).toTerm = function () {
747
- return this.i1h();
1017
+ return this.l1i();
748
1018
  };
749
1019
  protoOf(Equation).toPair = function () {
750
- return new Pair(this.f1i(), this.g1i());
1020
+ return new Pair(this.p1j(), this.q1j());
751
1021
  };
752
1022
  protoOf(Equation).swap = function () {
753
- return Companion_instance_0.of(this.g1i(), this.f1i());
1023
+ return Companion_instance_0.of(this.q1j(), this.p1j());
754
1024
  };
755
- protoOf(Equation).b1j = function (substitution, equalityChecker) {
756
- return Companion_instance_0.q1i(this.f1i().getSubstituted(substitution, []), this.g1i().getSubstituted(substitution, []), equalityChecker);
1025
+ protoOf(Equation).s1k = function (substitution, equalityChecker) {
1026
+ return Companion_instance_0.d1k(this.p1j().getSubstituted(substitution, []), this.q1j().getSubstituted(substitution, []), equalityChecker);
757
1027
  };
758
1028
  protoOf(Equation).apply = function (substitution, equalityChecker, $super) {
759
1029
  var tmp;
760
1030
  if (equalityChecker === VOID) {
761
- tmp = Term$equals$ref_6();
1031
+ tmp = Term$equals$ref();
762
1032
  } else {
763
1033
  tmp = equalityChecker;
764
1034
  }
765
1035
  equalityChecker = tmp;
766
- return $super === VOID ? this.b1j(substitution, equalityChecker) : $super.b1j.call(this, substitution, equalityChecker);
1036
+ return $super === VOID ? this.s1k(substitution, equalityChecker) : $super.s1k.call(this, substitution, equalityChecker);
767
1037
  };
768
1038
  function toEquations(_this__u8e3s4) {
769
1039
  // Inline function 'kotlin.collections.map' call
770
- var this_0 = _this__u8e3s4.f1();
1040
+ var this_0 = _this__u8e3s4.d1();
771
1041
  // Inline function 'kotlin.collections.mapTo' call
772
1042
  var destination = ArrayList_init_$Create$_0(collectionSizeOrDefault(this_0, 10));
773
- var _iterator__ex2g4s = this_0.p();
774
- while (_iterator__ex2g4s.s()) {
775
- var item = _iterator__ex2g4s.t();
1043
+ var _iterator__ex2g4s = this_0.n();
1044
+ while (_iterator__ex2g4s.q()) {
1045
+ var item = _iterator__ex2g4s.r();
776
1046
  // Inline function 'kotlin.collections.component1' call
777
- var variable = item.d2();
1047
+ var variable = item.e2();
778
1048
  // Inline function 'kotlin.collections.component2' call
779
- var term = item.e2();
780
- var tmp$ret$2 = new Assignment(variable, term);
781
- destination.m(tmp$ret$2);
1049
+ var term = item.f2();
1050
+ var tmp$ret$2 = new LeftAssignment(variable, term);
1051
+ destination.k(tmp$ret$2);
782
1052
  }
783
1053
  return destination;
784
1054
  }
@@ -787,39 +1057,26 @@
787
1057
  var tmp_0 = asSequence_0(_this__u8e3s4);
788
1058
  return tmp.ofSequence(map(tmp_0, toSubstitution$lambda));
789
1059
  }
790
- function toAssignmentPair(_this__u8e3s4) {
791
- var tmp;
792
- if (_this__u8e3s4.p1i()) {
793
- tmp = _this__u8e3s4.k1i().c1j();
794
- } else if (_this__u8e3s4.f1i().bw()) {
795
- tmp = to(_this__u8e3s4.f1i().castToVar(), _this__u8e3s4.g1i());
796
- } else if (_this__u8e3s4.g1i().bw()) {
797
- tmp = to(_this__u8e3s4.g1i().castToVar(), _this__u8e3s4.f1i());
798
- } else {
799
- throw IllegalArgumentException_init_$Create$('Equation contains no variables: ' + toString(_this__u8e3s4));
800
- }
801
- return tmp;
802
- }
803
1060
  function toSubstitution$lambda(it) {
804
- return toAssignmentPair(it);
1061
+ return it.toAssignmentPair();
805
1062
  }
806
1063
  function Unificator$Companion$default$delegate$lambda() {
807
1064
  return Companion_getInstance_2().strict();
808
1065
  }
809
1066
  function Unificator$Companion$_get_default_$ref_8i2tx3() {
810
- return function (p0) {
811
- return p0.r1j();
812
- };
1067
+ return constructCallableReference(function (p0) {
1068
+ return p0.g1m();
1069
+ }, 1, 0, 29);
813
1070
  }
814
1071
  function Unificator$Companion$naive$1($context) {
815
1072
  AbstractUnificator.call(this, $context);
816
1073
  }
817
- protoOf(Unificator$Companion$naive$1).b1i = function (first, second) {
1074
+ protoOf(Unificator$Companion$naive$1).k1j = function (first, second) {
818
1075
  var tmp;
819
- if (first.gw() && second.gw()) {
820
- tmp = first.castToInteger().e2().bk(second.castToInteger().e2()) === 0;
821
- } else if (first.fw() && second.fw()) {
822
- tmp = first.castToNumeric().vz().sj(second.castToNumeric().vz()) === 0;
1076
+ if (first.pw() && second.pw()) {
1077
+ tmp = first.castToInteger().f2().kk(second.castToInteger().f2()) === 0;
1078
+ } else if (first.ow() && second.ow()) {
1079
+ tmp = first.castToNumeric().e10().bk(second.castToNumeric().e10()) === 0;
823
1080
  } else {
824
1081
  tmp = first.equals(second);
825
1082
  }
@@ -831,7 +1088,7 @@
831
1088
  function Unificator$Companion$strict$1($context) {
832
1089
  AbstractUnificator.call(this, $context);
833
1090
  }
834
- protoOf(Unificator$Companion$strict$1).b1i = function (first, second) {
1091
+ protoOf(Unificator$Companion$strict$1).k1j = function (first, second) {
835
1092
  return first.equals(second);
836
1093
  };
837
1094
  protoOf(Unificator$Companion$strict$1).mguWithOccurCheck = function (term1, term2, occurCheckEnabled, $super) {
@@ -840,27 +1097,27 @@
840
1097
  function Companion_0() {
841
1098
  Companion_instance_1 = this;
842
1099
  var tmp = this;
843
- tmp.p1j_1 = lazy(Unificator$Companion$default$delegate$lambda);
844
- this.q1j_1 = 32;
1100
+ tmp.e1m_1 = lazy(Unificator$Companion$default$delegate$lambda);
1101
+ this.f1m_1 = 32;
845
1102
  }
846
- protoOf(Companion_0).r1j = function () {
847
- var tmp0 = this.p1j_1;
1103
+ protoOf(Companion_0).g1m = function () {
1104
+ var tmp0 = this.e1m_1;
848
1105
  var tmp = KProperty1;
849
1106
  // Inline function 'kotlin.getValue' call
850
- getPropertyCallableRef('default', 1, tmp, Unificator$Companion$_get_default_$ref_8i2tx3(), null);
851
- return tmp0.e2();
1107
+ /* dead property reference removed */
1108
+ return tmp0.f2();
852
1109
  };
853
1110
  protoOf(Companion_0).mguWith = function (_this__u8e3s4, other) {
854
- return this.r1j().mgu(_this__u8e3s4, other);
1111
+ return this.g1m().mgu(_this__u8e3s4, other);
855
1112
  };
856
1113
  protoOf(Companion_0).matches = function (_this__u8e3s4, other) {
857
- return this.r1j().match(_this__u8e3s4, other);
1114
+ return this.g1m().match(_this__u8e3s4, other);
858
1115
  };
859
1116
  protoOf(Companion_0).unifyWith = function (_this__u8e3s4, other) {
860
- return this.r1j().unify(_this__u8e3s4, other);
1117
+ return this.g1m().unify(_this__u8e3s4, other);
861
1118
  };
862
1119
  protoOf(Companion_0).mergeWith = function (_this__u8e3s4, other) {
863
- return this.r1j().merge(_this__u8e3s4, other);
1120
+ return this.g1m().merge(_this__u8e3s4, other);
864
1121
  };
865
1122
  protoOf(Companion_0).naiveWithContext = function (context) {
866
1123
  return new Unificator$Companion$naive$1(context);
@@ -874,10 +1131,10 @@
874
1131
  protoOf(Companion_0).strict = function () {
875
1132
  return this.strictWithContext(Companion_getInstance().empty());
876
1133
  };
877
- protoOf(Companion_0).w1j = function (other, capacity) {
1134
+ protoOf(Companion_0).l1m = function (other, capacity) {
878
1135
  var tmp;
879
1136
  if (other instanceof CachedUnificator) {
880
- tmp = new CachedUnificator(other.t1i_1, capacity);
1137
+ tmp = new CachedUnificator(other.g1k_1, capacity);
881
1138
  } else {
882
1139
  tmp = new CachedUnificator(other, capacity);
883
1140
  }
@@ -885,7 +1142,7 @@
885
1142
  };
886
1143
  protoOf(Companion_0).cached = function (other, capacity, $super) {
887
1144
  capacity = capacity === VOID ? 32 : capacity;
888
- return $super === VOID ? this.w1j(other, capacity) : $super.w1j.call(this, other, capacity);
1145
+ return $super === VOID ? this.l1m(other, capacity) : $super.l1m.call(this, other, capacity);
889
1146
  };
890
1147
  var Companion_instance_1;
891
1148
  function Companion_getInstance_2() {
@@ -910,22 +1167,46 @@
910
1167
  protoOf(CachedUnificator).unifyWithOccurCheck = unifyWithOccurCheck;
911
1168
  protoOf(CachedUnificator).unify = unify;
912
1169
  protoOf(CachedUnificator).merge = merge;
913
- protoOf(Equation).eq = castTo;
1170
+ protoOf(Equation).nq = castTo;
914
1171
  defineProp(protoOf(Equation), 'lhs', function () {
915
- return this.f1i();
1172
+ return this.p1j();
916
1173
  });
917
1174
  defineProp(protoOf(Equation), 'rhs', function () {
918
- return this.g1i();
1175
+ return this.q1j();
1176
+ });
1177
+ defineProp(protoOf(Equation), 'isIdentity', function () {
1178
+ return this.s1j();
1179
+ });
1180
+ defineProp(protoOf(Equation), 'isAssignment', function () {
1181
+ return this.b1k();
1182
+ });
1183
+ defineProp(protoOf(Equation), 'isLeftAssignment', function () {
1184
+ return this.q1k();
1185
+ });
1186
+ defineProp(protoOf(Equation), 'isRightAssignment', function () {
1187
+ return this.r1k();
1188
+ });
1189
+ defineProp(protoOf(Equation), 'isComparison', function () {
1190
+ return this.t1j();
1191
+ });
1192
+ defineProp(protoOf(Equation), 'isContradiction', function () {
1193
+ return this.r1j();
1194
+ });
1195
+ defineProp(protoOf(Assignment), 'variable', function () {
1196
+ return this.z1j();
1197
+ });
1198
+ defineProp(protoOf(Assignment), 'term', function () {
1199
+ return this.a1k();
919
1200
  });
920
- defineProp(protoOf(Companion_0), 'default', protoOf(Companion_0).r1j);
1201
+ defineProp(protoOf(Companion_0), 'default', protoOf(Companion_0).g1m);
921
1202
  //endregion
922
1203
  //region block: init
923
1204
  Companion_instance_0 = new Companion();
924
1205
  //endregion
925
1206
  //region block: exports
926
1207
  _.$_$ = _.$_$ || {};
927
- _.$_$.a = mguWithOccurCheck;
928
- _.$_$.b = Companion_getInstance_2;
1208
+ _.$_$.a = Companion_getInstance_2;
1209
+ _.$_$.b = mguWithOccurCheck;
929
1210
  _.$_$.c = Unificator;
930
1211
  //endregion
931
1212
  return _;