|
PPL Configured Java Language Interface
0.12.1
|
00001 /* PPL Java interface: Pointset_Powerset_Octagonal_Shape_mpq_class definition. 00002 Copyright (C) 2001-2010 Roberto Bagnara <bagnara@cs.unipr.it> 00003 Copyright (C) 2010-2012 BUGSENG srl (http://bugseng.com) 00004 00005 This file is part of the Parma Polyhedra Library (PPL). 00006 00007 The PPL is free software; you can redistribute it and/or modify it 00008 under the terms of the GNU General Public License as published by the 00009 Free Software Foundation; either version 3 of the License, or (at your 00010 option) any later version. 00011 00012 The PPL is distributed in the hope that it will be useful, but WITHOUT 00013 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00014 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00015 for more details. 00016 00017 You should have received a copy of the GNU General Public License 00018 along with this program; if not, write to the Free Software Foundation, 00019 Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1307, USA. 00020 00021 For the most up-to-date information see the Parma Polyhedra Library 00022 site: http://bugseng.com/products/ppl/ . */ 00023 00024 package parma_polyhedra_library; 00025 00026 import java.io.Writer; 00027 import java.io.IOException; 00028 00033 public class Pointset_Powerset_Octagonal_Shape_mpq_class extends PPL_Object { 00034 protected native void finalize(); 00035 00036 00037 00038 00039 00040 public Pointset_Powerset_Octagonal_Shape_mpq_class(long num_dimensions, 00041 Degenerate_Element kind) { 00042 build_cpp_object(num_dimensions, kind); 00043 } 00044 00045 private Pointset_Powerset_Octagonal_Shape_mpq_class() { 00046 } 00047 00048 00049 00050 00051 00052 public Pointset_Powerset_Octagonal_Shape_mpq_class(Pointset_Powerset_Octagonal_Shape_mpq_class y) { 00053 build_cpp_object(y); 00054 } 00055 00056 public Pointset_Powerset_Octagonal_Shape_mpq_class(Octagonal_Shape_mpq_class y) { 00057 build_cpp_object(y); 00058 } 00059 00060 00061 00062 00063 00064 00065 public Pointset_Powerset_Octagonal_Shape_mpq_class(Pointset_Powerset_Octagonal_Shape_mpq_class y, Complexity_Class complexity) { 00066 build_cpp_object(y, complexity); 00067 } 00068 00069 public Pointset_Powerset_Octagonal_Shape_mpq_class(Octagonal_Shape_mpq_class y, Complexity_Class complexity) { 00070 build_cpp_object(y, complexity); 00071 } 00072 00073 00074 00075 00076 00077 00078 public Pointset_Powerset_Octagonal_Shape_mpq_class(Constraint_System cs) { 00079 build_cpp_object(cs); 00080 } 00081 00082 public Pointset_Powerset_Octagonal_Shape_mpq_class(Congruence_System cs) { 00083 build_cpp_object(cs); 00084 } 00085 00086 00087 00088 00089 00090 00091 public native void swap(Pointset_Powerset_Octagonal_Shape_mpq_class y); 00092 00093 00094 00095 00096 public native long space_dimension(); 00097 00098 public native long affine_dimension(); 00099 00100 00101 00102 00103 00104 public native Poly_Con_Relation relation_with(Constraint c); 00105 00106 public native Poly_Gen_Relation relation_with(Generator c); 00107 00108 public native Poly_Con_Relation relation_with(Congruence c); 00109 00110 00111 00112 00113 00114 public native boolean is_empty(); 00115 00116 public native boolean is_universe(); 00117 00118 public native boolean is_bounded(); 00119 00120 public native boolean contains_integer_point(); 00121 00122 public native boolean is_topologically_closed(); 00123 00124 public native boolean is_discrete(); 00125 00126 00127 00128 00129 00130 public native void topological_closure_assign(); 00131 00132 public native void pairwise_reduce(); 00133 00134 public native void omega_reduce(); 00135 00136 00137 00138 00139 00140 public native boolean bounds_from_above(Linear_Expression expr); 00141 00142 public native boolean bounds_from_below(Linear_Expression expr); 00143 00144 00145 00146 00147 00148 public native boolean maximize(Linear_Expression expr, 00149 Coefficient sup_n, Coefficient sup_d, 00150 By_Reference<Boolean> maximum); 00151 00152 public native boolean minimize(Linear_Expression expr, 00153 Coefficient sup_n, Coefficient sup_d, 00154 By_Reference<Boolean> maximum); 00155 00156 00157 00158 00159 00160 public native boolean maximize(Linear_Expression expr, 00161 Coefficient sup_n, Coefficient sup_d, 00162 By_Reference<Boolean> maximum, 00163 Generator point); 00164 00165 public native boolean minimize(Linear_Expression expr, 00166 Coefficient sup_n, Coefficient sup_d, 00167 By_Reference<Boolean> maximum, 00168 Generator point); 00169 00170 00171 00172 00173 00174 public native boolean contains(Pointset_Powerset_Octagonal_Shape_mpq_class y); 00175 00176 public native boolean strictly_contains(Pointset_Powerset_Octagonal_Shape_mpq_class y); 00177 00178 public native boolean is_disjoint_from(Pointset_Powerset_Octagonal_Shape_mpq_class y); 00179 00180 public native boolean geometrically_covers(Pointset_Powerset_Octagonal_Shape_mpq_class y); 00181 00182 public native boolean geometrically_equals(Pointset_Powerset_Octagonal_Shape_mpq_class y); 00183 00184 00185 00186 00187 00188 public native boolean equals(Pointset_Powerset_Octagonal_Shape_mpq_class p); 00189 00190 public boolean equals(Object y) { 00191 if (this == y) 00192 return true; 00193 if (y == null || y.getClass() != this.getClass()) 00194 return false; 00195 return this.equals((Pointset_Powerset_Octagonal_Shape_mpq_class) y); 00196 } 00197 00198 00199 00200 public native boolean OK(); 00201 00202 00203 00204 00205 public native void add_constraint(Constraint c); 00206 00207 public native void add_congruence(Congruence c); 00208 00209 00210 00211 00212 00213 public native void add_constraints(Constraint_System c); 00214 00215 public native void add_congruences(Congruence_System c); 00216 00217 00218 00219 00220 00221 public native void refine_with_constraint(Constraint c); 00222 00223 public native void refine_with_congruence(Congruence c); 00224 00225 00226 00227 00228 00229 public native void refine_with_constraints(Constraint_System c); 00230 00231 public native void refine_with_congruences(Congruence_System c); 00232 00233 00234 00235 00236 00237 public native void intersection_assign(Pointset_Powerset_Octagonal_Shape_mpq_class p); 00238 00239 public native void upper_bound_assign(Pointset_Powerset_Octagonal_Shape_mpq_class p); 00240 00241 public native void difference_assign(Pointset_Powerset_Octagonal_Shape_mpq_class p); 00242 00243 public native void concatenate_assign(Pointset_Powerset_Octagonal_Shape_mpq_class p); 00244 00245 public native void time_elapse_assign(Pointset_Powerset_Octagonal_Shape_mpq_class p); 00246 00247 00248 00249 00250 00251 public native boolean upper_bound_assign_if_exact(Pointset_Powerset_Octagonal_Shape_mpq_class y); 00252 00253 00254 00255 00256 00257 00258 public native boolean simplify_using_context_assign(Pointset_Powerset_Octagonal_Shape_mpq_class p); 00259 00260 00261 00262 00263 public native boolean constrains(Variable var); 00264 00265 00266 00267 00268 public native void unconstrain_space_dimension(Variable var); 00269 00270 00271 00272 00273 public native void 00274 unconstrain_space_dimensions(Variables_Set vars); 00275 00276 00277 00278 00279 public native void affine_image(Variable var, Linear_Expression expr, 00280 Coefficient denominator); 00281 00282 public native void affine_preimage(Variable var, Linear_Expression expr, 00283 Coefficient denominator); 00284 00285 00286 00287 00288 00289 public native void bounded_affine_image(Variable var, 00290 Linear_Expression lb_expr, 00291 Linear_Expression ub_expr, 00292 Coefficient denominator); 00293 00294 public native void bounded_affine_preimage(Variable var, 00295 Linear_Expression lb_expr, 00296 Linear_Expression ub_expr, 00297 Coefficient denominator); 00298 00299 00300 00301 00302 00303 public native void generalized_affine_image(Variable var, 00304 Relation_Symbol relsym, 00305 Linear_Expression expr, 00306 Coefficient denominator); 00307 00308 public native void generalized_affine_preimage(Variable var, 00309 Relation_Symbol relsym, 00310 Linear_Expression expr, 00311 Coefficient denominator); 00312 00313 00314 00315 00316 00317 public native void generalized_affine_image(Linear_Expression lhs, 00318 Relation_Symbol relsym, 00319 Linear_Expression rhs); 00320 00321 public native void generalized_affine_preimage(Linear_Expression lhs, 00322 Relation_Symbol relsym, 00323 Linear_Expression rhs); 00324 00325 00326 00327 00328 00329 public native void add_space_dimensions_and_embed(long m); 00330 00331 public native void add_space_dimensions_and_project(long m); 00332 00333 00334 00335 00336 00337 public native void remove_space_dimensions(Variables_Set vars); 00338 00339 00340 00341 00342 public native void remove_higher_space_dimensions(long new_dimension); 00343 00344 00345 00346 00347 public native void expand_space_dimension(Variable var, long m); 00348 00349 00350 00351 00352 public native void fold_space_dimensions(Variables_Set vars, 00353 Variable dest); 00354 00355 00356 00357 00358 public native void map_space_dimensions(Partial_Function pfunc); 00359 00360 00361 00362 00363 public native void drop_some_non_integer_points 00364 (Integer complexity_threshold); 00365 00366 00367 00368 00369 public native void drop_some_non_integer_points_2 00370 (Variables_Set vars, Integer complexity_threshold); 00371 00372 00373 00374 00375 public native String ascii_dump(); 00376 00377 00378 00379 00380 public native long external_memory_in_bytes(); 00381 00382 public native long total_memory_in_bytes(); 00383 00384 public native long size(); 00385 00386 00387 00388 00389 00390 public native Pointset_Powerset_Octagonal_Shape_mpq_class_Iterator begin_iterator(); 00391 00392 public native Pointset_Powerset_Octagonal_Shape_mpq_class_Iterator end_iterator(); 00393 00394 00395 00396 00397 00398 public native void add_disjunct(Octagonal_Shape_mpq_class j_disj); 00399 00400 00401 00402 00403 00404 00405 public native void drop_disjunct(Pointset_Powerset_Octagonal_Shape_mpq_class_Iterator itr); 00406 00407 00408 00409 00410 public native void drop_disjuncts(Pointset_Powerset_Octagonal_Shape_mpq_class_Iterator itr1, 00411 Pointset_Powerset_Octagonal_Shape_mpq_class_Iterator itr2); 00412 00413 00414 00415 00416 public native void 00417 BHZ03_H79_BHMZ05_widening_assign(Pointset_Powerset_Octagonal_Shape_mpq_class y); 00418 00419 00420 00421 00422 00423 public native 00424 void BGP99_BHMZ05_extrapolation_assign(Pointset_Powerset_Octagonal_Shape_mpq_class y, 00425 Integer d); 00426 00427 00428 00429 00430 00431 public native void free(); 00432 00433 00434 00435 00436 00437 public native int hashCode(); 00438 00439 00440 00441 00442 public native String toString(); 00443 00444 00445 00446 00447 00448 private native void build_cpp_object(Constraint_System cs); 00449 00450 private native void build_cpp_object(Congruence_System cs); 00451 00452 00453 00454 00455 00456 private native void build_cpp_object(long num_dimensions, 00457 Degenerate_Element kind); 00458 00459 00460 00461 00462 private native void build_cpp_object(Pointset_Powerset_Octagonal_Shape_mpq_class y); 00463 00464 private native void build_cpp_object(Pointset_Powerset_Octagonal_Shape_mpq_class y, 00465 Complexity_Class complexity); 00466 00467 private native void build_cpp_object(Octagonal_Shape_mpq_class y); 00468 00469 private native void build_cpp_object(Octagonal_Shape_mpq_class y, 00470 Complexity_Class complexity); 00471 00472 00473 00474 00475 00476 00477 }