aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
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;