aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJedidiah Barber <contact@jedbarber.id.au>2026-01-19 18:33:53 +1300
committerJedidiah Barber <contact@jedbarber.id.au>2026-01-19 18:33:53 +1300
commitd92265949acc35e78d51fd868da967222e458270 (patch)
tree14cb6fbacf7812e1cd994e9aa2f6b2818c216965 /src
parentcb9ebd037ae470d8034e42b0fb7c2fd074c0a2bd (diff)
Streamlined some Fresh declarations now that it won't affect performance
Diffstat (limited to 'src')
-rw-r--r--src/kompsos-math.adb32
1 files changed, 12 insertions, 20 deletions
diff --git a/src/kompsos-math.adb b/src/kompsos-math.adb
index e4022cf..e74ff60 100644
--- a/src/kompsos-math.adb
+++ b/src/kompsos-math.adb
@@ -191,6 +191,7 @@ package body Kompsos.Math is
One, Two, Three : Goal := This;
X_Var : constant Term := Three.Fresh;
+ Y_Var : constant Term := Three.Fresh;
begin
One.Unify (N_Term, Zero_Term);
GT_Zero (One, M_Term);
@@ -200,13 +201,9 @@ package body Kompsos.Math is
Three.Unify (N_Term, T (Three.Fresh, X_Var));
GT_Zero (Three, X_Var);
- declare
- Y_Var : constant Term := Three.Fresh;
- begin
- Three.Unify (M_Term, T (Three.Fresh, Y_Var));
- GT_Zero (Three, Y_Var);
- Three.Conjunct (LT_Length_Access, X_Var & Y_Var);
- end;
+ Three.Unify (M_Term, T (Three.Fresh, Y_Var));
+ GT_Zero (Three, Y_Var);
+ Three.Conjunct (LT_Length_Access, X_Var & Y_Var);
return Disjunct (One & Two & Three);
end LT_Length;
@@ -256,6 +253,7 @@ package body Kompsos.Math is
One, Two, Three : Goal := This;
X_Var : constant Term := Three.Fresh;
+ Y_Var : constant Term := Three.Fresh;
begin
One.Unify (N_Term, Zero_Term);
One.Unify (M_Term, Zero_Term);
@@ -265,13 +263,9 @@ package body Kompsos.Math is
Three.Unify (N_Term, T (Three.Fresh, X_Var));
GT_Zero (Three, X_Var);
- declare
- Y_Var : constant Term := Three.Fresh;
- begin
- Three.Unify (M_Term, T (Three.Fresh, Y_Var));
- GT_Zero (Three, Y_Var);
- Three.Conjunct (EQ_Length_Access, X_Var & Y_Var);
- end;
+ Three.Unify (M_Term, T (Three.Fresh, Y_Var));
+ GT_Zero (Three, Y_Var);
+ Three.Conjunct (EQ_Length_Access, X_Var & Y_Var);
return Disjunct (One & Two & Three);
end EQ_Length;
@@ -337,16 +331,14 @@ package body Kompsos.Math is
M_Term : Term renames Inputs (2);
One, Two : Goal := This;
+
+ X_Var : constant Term := Two.Fresh;
begin
LT_Length (One, Inputs);
EQ_Length (Two, Inputs);
- declare
- X_Var : constant Term := Two.Fresh;
- begin
- GT_Zero (Two, X_Var);
- Add (Two, N_Term & X_Var & M_Term);
- end;
+ GT_Zero (Two, X_Var);
+ Add (Two, N_Term & X_Var & M_Term);
return Disjunct (One, Two);
end LT;