[PPL-devel] [GIT] ppl/ppl(floating_point): Implemented tests (from test04 to test08).

Roberto Amadini r.amadini at virgilio.it
Wed Sep 16 17:18:33 CEST 2009


Module: ppl/ppl
Branch: floating_point
Commit: 3bdc87446af3286556472b791dea891c02cbc124
URL:    http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=3bdc87446af3286556472b791dea891c02cbc124

Author: Roberto Amadini <r.amadini at virgilio.it>
Date:   Wed Sep 16 17:09:43 2009 +0200

Implemented tests (from test04 to test08).

---

 tests/Floating_Point_Expression/affineimage3.cc |   71 +++++++++++------------
 1 files changed, 35 insertions(+), 36 deletions(-)

diff --git a/tests/Floating_Point_Expression/affineimage3.cc b/tests/Floating_Point_Expression/affineimage3.cc
index 8be7386..8438ea3 100644
--- a/tests/Floating_Point_Expression/affineimage3.cc
+++ b/tests/Floating_Point_Expression/affineimage3.cc
@@ -115,7 +115,7 @@ bool test03() {
 }
 
 
-// tests affine_image(B, [1, 1]*B + [-1, 3])
+// tests affine_image(B, [1, 1]*B + [-1.5, 3.5])
 bool test04() {
   Variable A(0);
   Variable B(1);
@@ -124,24 +124,23 @@ bool test04() {
   oc1.add_constraint(A <= 2);
   oc1.add_constraint(A - B <= 3);
   oc1.add_constraint(B <= 2);
-  fl_r_oc free_term(-1);
-  free_term.join_assign(3);
+  fl_r_oc free_term(-1.5);
+  free_term.join_assign(3.5);
   Linear_Form<fl_r_oc> l(B);
   l += free_term;
   oc1.affine_image(B, l);
-  print_constraints(oc1, "*** oc1.affine_image(B, B + [-1, 3]) ***");
-  oc1.ascii_dump();
+  print_constraints(oc1, "*** oc1.affine_image(B, B + [-1.5, 3.5]) ***");
+
   Octagonal_Shape<float> known_result(3);
- /* known_result.add_constraint(A >= -2);
-  known_result.add_constraint(B <= 2);
-  known_result.add_constraint(B - A <= 4);
+  known_result.add_constraint(A <= 2);
+  known_result.add_constraint(2*B <= 11);
+  known_result.add_constraint(2*B + 2*A <= 15);
+  known_result.add_constraint(-2*B + 2*A <= 9);
   print_constraints(known_result, "*** known_result ***");
 
   bool ok = (oc1 == known_result);
 
   return ok;
-  */
-  return true;
 }
 
 // tests affine_image(A, [1, 1]*B + [-2, 0.5])
@@ -159,18 +158,18 @@ bool test05() {
   l += free_term;
   oc1.affine_image(A, l);
   print_constraints(oc1, "*** oc1.affine_image(A, B + [-2, 0.5]) ***");
-  oc1.ascii_dump();
+
   Octagonal_Shape<double> known_result(3);
- /* known_result.add_constraint(A >= -2);
+  known_result.add_constraint(2*A <= 5);
   known_result.add_constraint(B <= 2);
-  known_result.add_constraint(B - A <= 4);
+  known_result.add_constraint(B - A <= 2);
+  known_result.add_constraint(2*A - 2*B <= 1);
+  known_result.add_constraint(2*A + 2*B <= 9);
   print_constraints(known_result, "*** known_result ***");
 
   bool ok = (oc1 == known_result);
 
   return ok;
-  */
-  return true;
 }
 
 // tests affine_image(B, [1, 1]*A + [-3, 1])
@@ -188,18 +187,18 @@ bool test06() {
   l += free_term;
   oc1.affine_image(B, l);
   print_constraints(oc1, "*** oc1.affine_image(B, A + [-3, 1]) ***");
-  oc1.ascii_dump();
+
   Octagonal_Shape<double> known_result(3);
- /* known_result.add_constraint(A >= -2);
-  known_result.add_constraint(B <= 2);
-  known_result.add_constraint(B - A <= 4);
+  known_result.add_constraint(A <= 2);
+  known_result.add_constraint(B <= 3);
+  known_result.add_constraint(B - A <= 1);
+  known_result.add_constraint(A - B <= 3);
+  known_result.add_constraint(A + B <= 5);
   print_constraints(known_result, "*** known_result ***");
 
   bool ok = (oc1 == known_result);
 
   return ok;
-  */
-  return true;
 }
 
 // tests affine_image(B, [-1, -1]*A + [0, 4])
@@ -217,18 +216,18 @@ bool test07() {
   l += free_term;
   oc1.affine_image(B, l);
   print_constraints(oc1, "*** oc1.affine_image(B, -A + [0, 4]) ***");
-  oc1.ascii_dump();
+
   Octagonal_Shape<float> known_result(3);
- /* known_result.add_constraint(A >= -2);
-  known_result.add_constraint(B <= 2);
-  known_result.add_constraint(B - A <= 4);
+  known_result.add_constraint(A <= 2);
+  known_result.add_constraint(-B <= 2);
+  known_result.add_constraint(-B - A <= 0);
+  known_result.add_constraint(A - B <= 4);
+  known_result.add_constraint(A + B <= 4);
   print_constraints(known_result, "*** known_result ***");
 
   bool ok = (oc1 == known_result);
 
   return ok;
-  */
-  return true;
 }
 
 // tests affine_image(A, [-1, -1]*B + [0, 2])
@@ -246,23 +245,23 @@ bool test08() {
   l += free_term;
   oc1.affine_image(A, l);
   print_constraints(oc1, "*** oc1.affine_image(A, -B + [0, 2]) ***");
-  oc1.ascii_dump();
+
   Octagonal_Shape<float> known_result(3);
- /* known_result.add_constraint(A >= -2);
+  known_result.add_constraint(-A <= 2);
   known_result.add_constraint(B <= 2);
-  known_result.add_constraint(B - A <= 4);
+  known_result.add_constraint(-B - A <= 0);
+  known_result.add_constraint(-A + B <= 4);
+  known_result.add_constraint(A + B <= 2);
   print_constraints(known_result, "*** known_result ***");
 
   bool ok = (oc1 == known_result);
 
   return ok;
-  */
-  return true;
 }
 
 // tests affine_image(A, i1*A + i2*B + i3)
 bool test09() {
-  
+
   Variable A(0);
   Variable B(1);
 
@@ -281,7 +280,7 @@ bool test09() {
   i2.join_assign(2);
   db_r_oc i1(1);
   i1.join_assign(1);
- 
+
   Linear_Form<db_r_oc> l(i3);
 
   l += i1*Linear_Form<db_r_oc>(A);
@@ -309,11 +308,11 @@ bool test09() {
 BEGIN_MAIN
   DO_TEST(test01);
   DO_TEST(test02);
-  DO_TEST(test03); /* FIXME: Not yet tested 
+  DO_TEST(test03);
   DO_TEST(test04);
   DO_TEST(test05);
   DO_TEST(test06);
   DO_TEST(test07);
-  DO_TEST(test08); */
+  DO_TEST(test08);
   DO_TEST(test09);
 END_MAIN




More information about the PPL-devel mailing list