aboutsummaryrefslogtreecommitdiff
path: root/src/kompsos.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/kompsos.adb')
-rw-r--r--src/kompsos.adb20
1 files changed, 6 insertions, 14 deletions
diff --git a/src/kompsos.adb b/src/kompsos.adb
index 7054714..080683b 100644
--- a/src/kompsos.adb
+++ b/src/kompsos.adb
@@ -254,17 +254,9 @@ package body Kompsos is
function Fresh
(This : in out Goal'Class)
- return Term
- is
- My_Var : constant Variable := Next_Gen;
+ return Term is
begin
- return My_Term : constant Term := Term (T (My_Var)) do
- This.Actual := new Goal_Component'(
- (Kind => Fresh_Node,
- Counter => 1,
- Frs_Goal => Goal (This),
- Frs_Var => My_Var));
- end return;
+ return Term (T (Next_Gen));
end Fresh;
@@ -557,8 +549,8 @@ package body Kompsos is
when Null_Term | Atom_Term =>
return This;
when Var_Term =>
- if Subst.LVars.Contains (This.Var) and then Subst.Subst.Contains (This.Var) then
- return Subst.Subst.Element (This.Var).Resolve (Subst);
+ if Subst.Actual.Contains (This.Var) then
+ return Subst.Actual.Element (This.Var).Resolve (Subst);
else
return This;
end if;
@@ -572,10 +564,10 @@ package body Kompsos is
(Subst : in State)
return Term is
begin
- if Subst.LVars.Is_Empty then
+ if Subst.Actual.Is_Empty then
return Empty_Term;
else
- return Resolve (Term (T (Subst.LVars.First_Element)), Subst);
+ return Subst.Actual.First_Element.Resolve (Subst);
end if;
end Resolve_First;