TRUE. ``` $l = a ``` ``` Starting on goal: $l = [a | true] Goal arity 3: $l = [a | true] nextSolution Push $l ("[]"(ice, cream)) Resetting variable $l ("[]"(ice, cream)) Push $a (_1) Push $b (_2) Resetting variable $b (_2) Resetting variable $a (_1) Push _1 ($l) Resetting variable _1 ($l) Push $x (_3) Push $y (_4) Resetting variable $y (_4) Resetting variable $x (_3) Push _3 ($l) Resetting variable _3 ($l) Push $x (_5) Push $y (_6) Resetting variable $y (_6) Resetting variable $x (_5) Push _5 ($l) Resetting variable _5 ($l) Push $list (_7) Push $x (_8) Push $cond (_9) Push $c (_10) Resetting variable $c (_10) Resetting variable $cond (_9) Resetting variable $x (_8) Resetting variable $list (_7) Push _7 ($l) Push _8 (a) Push _9 (true) Got clause: _7 = [_8 | _9] Clause unifies to: $l = [a | true] gdash: _10 = new collector Goal arity 4: _10 = new collector Push $x (_11) Resetting variable $x (_11) Push _11 (_10) Got clause: _11 = new collector Clause unifies to: _10 = new collector Clause is native. Push _10 () gdash: [forall_impl ([a , true , ])] or true Goal arity 3: [forall_impl ([a , true , ])] or true Push $a (_12) Push $b (_13) Resetting variable $b (_13) Resetting variable $a (_12) Push _12 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Resetting variable _12 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Push $x (_14) Push $y (_15) Resetting variable $y (_15) Resetting variable $x (_14) Push _14 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Resetting variable _14 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Push $x (_16) Push $y (_17) Resetting variable $y (_17) Resetting variable $x (_16) Push _16 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Resetting variable _16 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Push $list (_18) Push $x (_19) Push $cond (_20) Push $c (_21) Resetting variable $c (_21) Resetting variable $cond (_20) Resetting variable $x (_19) Resetting variable $list (_18) Push _18 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Resetting variable _18 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Push $e (_22) Push $c (_23) Push $list (_24) Resetting variable $list (_24) Resetting variable $c (_23) Resetting variable $e (_22) Push _22 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Resetting variable _22 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Push $a (_25) Push $b (_26) Resetting variable $b (_26) Resetting variable $a (_25) Push _25 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Push _26 (true) Got clause: _25 or _26 Clause unifies to: [forall_impl ([a , true , ])] or true gdash: forall_impl ([a , true , ]) Goal arity 2: forall_impl ([a , true , ]) Push $x (_27) Push $collector (_28) Resetting variable $collector (_28) Resetting variable $x (_27) Push $x (_29) Resetting variable $x (_29) Push $x (_30) Resetting variable $x (_30) Push $x (_31) Resetting variable $x (_31) Push $x (_32) Resetting variable $x (_32) Push $x (_33) Push $cond (_34) Push $c (_35) Resetting variable $c (_35) Resetting variable $cond (_34) Resetting variable $x (_33) Push _33 (a) Push _34 (true) Push _35 () Got clause: forall_impl ([_33 , _34 , _35]) Clause unifies to: forall_impl ([a , true , ]) gdash: true Goal arity 0: true Got clause: true Clause unifies to: true gdash: saveTo ([a , ]) Goal arity 2: saveTo ([a , ]) Push $x (_36) Push $collector (_37) Resetting variable $collector (_37) Resetting variable $x (_36) Push _36 (a) Push _37 () Got clause: saveTo ([_36 , _37]) Clause unifies to: saveTo ([a , ]) Clause is native. gdash: false Goal arity 0: false Resetting variable _37 () Resetting variable _36 (a) Push $x (_38) Resetting variable $x (_38) Push $x (_39) Resetting variable $x (_39) Push $x (_40) Resetting variable $x (_40) Push $x (_41) Resetting variable $x (_41) Push $x (_42) Push $cond (_43) Push $c (_44) Resetting variable $c (_44) Resetting variable $cond (_43) Resetting variable $x (_42) Push $c (_45) Push $a (_46) Push $b (_47) Resetting variable $b (_47) Resetting variable $a (_46) Resetting variable $c (_45) Push $x (_48) Resetting variable $x (_48) Push $x (_49) Resetting variable $x (_49) Resetting variable _35 () Resetting variable _34 (true) Resetting variable _33 (a) Push $c (_50) Push $a (_51) Push $b (_52) Resetting variable $b (_52) Resetting variable $a (_51) Resetting variable $c (_50) Push $x (_53) Resetting variable $x (_53) Push $x (_54) Resetting variable $x (_54) Resetting variable _26 (true) Resetting variable _25 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Push $a (_55) Push $b (_56) Resetting variable $b (_56) Resetting variable $a (_55) Push _55 ("[]"(forall_impl, "()"("[]"(a, ",", true, ",", )))) Push _56 (true) Got clause: _55 or _56 Clause unifies to: [forall_impl ([a , true , ])] or true gdash: true Goal arity 0: true Got clause: true Clause unifies to: true gdash: $l = retrieve () Goal arity 4: $l = retrieve () Push $x (_57) Resetting variable $x (_57) Push _57 ($l) Resetting variable _57 ($l) Push $x (_58) Push $retrieve (_59) Push $collector (_60) Resetting variable $collector (_60) Resetting variable $retrieve (_59) Resetting variable $x (_58) Push _58 ($l) Push _59 (retrieve) Push _60 () Got clause: _58 = _59 (_60) Clause unifies to: $l = retrieve () Clause is native. Push $l ("[]"(a)) gdash: - SUCCESS! solution found in step 55``` [done] 92 ms