diff options
| author | Jedidiah Barber <contact@jedbarber.id.au> | 2026-01-17 15:25:17 +1300 |
|---|---|---|
| committer | Jedidiah Barber <contact@jedbarber.id.au> | 2026-01-17 15:25:17 +1300 |
| commit | 8508d8b77106a2586b425df687ddb401cbcf779f (patch) | |
| tree | c989d176d68227c34638bf48259bb634b820d607 /src/kompsos.adb | |
| parent | aa31ebe381d555725cdae2abafa93bac976f1c7e (diff) | |
Removed free logic Variable tracking in States, removed Fresh_Node and Static_Node from Goal graphs
Diffstat (limited to 'src/kompsos.adb')
| -rw-r--r-- | src/kompsos.adb | 20 |
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; |
