Home
The Parma Polyhedra Library Java Language Interface
Contents
1. Invalid_Argument_ Thrown if denominator is zero or if lb_expr resp ub_expr and this Exception are dimension incompatible or if var is not a space dimension of this 10 53 2 33 native void parma_polyhedra_library Polyhedron generalized_affine_image Variable var Relation_Symbol relsym Linear_Expression expr Coefficient denominator Assigns to this the image of this with respect to the generalized affine relation var v lt expr where bx is the relation symbol encoded by rel sym Parameters denominator var The left hand side variable of the generalized affine relation relsym The relation symbol expr The numerator of the right hand side affine expression denominator The denominator of the right hand side affine expression optional argument with de fault value 1 Exceptions Invalid_Argument_ Thrown if denominator is zero or if expr and this are dimension Exception incompatible or if var is not a space dimension of this or if this is a C_ Polyhedron and rel sym is a strict relation symbol 10 53 2 34 native void parma_polyhedra_library Polyhedron generalized_affine_preimage Variable var Relation_Symbol relsym Linear_Expression expr Coefficient denominator Assigns to this the preimage of this with respect to the generalized affine relation var gt P where bx is the relation symbol encoded by relsym Parameters denomin
2. The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 2 GNU General Public License 3 Some devices are designed to deny users access to install or run modified versions of the software inside them although the manufacturer can do so This is fundamentally incompatible with the aim of protecting users freedom to change the software The systematic pattern of such abuse occurs in the area of products for individuals to use which is precisely where it is most unacceptable Therefore we have designed this version of the GPL to prohibit the practice for those products If such problems arise substantially in other domains we stand ready to extend this provision to those domains in future versions of the GPL as needed to protect the freedom of users Finally every program is threatened constantly by software patents States should not allow patents to restrict development and use of software on general purpose computers but in those that do we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary To prevent this the GPL assures that patents cannot be used to render the program non free The precise terms and conditions for copying distribution and modification follow TERMS AND CONDITIONS 0 Definitions This License refers to version 3 of the GNU General Public License Copyright also means copyright like
3. 10 53 2 9 native Poly_Gen_Relation parma_polyhedra_library Polyhedron relation_with Generator c Returns the relations holding between the polyhedron this and the generator g Exceptions Invalid_Argument_ Thrown if this and generator g are dimension incompatible Exception 10 53 2 10 native Poly_Con_Relation parma_polyhedra _library Polyhedron relation with Congruence c Returns the relations holding between the polyhedron this and the congruence c Exceptions Invalid_Argument_ Thrown if this and congruence c are dimension incompatible Exception 10 53 2 11 native boolean parma_polyhedra_library Polyhedron contains Polyhedron y Returns t rue if and only if this contains y Exceptions Invalid_Argument_ Thrown if this and y are topology incompatible or dimension incompatible Exception 10 53 2 12 native boolean parma_polyhedra_library Polyhedron strictly_contains Polyhedron y Returns t rue if and only if this strictly contains y Exceptions Invalid_Argument_ Thrown if this and y are topology incompatible or dimension incompatible Exception 10 53 2 13 native boolean parma_polyhedra_library Polyhedron is_disjoint_from Polyhedron y Returns t rue if and only if this and y are disjoint Exceptions Invalid_Argument_ Thrown if x and y are topology incompatible or dimension incompatible Exception 10 53 2 14 native
4. native boolean is_discrete Returns t rue if and only if this is discrete native boolean is_topologically_closed Returns t rue if and only if this is a topologically closed subset of the vector space native boolean contains_integer_point Returns true if and only if this contains at least one integer point e native boolean constrains Variable var Returns t rue if and only if var is constrained in this e native boolean bounds_from_above Linear_Expression expr The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 78 CONTENTS Returns t rue if and only if expr is bounded from above in this native boolean bounds_from_below Linear_Expression expr Returns t rue if and only if expr is bounded from below in this native boolean maximize Linear_Expression expr Coefficient sup_n Coefficient sup_d By_ Reference lt Boolean gt maximum Returns t rue if and only if this is not empty and expr is bounded from above in this in which case the supremum value is computed native boolean minimize Linear_Expression expr Coefficient inf_n Coefficient inf_d By_ Reference lt Boolean gt minimum Returns t rue if and only if this is not empty and expr is bounded from below in this in which case the infimum value is computed native boolean maximize Linear_Expression expr Coefficient sup_n Coefficient sup_d By_ Reference lt Boolean gt maximum Generator g
5. PRICING_STEEPEST_EDGE_EXACT Steepest edge pricing method using Coefficient PRICING_TEXTBOOK Textbook pricing method 10 15 1 Detailed Description Possible values for MIP problem s control parameters The documentation for this enum was generated from the following file Control_Parameter_Value java 10 16 parma_polyhedra_library Degenerate_Element Enum Reference Kinds of degenerate abstract elements Public Attributes UNIVERSE The universe element i e the whole vector space 10 16 1 Detailed Description Kinds of degenerate abstract elements The documentation for this enum was generated from the following file Degenerate_Element java 10 17 parma_polyhedra_library Domain_Error_Exception Class Reference Exceptions caused by domain errors Public Member Functions Domain_Error_Exception String s Constructor 10 17 1 Detailed Description Exceptions caused by domain errors The documentation for this class was generated from the following file Domain_Error_Exception java The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 18 parma_polyhedra_library Generator Class Reference 39 10 18 parma_polyhedra_library Generator Class Reference A line ray point or closure point Public Member Functions Generator_Type type Returns the generator type e Linear_Expression linear_expression Returns the lin
6. bugseng com for more information 20 CONTENTS parma_polyhedra_library Congruence A linear congruence 35 parma_polyhedra_library Congruence_System A system of congruences 35 parma_polyhedra_library Constraint A linear equality or inequality 36 parma_polyhedra_library Constraint_System A system of constraints 37 parma_polyhedra_library Control_Parameter_Name Names of MIP problems control parameters 37 parma_polyhedra_library Control_Parameter_Value Possible values for MIP problem s control parameters 37 parma_polyhedra_library Degenerate_Element Kinds of degenerate abstract elements 38 parma_polyhedra_library Domain_Error_Exception Exceptions caused by domain errors 38 parma_polyhedra_library Generator A line ray point or closure point 39 parma_polyhedra_library Generator_System A system of generators 40 parma_polyhedra_library Generator_Type The generator type 41 parma_polyhedra_library Grid_Generator A grid line parameter or grid point 41 parma_polyhedra_library Grid_Generator_System A system of grid generators 43 parma_polyhedra_library Grid_Generator_Type The grid generator type 43 parma_polyhedra_library Invalid_Argument_Exception Exceptions caused by invalid arguments 44 parma_polyhedra_library IO A class collecting I O functions dd parma_polyhedra_library Length_Error_Exception Exceptions caused by too big length size values 45 parma_polyhedra_library Linear_Expression A linear exp
7. Exceptions Invalid_Argument_ Exception Thrown if the computation of the weight threshold exceeds the maximum allowed value The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 41 parma_polyhedra_ library Partial Function Class Reference 63 Note This timeout checking functionality is said to be deterministic because it is not based on actual elapsed time Its behavior will only depend on some of the computations performed in the PP L library and it will be otherwise independent from the computation environment CPU operating system compiler etc Warning The weight mechanism is under beta testing In particular there is still no clear relation between the weight threshold and the actual computational complexity As a conseguence client applications should be ready to reconsider the tuning of these weight thresholds when upgrading to newer version of the PPL The documentation for this class was generated from the following file Parma_Polyhedra_Library java 10 41 parma_polyhedra_library Partial Function Class Reference A partial function on space dimension indices Inherits parma_polyhedra_library PPL_ Object Public Member Functions e Partial_Function Builds the empty map native void insert long i long j Inserts mapping from i to j e native boolean has_empty_codomain Returns t rue if and only if the partial fun
8. PPL The Parma Polyhedra Library Java Language Interface User s Manual version 1 0 Roberto Bagnara Patricia M Hill Enea Zaffanella Abramo Bagnara June 28 2012 This work has been partly supported by University of Parma s FIL scientific research project ex 60 Pure and Applied Math ematics MURST project Automatic Program Certification by Abstract Interpretation MURST project Abstract Interpretation Type Systems and Control Flow Analysis MURST project Automatic Aggregate and Number Reasoning for Computing from Decision Algorithms to Constraint Programming with Multisets Sets and Maps MURST project Constraint Based Verification of Reactive Systems MURST project Abstract Interpretation Design and Applications EPSRC project Numerical Domains for Software Analysis EPSRC project Geometric Abstractions for Scalable Program Analyzers bagnara cs unipr it Department of Mathematics University of Parma Italy and BUGSENG srl t patricia hill bugseng com BUGSENG srl 8 zaffanella cs unipr it Department of Mathematics University of Parma Italy and BUGSENG srl 1 abramo bagnara bugseng com BUGSENG srl Copyright 2001 2010 Roberto Bagnara bagnara cs unipr it Copyright 2010 2012 BUGSENG srl http bugseng com This document describes the Parma Polyhedra Library PPL Permission is granted to copy distribute and or modify this document under th
9. Thrown if the homogeneous part of e represents the origin of the vector space 10 18 2 3 static Generator parma_polyhedra_library Generator point Linear_Expression e Coefficient d inline static Returns the point at e d Exceptions RuntimeErrorException Thrown if d is zero 10 18 2 4 static Generator parma_polyhedra_library Generator ray Linear _Expression e inline static Returns the ray of direction e Exceptions RuntimeErrorException Thrown if the homogeneous part of e represents the origin of the vector space 10 18 2 5 Coefficient parma_polyhedra_library Generator divisor inline If this is either a point or a closure point returns its divisor Exceptions RuntimeErrorException Thrown if this is neither a point nor a closure point The documentation for this class was generated from the following file e Generator java 10 19 parma_polyhedra_library Generator_System Class Reference A system of generators Public Member Functions Generator_System Default constructor builds an empty system of generators The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 20 parma_polyhedra_library Generator_Type Enum Reference 41 native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string represe
10. Assigns to this the result of computing the BHRZ03 widening between this and y native void H79_widening_assign Polyhedron y By_Reference lt Integer gt tp Assigns to this the result of computing the H79 widening between this and y The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 53 parma_polyhedra_library Polyhedron Class Reference 81 e native void limited_BHRZ03_extrapolation_assign Polyhedron y Constraint_System cs By_ Reference lt Integer gt tp Improves the result of the BHRZ03 widening computation by also enforcing those constraints in cs that are satisfied by all the points of this native void limited_H79_extrapolation_assign Polyhedron y Constraint_System cs By_Reference lt Integer gt tp Improves the result of the H79 widening computation by also enforcing those constraints in cs that are satisfied by all the points of this e native void bounded_BHRZ03_extrapolation_assign Polyhedron y Constraint_System cs By_ Reference lt Integer gt tp Improves the result of the BHRZ03 widening computation by also enforcing those constraints in cs that are satisfied by all the points of this plus all the constraints of the form x lt r and s lt r with r Q that are satisfied by all the points of this native void bounded_H79_extrapolation_assign Polyhedron y Constraint_System cs By_Reference lt Integer gt tp Improves the result of the
11. Decision nodes always have a true child Both kinds of tree nodes may also contain the definition of extra parameters which are artificially introduced by the solver to enforce an integral solution Such artificial parameters are defined by the integer division of a linear expression on the parameters by an integer coefficient By exploiting the incremental nature of the solver it is possible to reuse part of the computational work already done when solving variants of a given PIP_Problem currently incremental resolution supports the addition of space dimensions the addition of parameters and the addition of constraints 10 43 2 Constructor amp Destructor Documentation 10 43 2 1 parma_polyhedra_library PIP_Problem PIP Problem long dim inline Builds a trivial PIP problem A trivial PIP problem requires to compute the lexicographic minimum on a vector space under no con straints and with no parameters due to the implicit non negativity constraints the origin of the vector space is an optimal solution Parameters dim The dimension of the vector space enclosing this optional argument with default value 0 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 68 CONTENTS Exceptions Length_Error_Exception Thrown if dim exceeds max_space_dimension 10 43 2 2 parma_polyhedra_library PIP_Problem PIP_Problem long dim Constrai
12. Invalid_Argument_ Thrown if this is dimension incompatible with one of the Variable objects con Exception tained in vars 10 53 2 39 native void parma_polyhedra_library Polyhedron widening_assign Polyhedron y By Reference lt Integer gt tp Assigns to this the result of computing the H79 widening between this and y Parameters y A polyhedron that must be contained in this tp A reference to an unsigned variable storing the number of available tokens to be used when applying the widening with tokens delay technique Exceptions Invalid_Argument_ Thrown if this and y are topology incompatible or dimension incompatible Exception 10 53 2 40 native void parma_polyhedra_library Polyhedron swap Polyhedron y Swaps this with polyhedron y this and y can be dimension incompatible Exceptions Invalid_Argument_ Thrown if x and y are topology incompatible Exception 10 53 2 41 native void parma_polyhedra_library Polyhedron add_space_dimensions_and_embed long m Adds m new space dimensions and embeds the old polyhedron in the new vector space Parameters m The number of dimensions to add Exceptions Length_Error_Exception Thrown if adding m new space dimensions would cause the vector space to exceed dimension max_space_dimension 10 53 2 42 native void parma_polyhedra_library Polyhedron add_space_dimensions_and_proje
13. com for more information Ni 88 CONTENTS Parameters var The variable to which the affine expression is assigned expr The numerator of the affine expression denominator The denominator of the affine expression optional argument with default value 1 Exceptions Invalid_Argument_ 10 53 2 30 native void parma_polyhedra_library Polyhedron affine_preimage Variable var Linear_Expression expr Coefficient denominator Assigns to this the affine preimage of this under the function mapping variable var to the affine expression specified by expr and denominator Parameters var The variable to which the affine expression is substituted expr The numerator of the affine expression denominator The denominator of the affine expression optional argument with default value 1 Exceptions Thrown if denominator is zero or if expr and this are dimension Exception incompatible or if var is not a space dimension of this Invalid_Argument_ Thrown if denominator is zero or if expr and this are dimension Exception incompatible or if var is not a space dimension of this 10 53 2 31 native void parma_polyhedra_library Polyhedron bounded_affine_image Variable var Linear_Expression b_expr Linear_Expression ub_expr Coefficient denominator Assigns to this the image of this with respect to the bounded affine relation ee lt var lt ub_expr d
14. hs Relation_Symbol relsym Linear_Expression rhs Assigns to this the preimage of this with respect to the generalized affine relation lhs rhs where lt is the relation symbol encoded by relsym Parameters lhs The left hand side affine expression relsym The relation symbol rhs The right hand side affine expression Exceptions Invalid_Argument_ Thrown if this is dimension incompatible with lhs or rhs or if this is a Exception C_Polyhedron and relsymis a strict relation symbol 10 53 2 37 native void parma_polyhedra_library Polyhedron unconstrain_space_dimension Variable var Computes the cylindrification of this with respect to space dimension var assigning the result to this Parameters var The space dimension that will be unconstrained Exceptions Invalid_Argument_ Thrown if var is not a space dimension of this Exception 10 53 2 38 native void parma_polyhedra_library Polyhedron unconstrain_space_dimensions Variables_Set vars Computes the cylindrification of this with respect to the set of space dimensions vars assigning the result to this The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 53 parma_polyhedra_library Polyhedron Class Reference 91 Parameters vars The set of space dimension that will be unconstrained Exceptions
15. Builds a new C polyhedron that is a copy of ph The complexity argument is ignored 10 7 2 3 parma polyhedra library C Polyhedron C Polyhedron Constraint_System cs Builds a new C polyhedron from the system of constraints cs The new polyhedron will inherit the space dimension of cs 10 7 2 4 parma_polyhedra_library C _Polyhedron C Polyhedron Congruence_System cgs Builds a new C polyhedron from the system of congruences cgs The new polyhedron will inherit the space dimension of cgs 10 7 2 5 parma_polyhedra_library C Polyhedron C Polyhedron NNC_Polyhedron y Complexity_Class complexity Builds a C polyhedron that is a copy of the topological closure of the NNC polyhedron y The complexity argument is ignored since the exact constructor has polynomial complexity The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 8 parma_polyhedra_library Coefficient Class Reference 33 10 7 2 6 parma_polyhedra_library C_Polyhedron C_Polyhedron Generator_System gs Builds a new C polyhedron from the system of generators gs The new polyhedron will inherit the space dimension of gs 10 7 3 Member Function Documentation 10 7 3 1 native boolean parma_polyhedra_library C_Polyhedron upper_bound_assign_if_exact C_Polyhedron y If the upper bound of this and y is exact it is assigned to this and t rue is returned otherwise false is returned Exceptions
16. Pointset_Powerset_C_Polyhedron parma_polyhedra_library Pointset_Powerset_C_Polyhedron_Iterator parma_polyhedra_library Poly_Con_Relation parma_polyhedra_library Poly_Gen_Relation parma_polyhedra_library Polyhedron parma_polyhedra_library C_Polyhedron parma_polyhedra_library Relation_Symbol parma_polyhedra_library Timeout_Exception parma_polyhedra_library Variable parma_polyhedra_library Variables_Set 64 70 73 74 75 76 76 30 96 96 97 97 7 Class Index 71 Class List Here are the classes structs unions and interfaces with brief descriptions parma_polyhedra_library Artificial_Parameter parma_polyhedra_library Artificial_Parameter_Sequence A sequence of artificial parameters parma_polyhedra_library Bounded_Integer_Type_Overflow Overflow behavior of bounded integer types parma_polyhedra_library Bounded_Integer_Type_Representation Representation of bounded integer types parma_polyhedra_library Bounded_Integer_Type_Width Widths of bounded integer types parma_polyhedra_library By_Reference lt T gt An utility class implementing mutable and non mutable call by reference parma_polyhedra_library C_Polyhedron A topologically closed convex polyhedron parma_polyhedra_library Coefficient A PPL coefficient parma_polyhedra_library Complexity_Class Possible Complexities 27 28 29 29 29 30 30 33 34 The PPL Java Language Interface User s Manual version 1 0 See http
17. User s Manual version 1 0 See http bugseng com for more information 10 CONTENTS Each version is given a distinguishing version number If the Program specifies that a certain numbered version of the GNU General Public License or any later version applies to it you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation If the Program does not specify a version number of the GNU General Public License you may choose any version ever published by the Free Software Foundation If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used that proxy s public statement of acceptance of a version permanently authorizes you to choose that version for the Program Later license versions may give you additional or different permissions However no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version 15 Disclaimer of Warranty THERE IS NO WARRANTY FOR THE PROGRAM TO THE EXTENT PERMITTED BY APPLIC ABLE LAW EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND OR OTHER PARTIES PROVIDE THE PROGRAM AS IS WITHOUT WARRANTY OF ANY KIND EITHER EXPRESSED OR IMPLIED INCLUDING BUT NOT LIMITED TO THE IMPLIE D WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE THE ENTIRE RISK AS TO TH
18. allow for the examination and manipulation of the collection of disjuncts 10 49 2 Member Function Documentation 10 49 2 1 native long parma_polyhedra library Pointset Powerset_C Polyhedron size Returns the number of disjuncts If present Omega redundant elements will be counted too The documentation for this class was generated from the following file e Fake_Class_for_Doxygen java 10 50 parma_polyhedra_library Pointset_Powerset_C_Polyhedron_Iterator Class Reference An iterator class for the disjuncts of a Pointset_Powerset_C_Polyhedron Inherits parma_polyhedra_library PPL_ Object Public Member Functions e Pointset_Powerset_C_Polyhedron_Iterator Pointset_Powerset_C_Polyhedron_Iterator y Builds a copy of iterator y native boolean equals Pointset_Powerset_C_Polyhedron_Iterator itr Returns t rue if and only if this and itr are equal native void next Modifies this so that it refers to the next disjunct native void prev Modifies this so that it refers to the previous disjunct native C_Polyhedron get_disjunct Returns the disjunct referenced by this native void free Releases resources and resets this to a null reference Protected Member Functions native void finalize Releases the resources managed by this The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 51 parma_polyhedra_library Poly_Con_Relation Class Reference
19. else a unique number Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work In the combination you must combine any sections Entitled History in the various original documents forming one section Entitled History likewise combine any sections Entitled Acknowledgements and any sections Entitled Dedications You must delete all sections Entitled Endorsements 6 COLLECTIONS OF DOCUMENTS You may make a collection consisting of the Document and other documents released under this License and replace the individual copies of this License in the various documents with a single copy that is included in the collection provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects You may extract a single document from such a collection and distribute it individually under this License provided you insert a copy of this License into the extracted document and follow this License in all other respects regarding verbatim copying of that document 7 AGGREGATION WITH INDEPENDENT WORKS A compilation of the Document or its derivatives with other separate and independent documents or works in or on a volume of a storage or distribution medium is called an aggregate if the copyright resulting from the compilation is not used to limit the legal rights of the compilation s users beyond what the indi vidual works
20. end of the list of Cover Texts in the Modified Version Only one passage of Front Cover Text and one of Back Cover Text may be added by or through arrangements made by any one entity If the Document already includes a cover text for the same cover previously added by you or by arrangement made by the same entity you are acting on behalf of you may not add another but you may replace the old one on explicit permission from the previous publisher that added the old one The author s and publisher s of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version 5 COMBINING DOCUMENTS You may combine the Document with other documents released under this License under the terms defined in section 4 above for modified versions provided that you include in the combination all of the Invari ant Sections of all of the original documents unmodified and list them all as Invariant Sections of your combined work in its license notice and that you preserve all their Warranty Disclaimers The combined work need only contain one copy of this License and multiple identical Invariant Sections may be replaced with a single copy If there are multiple Invariant Sections with the same name but different contents make the title of each such section unigue by adding at the end of it in parentheses the name of the original author or publisher of that section if known or
21. formatted internal representation of this native String toString Returns a string representation of this 10 11 1 Detailed Description A system of congruences An object of the class Congruence_System is a system of congruences i e a multiset of objects of the class Congruence The documentation for this class was generated from the following file Congruence_System java 10 12 parma_polyhedra_library Constraint Class Reference A linear eguality or ineguality Public Member Functions e Constraint Linear_Expression lel Relation_Symbol rel_sym Linear_Expression le2 Builds a constraint from two linear expressions with a specified relation symbol e Linear_Expression left_hand_ side Returns the left hand side of this e Linear_Expression right_hand_side Returns the right hand side of this e Relation_ Symbol kind Returns the relation symbol of this native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string representation of this 10 12 1 Detailed Description A linear eguality or ineguality An object of the class Constraint is either e a linear equality a non strict linear inequality a strict linear ineguality The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 13 parma_polyhedra_library Constraint_System Class Reference 37 The docum
22. grid point class Grid_Generator_System A system of grid generators enum Grid_Generator_Type The grid generator type class Invalid_Argument_Exception Exceptions caused by invalid arguments class IO A class collecting I O functions class Length_Error_Exception Exceptions caused by too big length size values class Linear_Expression A linear expression class Linear_Expression_Coefficient A linear expression built from a coefficient class Linear_Expression_Difference The difference of two linear expressions class Linear_Expression_Sum The sum of two linear expressions class Linear_Expression_Times The product of a linear expression and a coefficient class Linear_Expression_Unary_Minus The negation of a linear expression class Linear_Expression_Variable A linear expression built from a variable class Logic_Error_Exception Exceptions due to errors in low level routines class MIP_Problem A Mixed Integer linear Programming problem enum MIP_Problem_ Status Possible outcomes of the MIP_Problem solver enum Optimization_Mode Possible optimization modes class Overflow_Error_Exception The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 Class Documentation 27 9 1 1 Exceptions due to overflow errors class Pair lt K V gt A pair of values of type K and V class Parma_Polyhedra_Library A class collecting library level functions e c
23. major number of the PPL version e static native int version minor Returns the minor number of the PPL version e static native int version revision Returns the revision number of the PPL version e static native int version_beta Returns the beta number of the PPL version e static native String version Returns a string containing the PPL version e static native String banner Returns a string containing the PPL banner Floating point rounding and precision settings e static native void set_rounding for_PPL Sets the FPU rounding mode so that the PPL abstractions based on floating point numbers work cor rectly e static native void restore_pre_PPL_rounding The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 40 parma_polyhedra_library Parma_Polyhedra_Library Class Reference 61 Sets the FPU rounding mode as it was before initialization of the PPL e static native int irrational_precision Returns the precision parameter for irrational calculations e static native void set_irrational_precision int p Sets the precision parameter used for irrational calculations Timeout handling e static native void set_timeout int csecs Sets the timeout for computations whose completion could require an exponential amount of time e static native void reset_timeout Resets the timeout time so that the computation is not interrupted e static na
24. occurring solely as a conseguence of using peer to peer transmission to receive a copy likewise does not reguire acceptance However nothing other than this License grants you permission to propagate or modify any covered work These actions infringe copyright if you do not accept this License Therefore by modifying or propagating a covered work you indicate your acceptance of this License to do so 10 Automatic Licensing of Downstream Recipients Each time you convey a covered work the recipient automatically receives a license from the original licensors to run modify and propagate that work subject to this License You are not responsible for enforcing compliance by third parties with this License An entity transaction is a transaction transferring control of an organization or substantially all assets of one or subdividing an organization or merging organizations If propagation of a covered work results from an entity transaction each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party s predecessor in interest had or could give under the previous paragraph plus a right to possession of the Corresponding Source of the work from the predecessor in interest if the predecessor has it or can get it with reasonable efforts You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License For example you may not impose a l
25. one _length Returns The wrapped string The documentation for this class was generated from the following file e IO java 10 26 parma_polyhedra_library Length_Error_Exception Class Reference Exceptions caused by too big length size values Public Member Functions Length_Error_Exception String s Constructor 10 26 1 Detailed Description Exceptions caused by too big length size values The documentation for this class was generated from the following file Length_Error_Exception java 10 27 parma_polyhedra library Linear Expression Class Reference A linear expression The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 46 CONTENTS Inheritance diagram for parma_polyhedra_library Linear_Expression parma_polyhedra library Linear_Expression_Coefficient parma_polyhedra library Linear_Expression_Difference parma_polyhedra library Linear_Expression_Sum parma_polyhedra library Linear_Expression parma_polyhedra library Linear_Expression_Times parma_polyhedra library Linear_Expression_Unary_Minus parma_polyhedra_library Linear_Expression_Variable Public Member Functions Linear_Expression sum Linear_Expression y Returns the sum of this and y e Linear Expression subtract Linear_Expression y Returns the difference of this and y Linear_Expression times Coefficient c Returns the product of th
26. order agreement or otherwise that contradict the conditions of this License they do not excuse you from the conditions of this License If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations then as a conseguence you may not convey it at all For example if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program 13 Use with the GNU Affero General Public License Notwithstanding any other provision of this License you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single com bined work and to convey the resulting work The terms of this License will continue to apply to the part which is the covered work but the special reguirements of the GNU Affero General Public License section 13 concerning interaction through a network will apply to the combination as such 14 Revised Versions of this License The Free Software Foundation may publish revised and or new versions of the GNU General Public License from time to time Such new versions will be similar in spirit to the present version but may differ in detail to address new problems or concerns The PPL Java Language Interface
27. parma_polyhedra_library Grid_Generator_System 43 parma_polyhedra_library Grid_Generator_Type 43 parma_polyhedra_library Invalid_Argument_Exception 44 parma_polyhedra_library IO 44 parma_polyhedra_library Length_Error_Exception 45 parma_polyhedra_library Linear_Expression 45 parma_polyhedra_library Linear_Expression_Coefficient 47 parma_polyhedra_library Linear_Expression_Difference 48 parma_polyhedra_library Linear_Expression_Sum 49 parma_polyhedra_library Linear_Expression_Times 50 parma_polyhedra_library Linear_Expression_Unary_Minus 51 parma_polyhedra_library Linear_Expression_Variable 52 parma_polyhedra_library Logic_Error_Exception 52 parma_polyhedra_library MIP_Problem 53 parma_polyhedra_library MIP_Problem_Status 58 parma_polyhedra_library Optimization_Mode 59 parma_polyhedra_library Overflow_Error_Exception 59 parma_polyhedra_library Pair lt K V gt 59 parma_polyhedra_library Parma_Polyhedra_Library 60 parma_polyhedra_library Partial_Function 63 parma_polyhedra_library PIP_Problem 65 parma_polyhedra_library PIP_Problem_Control_Parameter_Name 69 parma_polyhedra_library PIP_Problem_Control_Parameter_Value 69 parma_polyhedra_library PIP_Problem_Status 70 parma_polyhedra_library PIP_Tree_Node 71 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 7 Class Index 19 parma_polyhedra_library PIP_Decision_Node parma_polyhedra_library PIP_Solution_Node parma_polyhedra_library
28. refine_with_constraint 86 refine_with_constraints 86 relation_with 83 84 remove_higher_space_dimensions 92 remove_space_dimensions 92 simplify_using_context_assign 87 strictly_contains 84 swap 91 time_elapse_assign 87 unconstrain_space_dimension 90 unconstrain_space_dimensions 90 upper_bound assign 87 widening assign 91 parma_polyhedra_library Variable Variable 97 point parma_polyhedra_library Generator 40 ray parma_polyhedra_library Generator 40 refine_with_congruence parma_polyhedra_library Polyhedron 86 refine_with_congruences parma_polyhedra_library Polyhedron 86 refine_with_constraint parma_polyhedra_library Polyhedron 86 refine_with_constraints parma_polyhedra_library Polyhedron 86 relation_with parma_polyhedra_library Polyhedron 83 84 remove_higher_space_dimensions parma_polyhedra_library Polyhedron 92 remove_space_dimensions parma_polyhedra_library Polyhedron 92 restore_pre_PPL_rounding simplify_using_context_assign parma_polyhedra_library Polyhedron 87 size parma_polyhedra_library Pointset_Powerset_ C_Polyhedron 74 solve parma_polyhedra_library MIP_Problem 57 parma_polyhedra_library PIP_Problem 69 strictly_contains parma_polyhedra_library Polyhedron 84 swap parma_polyhedra_library Polyhedron 91 time_elapse_assign parma_polyhedra_library Polyhedron 87 unconstrain_space_dimension parma_polyhedra_library Polyhedron 90 unconstrain_space_dimensions parma_polyhed
29. resolved in favor of coverage For a particular product received by a particular user normally used refers to a typical or common use of that class of product regardless of the status of the particular user or of the way in which the particular user actually uses or expects or is expected to use the product A product is a consumer product regardless of whether the product has substantial commercial industrial or non consumer uses unless such uses represent the only significant mode of use of the product Tnstallation Information for a User Product means any methods procedures authorization keys or other information reguired to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modifica tion has been made If you convey an object code work under this section in or with or specifically for use in a User Product and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term regardless of how the transaction is characterized the Corresponding Source conveyed under this section must be accompanied by the Installation Information But this reguirement does not apply if neither you nor any th
30. this native long total_memory_in_bytes Returns the total size in bytes of the memory occupied by this native String toString Returns a string representing this native String ascii_dump Returns a string containing a low level representation of this native boolean OK Checks if all the invariants are satisfied Space Dimension Preserving Member Functions that May Modify the Polyhedron native void add_constraint Constraint c Adds a copy of constraint c to the system of constraints of t his without minimizing the result native void add_congruence Congruence cg Adds a copy of congruence cg to this if cg can be exactly represented by a polyhedron The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 53 parma_polyhedra_library Polyhedron Class Reference 79 native void add_constraints Constraint_System cs Adds a copy of the constraints in cs to the system of constraints of this without minimizing the result native void add_congruences Congruence_System cgs Adds a copy of the congruences in cgs to this if all the congruences can be exactly represented by a polyhedron native void refine_with_constraint Constraint c Uses a copy of constraint c to refine this native void refine_with_congruence Congruence cg Uses a copy of congruence cg to refine this native void refine_with_constraints Constraint_System cs Uses a copy of the const
31. unbounded or not satisfiable 10 35 3 12 native void parma_polyhedra_library MIP_Problem optimal_value Coefficient num Coefficient den num Sets num and den so that 4 en is the solution of the optimization problem Exceptions Domain_Error_Exception Thrown if this doesn t not have an optimizing point i e if the MIP problem is unbounded or not satisfiable The documentation for this class was generated from the following file e MIP_Problem java 10 36 parma polyhedra library MlP Problem Status Enum Reference Possible outcomes of the MIP Problem solver Public Attributes e UNFEASIBLE_MIP_PROBLEM The problem is unfeasible UNBOUNDED_MIP_PROBLEM The problem is unbounded 10 36 1 Detailed Description Possible outcomes of the MIP Problem solver The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 37 parma_polyhedra_library Optimization_Mode Enum Reference 59 The documentation for this enum was generated from the following file e MIP_Problem_ Status java 10 37 parma polyhedra library Optimization Mode Enum Reference Possible optimization modes Public Attributes e MINIMIZATION Minimization is reguested 10 37 1 Detailed Description Possible optimization modes The documentation for this enum was generated from the following file Optimization_Mode java 10 38 parma_polyhedra_library Overflow
32. unlimited in duration to use that work under the conditions stated herein The Document below refers to any such manual or work Any member of the public is a licensee and is addressed as you You accept the license if you copy modify or distribute the work in a way requiring permission under copyright law A Modified Version of the Document means any work containing the Document or a portion of it either copied verbatim or with modifications and or translated into another language A Secondary Section is a named appendix or a front matter section of the Document that deals exclu sively with the relationship of the publishers or authors of the Document to the Document s overall subject or to related matters and contains nothing that could fall directly within that overall subject Thus if the Document is in part a textbook of mathematics a Secondary Section may not explain any mathematics The relationship could be a matter of historical connection with the subject or with related matters or of legal commercial philosophical ethical or political position regarding them The Invariant Sections are certain Secondary Sections whose titles are designated as being those of Invariant Sections in the notice that says that the Document is released under this License If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant The Document may contain zero Invariant Sections If t
33. warranty for the work except to the extent that warranties are provided that licensees may convey the work under this License and how to view a copy of this License If the interface presents a list of user commands or options such as a menu a prominent item in the list meets this criterion 1 Source Code The source code for a work means the preferred form of the work for making modifications to it Object code means any non source form of a work A Standard Interface means an interface that either is an official standard defined by a recognized stan dards body or in the case of interfaces specified for a particular programming language one that is widely used among developers working in that language The System Libraries of an executable work include anything other than the work as a whole that a is included in the normal form of packaging a Major Component but which is not part of that Major The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 4 CONTENTS Component and b serves only to enable use of the work with that Major Component or to implement a Standard Interface for which an implementation is available to the public in source code form A Major Component in this context means a major essential component kernel window system and so on of the specific operating system if any on which the executable work runs or a comp
34. will only enable a subset of these domains if you need a different set of domains see configuration option enable instantiations The simple domains are convex polyhedra which consist of C_Polyhedron and NNC_Polyhedron weakly relational which consist of BD_Shape_N and Octagonal_Shape_N where N is one of the numeric types signed_char short int long long_long mpz_class mpq_class boxes which consist of Int8_Box Int16_Box Int32_Box Int64_Box Uint8_Box Uint16 _Box Uint32_Box Uint64_Box Float_Box Double_Box Long_Double_Box Z_Box Rational_Box and the Grid domain The powerset domains are Pointset_Powerset_S where S is a simple domain The product domains consist of Direct_Product_S_T Smash_Product_S_T and Constraints_ Product_S_T where S and T are simple domains The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 2 CONTENTS In the following any of the above numerical abstract domains is called a PPL domain and any element of a PPL domain is called a PPL object A Java program can create a new object for a PPL domain by using the constructors for the class corresponding to the domain For a PPL object with space dimension k the identifiers used for the PPL variables must lie between 0 and k 1 and correspond to the indices of the associated Cartesian axes For example when using methods that combine PPL polyh
35. with one of the Variable Exception objects contained in vars Also thrown if dest is contained in vars 10 53 2 48 native void parma_polyhedra_library Polyhedron map_ space dimensions Partial Function pfunc Remaps the dimensions of the vector space according to a partial function Parameters pfunc The partial function specifying the destiny of each space dimension 10 53 2 49 native void parma_polyhedra_library Polyhedron add_generator Generator g Adds a copy of generator g to the system of generators of this without minimizing the result Exceptions Invalid_Argument_ Thrown if this and generator g are topology incompatible or dimension Exception incompatible or if this is an empty polyhedron and g is not a point 10 53 2 50 native void parma_polyhedra_library Polyhedron add_generators Generator_System gs Adds a copy of the generators in gs to the system of generators of this without minimizing the result The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information Ms 94 CONTENTS Parameters gs Contains the generators that will be added to the system of generators of this Exceptions Invalid_Argument_ Thrown if this and gs are topology incompatible or dimension incompatible or Exception if this is empty and the system of generators gs is not empty but has no points 10 53
36. 2 51 native void parma_polyhedra_library Polyhedron BHRZ03_widening_assign Polyhedron y By Reference lt Integer gt tp Assigns to this the result of computing the BHRZ03 widening between this and y Parameters y A polyhedron that musf be containedin this tp A reference to an unsigned variable storing the number of available tokens to be used when applying the widening with tokens delay technigue Exceptions Invalid_Argument_ Thrown if this and y are topology incompatible or dimension incompatible Exception 10 53 2 52 native void parma_polyhedra_library Polyhedron H79 widening assign Polyhedron y By_Reference lt Integer gt tp Assigns to this the result of computing the H79 widening between this and y Parameters y A polyhedron that must be contained in this tp A reference to an unsigned variable storing the number of available tokens to be used when applying the widening with tokens delay technique Exceptions Invalid_Argument_ Thrown if this and y are topology incompatible or dimension incompatible Exception 10 53 2 53 native void parma_polyhedra_library Polyhedron limited_BHRZ03_extrapolation_assign Polyhedron y Constraint_System cs By_Reference lt Integer gt tp Improves the result of the BHRZ03 widening computation by also enforcing those constraints in cs that are satisfied by all the points of this Parameters A polyhedron t
37. 3 PIP_Problem 67 68 solve 69 parma_polyhedra_library PIP_Solution_Node parametric_values 71 parma_polyhedra_library Pointset_Powerset_C_Polyhpdrom_polyhedra_library PIP_Tree_Node 73 constraints 73 parma_polyhedra_library Pointset_Powerset_C_Polyhpdrom_polyhedra_library Parma_Polyhedra_Library _ Iterator 74 parma_polyhedra_library Poly_Con_Relation 75 parma_polyhedra_library Poly_Gen_Relation 76 parma_polyhedra_library Polyhedron 76 parma_polyhedra_library Relation_Symbol 96 parma_polyhedra_library Timeout_Exception 96 parma_polyhedra_library Variable 97 parma_polyhedra_library Variables_Set 97 parma_polyhedra_library C_Polyhedron C_Polyhedron 32 linear_partition 33 upper_bound_assign_if_exact 33 parma_polyhedra_library Coefficient Coefficient 34 parma_polyhedra_library Generator closure_point 39 divisor 40 line 40 point 40 ray 40 parma_polyhedra_library Grid_Generator divisor 43 grid_line 42 grid_point 42 parameter 42 parma_polyhedra_library IO wrap_string 44 parma_polyhedra_library MIP_Problem add_constraint 56 add_constraints 57 add_space_dimensions_and_embed 56 add_to_integer_space_dimensions 56 clear 56 evaluate_objective_function 57 feasible_point 58 is_satisfiable 57 MIP_Problem 55 optimal_value 58 optimizing point 58 set_objective_function 57 solve 57 parma_polyhedra_library PIP_Problem add_constraint 68 add_constraints
38. 4 parma_polyhedra_library Invalid_Argument_Exception Class Reference Exceptions caused by invalid arguments Public Member Functions Invalid_Argument_Exception String s Constructor 10 24 1 Detailed Description Exceptions caused by invalid arguments The documentation for this class was generated from the following file e Invalid_Argument_Exception java 10 25 parma_polyhedra_library IO Class Reference A class collecting I O functions Static Public Member Functions e static native String wrap_string String str int indent_depth int preferred_first_line_length int preferred _line_length Utility function for the wrapping of lines of text 10 25 1 Detailed Description A class collecting I O functions 10 25 2 Member Function Documentation 10 25 2 1 static native String parma_polyhedra library lO wrap string String str int indent_depth int preferred first line length int preferred line length static Utility function for the wrapping of lines of text The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 26 parma_polyhedra_library Length_Error_Exception Class Reference 45 Parameters str The source string holding the lines to wrap indent_depth The indentation depth preferred_first The preferred length for the first line of text _line_length preferred_line The preferred length for all the lines but the first
39. 68 add_space_dimensions_and_embed 68 clear 68 is_satisfiable 68 banner 61 finalize_library 61 initialize_library 61 set_deterministic_timeout 62 set_irrational_precision 62 set_timeout 62 parma_polyhedra_library Partial_Function has_empty_codomain 64 maps 64 parma_polyhedra_library Pointset_Powerset_C_Polyhedron size 74 parma_polyhedra_library Polyhedron add_congruence 85 add_congruences 85 add_constraint 85 add_constraints 85 add_generator 93 add_generators 93 add_space_dimensions_and_embed 91 add_space_dimensions_and_project 91 affine_image 87 affine_preimage 88 ascii_dump 84 BHRZ03_widening_assign 94 bounded_BHRZO03_extrapolation_assign 95 bounded_H79_extrapolation_assign 95 bounded_affine_image 88 bounded_affine_preimage 88 bounds_from_above 81 bounds_from_below 81 concatenate_assign 92 constrains 81 contains 84 difference_assign 87 expand_space_dimension 92 fold_space_dimensions 93 generalized_affine_image 89 generalized_affine_preimage 89 90 H79_widening_assign 94 hashCode 84 intersection_assign 86 is_disjoint_from 84 limited _BHRZ03_extrapolation_assign 94 limited_H79_extrapolation_assign 95 map_space_dimensions 93 maximize 82 minimize 82 83 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 102 INDEX refine_with_congruence 86 refine_with_congruences 86
40. 75 10 50 1 Detailed Description An iterator class for the disjuncts of a Pointset_Powerset_C_Polyhedron 10 50 2 Member Function Documentation 10 50 2 1 native C_Polyhedron parma_polyhedra_library Pointset_Powerset_C_Polyhedron_lterator get_ disjunct Returns the disjunct referenced by this Warning On exit the C_Polyhedron disjunct is still owned by the powerset object any function call on the owning powerset object may invalidate it Moreover the disjunct is meant to be immutable and should not be modified in any way its resources will be released when deleting the owning powerset If really needed the disjunct may be copied into a new object which will be under control of the user The documentation for this class was generated from the following file Fake_Class_for_Doxygen java 10 51 parma_polyhedra_library Poly Con_Relation Class Reference The relation between a polyhedron and a constraint Public Member Functions Poly_Con_Relation int val Constructs from a integer value boolean implies Poly_Con_Relation y True if and only if this implies y Static Public Member Functions static Poly_Con_Relation nothing The assertion that says nothing e static Poly_Con_Relation is_disjoint The polyhedron and the set of points satisfying the constraint are disjoint static Poly_Con_Relation strictly_intersects The polyhedron intersects the set of points satisfying the constraint but it
41. 97 parma_polyhedra_library Variables_Set A java util TreeSet of variables indexes 97 8 Module Documentation 8 1 Java Language Interface Namespaces package parma_polyhedra_library The PPL Java interface package Classes e class parma_polyhedra_library Artificial_Parameter_Sequence A seguence of artificial parameters enum parma_polyhedra_library Bounded_Integer_Type_Overflow Overflow behavior of bounded integer types enum parma_polyhedra_library Bounded_Integer_Type_Representation Representation of bounded integer types enum parma_polyhedra_library Bounded_Integer_Type_Width Widths of bounded integer types e class parma_polyhedra_library By_Reference lt T gt An utility class implementing mutable and non mutable call by reference The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 8 1 Java Language Interface 23 e class parma_polyhedra library Coefficient A PPL coefficient enum parma_polyhedra_library Complexity_Class Possible Complexities class parma_polyhedra_library Congruence A linear congruence e class parma_polyhedra_library Congruence_System A system of congruences e class parma_polyhedra_library Constraint A linear eguality or ineguality e class parma_polyhedra_library Constraint_System A system of constraints e enum parma_polyhedra_library Control_Parameter_Name Names of MIP problems control param
42. An MIP_Problem_ Status flag indicating the outcome of the optimization attempt unfeasible un bounded or optimized problem 10 35 3 9 native void parma_polyhedra_library MIP_Problem evaluate_objective_function Generator evaluating point Coefficient num Coefficient den Sets num and den so that 77 Parameters num is the result of evaluating the objective function on evaluating_point point evaluating_ The point on which the objective function will be evaluated num On exit wi ll contain the numerator of the evaluated value den On exit wi ll contain the denominator of the evaluated value The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information Ni 58 CONTENTS Exceptions Invalid_Argument_ Thrownif this and evaluat ing_point are dimension incompatible or if the Exception generator evaluating_point is not a point 10 35 3 10 native Generator parma_polyhedra_library MIP_Problem feasible_point Returns a feasible point for this if it exists Exceptions Domain_Error_Exception Thrown if the MIP problem is not satisfiable 10 35 3 11 native Generator parma_polyhedra_library MIP_Problem optimizing point Returns an optimal point for this if it exists Exceptions Domain_Error_Exception Thrown if this doesn t not have an optimizing point i e if the MIP problem is
43. CATIONS You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above provided that you release the Modified Version under precisely this License with the Modified Ver sion filling the role of the Document thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it In addition you must do these things in the Modified Version The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 14 CONTENTS A Use in the Title Page and on the covers if any a title distinct from that of the Document and from those of previous versions which should if there were any be listed in the History section of the Document You may use the same title as a previous version if the original publisher of that version gives permission B List on the Title Page as authors one or more persons or entities responsible for authorship of the modifications in the Modified Version together with at least five of the principal authors of the Document all of its principal authors if it has fewer than five unless they release you from this reguirement e C State on the Title page the name of the publisher of the Modified Version as the publisher e D Preserve all the copyright notices of the Document E Add an appropriate copyright notice for your modifications adjacent to the other copyright notices e F
44. Class Index 6 1 Class Hierarchy 7 Class Index Pel Class List 8 Module Documentation 8 1 Java Language Dnteriace sc Pa RR RR GL FOR FOR Y DG as 9 Namespace Documentation 9 1 Packape parma _polyhedra_library lt o o ee R88 10 Class Documentation 10 1 parma_polyhedra library Artificial Parameter Class Reference 10 2 parma_polyhedra library Artificial Parameter_Seguence Class Reference 10 3 parma_polyhedra_library Bounded_Integer_Type_Overflow Enum Reference 10 4 parma_polyhedra_library Bounded_Integer_Type_Representation Enum Reference 10 5 parma_polyhedra_library Bounded_Integer_Type_Width Enum Reference 10 6 parma_polyhedra_library By_Reference lt T gt Class Reference 10 7 parma_polyhedra_library C_Polyhedron Class Reference 10 8 parma_polyhedra library Coefficient Class Reference lt lt 10 9 parma_polyhedra_library Complexity_Class Enum Reference 10 10 parma_polyhedra_library Congruence Class Reference 10 11 parma_polyhedra_library Congruence_System Class Reference 10 12 parma_polyhedra_library Constraint Class Reference 10 13 parma_polyhedra_library Constraint_System Class Reference 10 14 parma_polyhedra_library Control_Parameter_Name Enum Reference 10 15 parma_polyhedra_library Control_Parameter_Value Enum Reference 10 16 parma_
45. E QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU SHOULD THE PROGRAM PROVE DEFECTIVE YOU ASSUME THE COST OF ALL NECESSARY SERVICING REPAIR OR CORRECTION 16 Limitation of Liability IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER OR ANY OTHER PARTY WHO MODIFIES AND OR CONVEYS THE PROGRAM AS PERMITTED ABOVE BE LIABLE TO YOU FOR DAMAGES INCLUDING ANY GENERAL SPECIAL INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM INCLUDING BUT NOT LIMITED TO LOSS OF D ATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES 17 Interpretation of Sections 15 and 16 If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program and you want it to be of the greatest possible use to the public the best way to achieve this is to make it free software which everyone can redis
46. ELY NO WARRANTY for details type show w This is free software and you are welcome to redistribute it under certain conditions type show c for details The hypothetical commands show w and show c should show the appropriate parts of the General Public License Of course your program s commands might be different for a GUI interface you would use an about box You should also get your employer if you work as a programmer or school if any to sign a copyright disclaimer for the program if necessary For more information on this and how to apply and follow the GNU GPL seehttp www gnu org licenses The GNU General Public License does not permit incorporating your program into proprietary programs If your program is a subroutine library you may consider it more useful to permit linking proprietary applica tions with the library If this is what you want to do use the GNU Lesser General Public License instead of this License But first please read http www gnu org philosophy why not lgpl html 3 GNU Free Documentation License Version 1 2 November 2002 Copyright C 2000 2001 2002 Free Software Foundation Inc 51 Franklin St Fifth Floor Boston MA 02110 1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document but changing it is not allowed 0 PREAMBLE The purpose of this License is to make a manual textbook or other functional and use
47. H79 widening computation by also enforcing those constraints in cs that are satisfied by all the points of this plus all the constraints of the form a lt r and Ex lt r with r Q that are satisfied by all the points of this Additional Inherited Members 10 53 1 Detailed Description The Java base class for C and NNC convex polyhedra The base class Polyhedron provides declarations for most of the methods common to classes C_Polyhedron and NNC_Polyhedron Note that the user should always use the derived classes Moreover C and NNC polyhedra can not be freely interchanged as specified in the main manual most library functions require their arguments to be topologically compatible 10 53 2 Member Function Documentation 10 53 2 1 native boolean parma_polyhedra_library Polyhedron constrains Variable var Returns t rue if and only if var is constrained in this Exceptions Invalid_Argument_ Thrown if var is not a space dimension of this Exception 10 53 2 2 native boolean parma polyhedra library Polyhedron bounds from above Linear_Expression expr Returns true if and only if expr is bounded fromabovein this Exceptions Invalid_Argument_ Thrown if expr and this are dimension incompatible Exception The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 82 CONTENTS 10 53 2 3 native boolean parma_polyhedra_librar
48. IP_Problem is optimizable resp feasible By exploiting the incremental nature of the solver it is possible to reuse part of the computational work already done when solving variants of a given MIP_Problem currently incremental resolution supports the addition of space dimensions the addition of constraints the change of objective function and the change of optimization mode 10 35 2 Constructor amp Destructor Documentation 10 35 2 1 parma_polyhedra_library MIP_Problem MIP_Problem long dim inline Builds a trivial MIP problem A trivial MIP problem requires to maximize the objective function 0 on a vector space under no constraints at all the origin of the vector space is an optimal solution Parameters dim The dimension of the vector space enclosing this Exceptions Length_Error_Exception Thrown if dim exceeds max_space_dimension 10 35 2 2 parma_polyhedra_library MIP_Problem MIP_Problem long dim Constraint_System cs Linear_Expression obj Optimization_Mode mode inline Builds an MIP problem having space dimension dim from the constraint system cs the objective function obj and optimization mode mode The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 56 CONTENTS Parameters dim The dimension of the vector space enclosing this cs The constraint system defining the feasible region
49. Include immediately after the copyright notices a license notice giving the public permission to use the Modified Version under the terms of this License in the form shown in the Addendum below e G Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document s license notice H Include an unaltered copy of this License I Preserve the section Entitled History Preserve its Title and add to it an item stating at least the title year new authors and publisher of the Modified Version as given on the Title Page If there is no section Entitled History in the Document create one stating the title year authors and publisher of the Document as given on its Title Page then add an item describing the Modified Version as stated in the previous sentence J Preserve the network location if any given in the Document for public access to a Transpar ent copy of the Document and likewise the network locations given in the Document for previous versions it was based on These may be placed in the History section You may omit a network location for a work that was published at least four years before the Document itself or if the original publisher of the version it refers to gives permission K For any section Entitled Acknowledgements or Dedications Preserve the Title of the section and preserve in the section all the substance and tone of each of the contributor ack
50. Invalid_Argument_ Thrown if this and y are dimension incompatible Exception 10 7 3 2 static native Pair lt C_Polyhedron Pointset_Powerset_NNC_Polyhedron gt parma_polyhedra_library C_Polyhedron linear_partition C_Polyhedron p C_Polyhedron q static Partitions q with respect to p Let p and q be two polyhedra The function returns a pair object r such that e r first is the intersection of p and q r second has the property that all its elements are pairwise disjoint and disjoint from p e the set theoretical union of r first with all the elements of r second gives q i e r is the representation of a partition of q The documentation for this class was generated from the following file Fake_Class_for_Doxygen java 10 8 parma_polyhedra_library Coefficient Class Reference A PPL coefficient Public Member Functions Coefficient int i Builds a coefficient valued i Coefficient long 1 Builds a coefficient valued 1 Coefficient BigInteger bi Builds a coefficient valued bi Coefficient String s Builds a coefficient from the decimal representation in s The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information G 34 CONTENTS Coefficient Coefficient c Builds a copy of c e String toString Returns a String representation of this Biglnteger getBiglnteger Returns the value held by this Static Public Member Funct
51. License with respect to the covered work and you disclaim any intention to limit operation or modification of the work as a means of enforcing against the work s users your or third parties legal rights to forbid circumvention of technological measures 4 Conveying Verbatim Copies You may convey verbatim copies of the Program s source code as you receive it in any medium provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice keep intact The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 2 GNU General Public License 5 all notices stating that this License and any non permissive terms added in accord with section 7 apply to the code keep intact all notices of the absence of any warranty and give all recipients a copy of this License along with the Program You may charge any price or no price for each copy that you convey and you may offer support or warranty protection for a fee 5 Conveying Modified Source Versions You may convey a work based on the Program or the modifications to produce it from the Program in the form of source code under the terms of section 4 provided that you also meet all of these conditions a The work must carry prominent notices stating that you modified it and giving a relevant date b The work must carry prominent notices stating that it is released under this License and an
52. Node An internal node of the PIP solution tree 64 parma_polyhedra_library PIP_Problem A Parametric Integer Programming problem 65 parma_polyhedra_library PIP_Problem_Control_Parameter_Name Names of PIP problems control parameters 69 parma_polyhedra_library PIP_Problem_Control_Parameter_Value Possible values for PIP problems control parameters 69 parma_polyhedra_library PIP_Problem_Status Possible outcomes of the PIP_Problem solver 70 parma_polyhedra_library PIP_Solution_Node A leaf node of the PIP solution tree 70 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 22 CONTENTS parma_polyhedra_library PIP_Tree_Node A node of the PIP solution tree 71 parma_polyhedra_library Pointset_Powerset_C_Polyhedron A powerset of C_Polyhedron objects 73 parma_polyhedra_library Pointset_Powerset_C_Polyhedron_Iterator An iterator class for the disjuncts of a Pointset_Powerset_C_Polyhedron 74 parma_polyhedra_library Poly_Con_Relation The relation between a polyhedron and a constraint 25 parma_polyhedra_library Poly_Gen_Relation The relation between a polyhedron and a generator 76 parma_polyhedra_library Polyhedron The Java base class for C and NNC convex polyhedra 76 parma_polyhedra_library Relation_Symbol Relation symbols 96 parma_polyhedra_library Timeout_Exception Exceptions caused by timeout expiring 96 parma_polyhedra_library Variable A dimension of the vector space
53. Reference A leaf node of the PIP solution tree The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 48 parma_polyhedra_library PIP_Tree_Node Class Reference 71 Inheritance diagram for parma_polyhedra_library PIP_Solution_Node parma_polyhedra library PIP_Tree_ Node parma_polyhedra_library PIP_Solution_Node Public Member Functions e native Linear_Expression parametric_values Variable var Returns the parametric expression of the values of variable var in solution node this 10 47 1 Detailed Description A leaf node of the PIP solution tree 10 47 2 Member Function Documentation 10 47 2 1 native Linear_Expression parma_polyhedra_library PIP_Solution Node parametric values Variable var Returns the parametric expression of the values of variable var in solutionnodethis The returned parametric expression will only refer to problem or artificial parameters Parameters var The variable being gueried S The documentation for this class was generated from the following file PIP_Solution_Node java 10 48 parma_polyhedra_library PIP_Tree_Node Class Reference A node of the PIP solution tree The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 72 CONTENTS Inheritance diagram for parma_polyhedra_library PIP_Tree_Node parma_polyhedra_library PIP_Dec
54. Returns t rue if and only if this is not empty and expr is bounded from above in this in which case the supremum value and a point where expr reaches it are computed native boolean minimize Linear_Expression expr Coefficient inf_n Coefficient inf_d By_ Reference lt Boolean gt minimum Generator g Returns t rue if and only if this is not empty and expr is bounded from below in this in which case the infimum value and a point where expr reaches it are computed native Poly_Con_Relation relation_with Constraint c Returns the relations holding between the polyhedron this and the constraint c native Poly_Gen_Relation relation_with Generator c Returns the relations holding between the polyhedron t his and the generator g native Poly_Con_Relation relation_with Congruence c Returns the relations holding between the polyhedron t his and the congruence c native boolean contains Polyhedron y Returns t rue if and only if this contains y native boolean strictly_contains Polyhedron y Returns t rue if and only if this Strictly contains y native boolean is_disjoint_from Polyhedron y Returns t rue if and only if this and y are disjoint native boolean equals Polyhedron y Returns t rue if and only if this and y are equal boolean equals Object y Returns t rue if and only if this and y are equal native int hashCode Returns a hash code for this native long external_memory_in_bytes Returns the size in bytes of the memory managed by
55. TENTS original version will prevail If a section in the Document is Entitled Acknowledgements Dedications or History the requirement section 4 to Preserve its Title section 1 will typically reguire changing the actual title 9 TERMINATION You may not copy modify sublicense or distribute the Document except as expressly provided for under this License Any other attempt to copy modify sublicense or distribute the Document is void and will automatically terminate your rights under this License However parties who have received copies or rights from you under this License will not have their licenses terminated so long as such parties remain in full compliance 10 FUTURE REVISIONS OF THIS LICENSE The Free Software Foundation may publish new revised versions of the GNU Free Documentation License from time to time Such new versions will be similar in spirit to the present version but may differ in detail to address new problems or concerns Seehttp www gnu org copyleft Each version of the License is given a distinguishing version number If the Document specifies that a particular numbered version of this License or any later version applies to it you have the option of following the terms and conditions either of that specified version or of any later version that has been published not as a draft by the Free Software Foundation If the Document does not specify a version number of this License you may choo
56. _Error_Exception Class Reference Exceptions due to overflow errors Public Member Functions Overflow_Error_Exception String s Constructor 10 38 1 Detailed Description Exceptions due to overflow errors These exceptions can be obtained when the library has been configured to use integer coefficients having bounded size The documentation for this class was generated from the following file e Overflow_Error_Exception java 10 39 parma_polyhedra_library Pair lt K V gt Class Reference A pair of values of type K and V The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 60 CONTENTS Public Member Functions K getFirst Returns the object of type K e V getSecond Returns the object of type V 10 39 1 Detailed Description A pair of values of type K and V An object of this class holds an ordered pair of values of type K and V The documentation for this class was generated from the following file Pair java 10 40 parma polyhedra library Parma_Polyhedra Library Class Reference A class collecting library level functions Static Public Member Functions Library initialization and finalization e static native void initialize_library Initializes the Parma Polyhedra Library e static native void finalize_library Finalizes the Parma Polyhedra Library Version Checking e static native int version_major Returns the
57. _Expression_Times java 10 32 parma_polyhedra_library Linear_Expression_Unary_Minus Class Reference The negation of a linear expression Inheritance diagram for parma_polyhedra_library Linear_Expression_Unary_Minus parma_polyhedra_library Linear_Expression parma_polyhedra_library Linear_Expression_Unary_Minus Public Member Functions Linear_Expression_Unary_Minus Linear_Expression x Builds an object that represents the negation of the copy x Linear_Expression argument Returns the value that this negates Linear_Expression_Unary_Minus clone Builds a copy of this Protected Attributes Linear_Expression arg The value that this negates The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 52 CONTENTS 10 32 1 Detailed Description The negation of a linear expression The documentation for this class was generated from the following file e Linear_Expression_Unary_Minus java 10 33 parma_polyhedra_library Linear_Expression_Variable Class Reference A linear expression built from a variable Inheritance diagram for parma_polyhedra_library Linear_Expression_Variable parma_polyhedra_library Linear_Expression parma_polyhedra_library Linear_Expression_Variable Public Member Functions Linear_Expression_Variable Variable v Builds the object associated to the copy of v Variable argument Returns the variable repre
58. ak of free software we are referring to freedom not price Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software and charge for them if you wish that you receive source code or can get it if you want it that you can change the software or use pieces of it in new free programs and that you know you can do these things To protect your rights we need to prevent others from denying you these rights or asking you to surrender the rights Therefore you have certain responsibilities if you distribute copies of the software or if you modify it responsibilities to respect the freedom of others For example if you distribute copies of such a program whether gratis or for a fee you must pass on to the recipients the same freedoms that you received You must make sure that they too receive or can get the source code And you must show them these terms so they know their rights Developers that use the GNU GPL protect your rights with two steps 1 assert copyright on the software and 2 offer you this License giving you legal permission to copy distribute and or modify it For the developers and authors protection the GPL clearly explains that there is no warranty for this free software For both users and authors sake the GPL requires that modified versions be marked as changed so that their problems will not be attributed erroneously to authors of previous versions
59. arma_polyhedra_library Pointset_Powerset_C_Polyhedron Class Reference 73 10 48 2 Member Function Documentation 10 48 2 1 native Constraint_System parma_polyhedra_library PIP_Tree_Node constraints Returns the system of parameter constraints controlling the PIP_Tree_Node The indices in the constraints are the same as the original variables and parameters Coefficients in indices corresponding to variables always are zero The documentation for this class was generated from the following file PIP_Tree_Node java 10 49 parma_polyhedra_library Pointset_Powerset_C_Polyhedron Class Reference A powerset of C_Polyhedron objects Inherits parma_polyhedra_library PPL_Object Public Member Functions Ad Hoc Functions for Pointset_Powerset domains native void omega reduce Drops from the sequence of disjuncts in this all the non maximal elements so that a non redundant powerset if obtained native long size Returns the number of disjuncts native boolean geometrically_covers Pointset_Powerset_C_Polyhedron y Returns t rue if and only if this geometrically covers y native boolean geometrically_eguals Pointset_Powerset_C_Polyhedron y Returns true if and only if this is geometrically egual to y native Pointset_Powerset_C_Polyhedron_Iterator begin_iterator Returns an iterator referring to the beginning of the sequence of disjuncts of this native Pointset_Powerset_C_Polyhedron_Iterator end_iterator Return
60. ator var The left hand side variable of the generalized affine relation relsym The relation symbol expr The numerator of the right hand side affine expression denominator The denominator of the right hand side affine expression optional argument with de fault value 1 Exceptions Invalid_Argument_ Thrown if denominator is zero or if expr and this are dimension Exception incompatible or if var is not a space dimension of this or if this is a C_ Polyhedron and relsymis a strict relation symbol The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information I 90 CONTENTS 10 53 2 35 native void parma_polyhedra_library Polyhedron generalized _affine image Linear_Expression hs Relation_Symbol relsym Linear_Expression rhs Assigns to this the image of this with respect to the generalized affine relation lhs gt a rhs where D lt is the relation symbol encoded by relsym Parameters lhs The left hand side affine expression relsym The relation symbol rhs The right hand side affine expression Exceptions Invalid_Argument_ Thrown if this is dimension incompatible with lhs or rhs or if this is a Exception C_Polyhedron and re1 sym is a strict relation symbol 10 53 2 36 native void parma_polyhedra_library Polyhedron generalized_affine_preimage Linear_Expression
61. ble 10 53 2 22 native void parma_polyhedra library Polyhedron refine_with constraints Constraint_System cs Uses a copy of the constraints in cs to refine this Parameters cs Contains the constraints used to refine the system of constraints of this Exceptions Invalid_Argument_ Exception Thrown if this and cs are dimension incompatible 10 53 2 23 native void parma_polyhedra_library Polyhedron refine_with_congruences Congruence_System cgs Uses a copy of the congruences in cgs to refine this Parameters cgs Contains the congruences used to refine the system of constraints of this Exceptions Invalid_Argument_ Exception Thrown if this and cgs are dimension incompatible The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 53 parma_polyhedra_library Polyhedron Class Reference 87 10 53 2 24 native void parma_polyhedra_library Polyhedron intersection assign Polyhedron y Assigns to this the intersection of this and y The result is not guaranteed to be minimized Exceptions Invalid_Argument_ Thrown if this and y are topology incompatible or dimension incompatible Exception 10 53 2 25 native void parma_polyhedra_library Polyhedron upper_bound_assign Polyhedron y Assigns to this the upper bound of this and y Exceptions Invalid_Argumen
62. blem based on variations of the revised simplex method and on Gomory cut generation techniques The solution for a PIP problem is the lexicographic minimum of the integer points of the feasible region expressed in terms of the parameters As the problem to be solved only involves non negative variables and parameters the problem will always be either unfeasible or optimizable As the feasibility and the solution value of a PIP problem depend on the values of the parameters the solution is a binary decision tree dividing the context parameter set into subsets The tree nodes are of two kinds Decision nodes These are internal tree nodes encoding one or more linear tests on the parameters if all the tests are satisfied then the solution is the node s true child otherwise the solution is the node s false child e Solution nodes These are leaf nodes in the tree encoding the solution of the problem in the current context subset where each variable is defined in terms of a linear expression of the parameters Solution nodes also optionally embed a set of parameter constraints if all these constraints are satisfied the solution is described by the node otherwise the problem has no solution It may happen that a decision node has no false child This means that there is no solution if at least one of the corresponding constraints is not satisfied Decision nodes having two or more linear tests on the parameters cannot have a false child
63. covered work This License acknowledges your rights of fair use or other eguivalent as provided by copyright law You may make run and propagate covered works that you do not convey without conditions so long as your license otherwise remains in force You may convey covered works to others for the sole purpose of having them make modifications exclusively for you or provide you with facilities for running those works provided that you comply with the terms of this License in conveying all material for which you do not control copyright Those thus making or running the covered works for you must do so exclusively on your behalf under your direction and control on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you Conveying under any other circumstances is permitted solely under the conditions stated below Sublicens ing is not allowed section 10 makes it unnecessary 3 Protecting Users Legal Rights From Anti Circumvention Law No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996 or similar laws prohibiting or restricting circumvention of such measures When you convey a covered work you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this
64. ct long m Adds m new space dimensions to the polyhedron and does not embed it in the new vector space The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information Ni 92 CONTENTS Parameters m The number of space dimensions to add Exceptions Length_Error_Exception Thrown if adding m new space dimensions would cause the vector space to exceed dimension max_space_dimension 10 53 2 43 native void parma_polyhedra_library Polyhedron concatenate_assign Polyhedron y Assigns to this the concatenation of this and y taken in this order Exceptions Invalid_Argument_ Thrown if this and y are topology incompatible Exception Length_Error_Exception Thrown if the concatenation would cause the vector space to exceed dimension max_space_dimension 10 53 2 44 native void parma_polyhedra_library Polyhedron remove_space_dimensions Variables_Set vars Removes all the specified dimensions from the vector space Parameters vars The set of Variable objects corresponding to the space dimensions to be removed Exceptions Invalid_Argument_ Thrown if this is dimension incompatible with one of the Variable objects con Exception tained in vars 10 53 2 45 native void parma_polyhedra_library Polyhedron remove_higher_space_dimensions long new_dimension Removes the higher dimensions o
65. ction has an empty codomain i e it is always undefined native long max_in_codomain Returns the maximum value that belongs to the codomain of the partial function native long maps long i If the partial function is defined on index i returns its value native void free Releases all resources managed by this also resetting it to a null reference Protected Member Functions native void finalize Releases all resources managed by this 10 41 1 Detailed Description A partial function on space dimension indices This class is used in order to specify how space dimensions should be mapped by methods named map_ space_dimensions The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 64 CONTENTS 10 41 2 Member Function Documentation 10 41 2 1 native boolean parma_polyhedra_library Partial Function has empty codomain Returns true if and only if the partial function has an empty codomain i e it is always undefined This method will always be called before the other methods of the interface Moreover if true is returned then none of the other interface methods will be called 10 41 2 2 native long parma_polyhedra library Partial Function maps long i If the partial function is defined on index i returns its value The function returns a negative value if the partial function is not defined on domain value i The documentation for this clas
66. d not to enforce a patent such as an express permission to practice a patent or covenant not to sue for patent infringement To grant such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 2 GNU General Public License 9 If you convey a covered work knowingly relying on a patent license and the Corresponding Source of the work is not available for anyone to copy free of charge and under the terms of this License through a publicly available network server or other readily accessible means then you must either 1 cause the Corresponding Source to be so available or 2 arrange to deprive yourself of the benefit of the patent li cense for this particular work or 3 arrange in a manner consistent with the reguirements of this License to extend the patent license to downstream recipients Knowingly relying means you have actual knowl edge that but for the patent license your conveying the covered work in a country or your recipient s use of the covered work in a country would infringe one or more identifiable patents in that country that you have reason to believe are valid If pursuant to or in connection with a single transaction or arrangement you convey or propagate by procuring conveyance of a covered work and grant a patent license to s
67. e terms of the GNU Free Documentation License Version 1 2 or any later version published by the Free Software Foundation with no Invariant Sections no Front Cover Texts and no Back Cover Texts A copy of the license is included in the section entitled GNU Free Documentation License The PPL is free software you can redistribute it and or modify it under the terms of the GNU General Public License as published by the Free Software Foundation either version 3 of the License or at your option any later version A copy of the license is included in the section entitled GNU GENERAL PUBLIC LICENSE The PPL is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the GNU General Public License for more details If you have not received a copy of one or both the above mentioned licenses along with the PPL write to the Free Software Foundation Inc 51 Franklin Street Fifth Floor Boston MA 02111 1307 USA For the most up to date information see the Parma Polyhedra Library site http bugseng com products ppl bugSeng The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information CONTENTS Contents 1 Main Page 2 GNU General Public License 3 GNU Free Documentation License 4 Module Index 4 1 Modules 5 Namespace Index Namespace List 6
68. e variable corresponding to the Cartesian axis of index i intid Returns the index of the Cartesian axis associated to this e int compareTo Variable v Returns a negative number if this comes first than v a zero if this eguals v a positive number if if this comes first than v 10 56 1 Detailed Description A dimension of the vector space An object of the class Variable represents a dimension of the space that is one of the Cartesian axes Variables are used as basic blocks in order to build more complex linear expressions Each variable is identified by a non negative integer representing the index of the corresponding Cartesian axis the first axis has index 0 10 56 2 Constructor amp Destructor Documentation 10 56 2 1 parma polyhedra library Variable Variable inti inline Builds the variable corresponding to the Cartesian axis of index i Exceptions RuntimeErrorException Thrown if i is has negative value The documentation for this class was generated from the following file e Variable java 10 57 parma_polyhedra_library Variables_Set Class Reference A java util TreeSet of variables indexes The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 98 CONTENTS Public Member Functions Variables_Set Builds the empty set of variable indexes 10 57 1 Detailed Description A java util TreeSet of variables indexe
69. e void parma_polyhedra_library MIP_Problem add_constraint Constraint c Adds a copy of constraint c to the MIP problem The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 35 parma_polyhedra_li brary MIP_Problem Class Reference 57 Exceptions Invalid_Argument_ Thrown if the constraint c is a strict inequality or if its space dimension is strictly Exception greater than the space dimension of this 10 35 3 5 native void parma_polyhedra_library MIP_Problem add_constraints Constraint_System cs Adds a copy of the constraints in cs to the MIP problem Exceptions Invalid_Argument_ Thrown if the constraint system cs contains any strict inequality or if its space Exception dimension is strictly greater than the space dimension of this 10 35 3 6 native void parma_polyhedra _library MIP_Problem set_objective function Linear_Expression obj Sets the objective function to obj Exceptions Invalid_Argument_ Exception Thrown if the space dimension of obj is strictly greater than the space dimension of this 10 35 3 7 native boolean parma_polyhedra_library MIP_Problem is_satisfiable Checks satisfiability of this Returns true if and only if the MIP problem is satisfiable 10 35 3 8 native MIP_Problem_Status parma_polyhedra_library MlP_Problem solve Optimizes the MIP problem Returns
70. ear expression in this Coefficient divisor If this is either a point or a closure point returns its divisor native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string representation of this Static Public Member Functions static Generator closure_point Linear_Expression e Coefficient d Returns the closure point at e d static Generator line Linear_Expression e Returns the line of direction e e static Generator point Linear Expression e Coefficient d Returns the point at e d static Generator ray Linear_Expression e Returns the ray of direction e 10 18 1 Detailed Description A line ray point or closure point An object of the class Generator is one of the following aline aray a point a closure point 10 18 2 Member Function Documentation 10 18 2 1 static Generator parma_polyhedra_library Generator closure_point Linear _Expression e Coefficient d inline static Returns the closure point at e d Exceptions The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 40 CONTENTS RuntimeErrorException Thrown if d is zero 10 18 2 2 static Generator parma_polyhedra_library Generator line Linear_Expression e inline static Returns the line of direction e Exceptions RuntimeErrorException
71. ear_Expression ub_expr Coefficient denominator lb_expr lt var Pa denominator Assigns to this the image of this with respect to the bounded affine relation ub_ expr s denominator u amp r gt native void bounded_affine_preimage Variable var Linear_Expression lb_expr Linear_Expression ub_expr Coefficient denominator Assigns to this the preimage of this with respect to the bounded affine relation a lt ub_expr denominator native void generalized_affine_image Variable var Relation_Symbol relsym Linear_Expression expr Coefficient denominator var lt expr Assigns to this the image of this with respect to the generalized affine relation var gt gen where bd is the relation symbol encoded by relsym native void generalized_affine_preimage Variable var Relation_Symbol relsym Linear_Expression expr Coefficient denominator expr Assigns to this the preimage of thi s with respect to the generalized affine relation var b9 gc ea where bd is the relation symbol encoded by relsym native void generalized_affine_image Linear_Expression lhs Relation_Symbol relsym Linear_ Expression rhs Assigns to this the image of this with respect to the generalized affine relation lhs gt a rhs where x is the relation symbol encoded by relsym native void generalized_affine_preimage Linear_Expression lhs Relation_Symbol relsym Linear _Expression rhs The PPL Java Language Interface User s Man
72. ed to be included by reference in this License but only as regards disclaiming warranties any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License 2 VERBATIM COPYING You may copy and distribute the Document in any medium either commercially or noncommercially provided that this License the copyright notices and the license notice saying this License applies to the Document are reproduced in all copies and that you add no other conditions whatsoever to those of this License You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute However you may accept compensation in exchange for copies If you distribute a large enough number of copies you must also follow the conditions in section 3 You may also lend copies under the same conditions stated above and you may publicly display copies 3 COPYING IN OUANTITY If you publish printed copies or copies in media that commonly have printed covers of the Document numbering more than 100 and the Document s license notice reguires Cover Texts you must enclose the copies in covers that carry clearly and legibly all these Cover Texts Front Cover Texts on the front cover and Back Cover Texts on the back cover Both covers must also clearly and legibly identify you as the publisher of these copies The front cover must present the full title with all words of the t
73. edra or add constraints or generators to a representation of a PPL polyhedron the polyhedra referenced and any constraints or generators in the call should follow all the space dimension compatibility rules stated in Section Representations of Convex Polyhedra of the main PPL user manual As explained above a polyhedron has a fixed topology C or NNC that is determined at the time of its initialization All subseguent operations on the polyhedron must respect all the topological compatibility rules stated in Section Representations of Convex Polyhedra of the main PPL user manual 2 GNU General Public License Version 3 29 June 2007 Copyright C 2007 Free Software Foundation Inc http fsf org Everyone is permitted to copy and distribute verbatim copies of this license document but changing it is not allowed Preamble The GNU General Public License is a free copyleft license for software and other kinds of works The licenses for most software and other practical works are designed to take away your freedom to share and change the works By contrast the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program to make sure it remains free software for all its users We the Free Software Foundation use the GNU General Public License for most of our software it applies also to any other work released this way by its authors You can apply it to your programs too When we spe
74. edron 93 Polyhedron 89 Polyhedron 89 90 Pointset_Powerset_ C_Polyhedron_Iterator 75 grid_line parma_polyhedra_library grid_point parma_polyhedra_library H79_widening_assign parma_polyhedra_library has_empty_codomain Grid_Generator 42 Grid_Generator 42 Polyhedron 94 C_Polyhedron parma_polyhedra_library C_Polyhedron 32 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information parma_polyhedra_library Partial_Function 64 hashCode 100 INDEX parma_polyhedra library initialize_library Polyhedron 84 parma_polyhedra_library Bounded_Integer_Type_Width 29 parma_polyhedra_library By_Reference lt T gt 30 parma_polyhedra_library Parma_Polyhedra_Libr iifna_polyhedra_library C_Polyhedron 30 61 intersection_assign parma_polyhedra_library is_disjoint_from parma_polyhedra_library is_satisfiable parma_polyhedra library parma_polyhedra library Java Language Interface 22 Polyhedron 86 Polyhedron 84 MIP Problem 57 PIP_Problem 68 limited_BHRZ03_extrapolation_assign parma_polyhedra library Polyhedron 94 limited_H79_extrapolation_assign parma_polyhedra_library line parma_polyhedra_library linear_partition parma_polyhedra_library MIP_Problem parma_polyhedra_library map_space_dimensions parma_polyhedra_library maps parma_polyhedra_library maximize par
75. eference parma_polyhedra_library Pointset_Powerset_C_Polyhedron_Iterator Class Reference parma_polyhedra_library Poly_Con_Relation Class Reference parma_polyhedra_library Poly_Gen_Relation Class Reference parma_polyhedra_library Polyhedron Class Reference parma_polyhedra_library Relation_Symbol Enum Reference parma_polyhedra_library Timeout_Exception Class Reference parma_polyhedra_library Variable Class Reference parma_polyhedra_library Variables_Set Class Reference The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 1 Main Page 1 1 Main Page The Parma Polyhedra Library comes eguipped with an interface for the Java language The Java interface provides access to the numerical abstractions convex polyhedra BD shapes octagonal shapes etc im plemented by the PPL library A general introduction to the numerical abstractions their representation in the PPL and the operations provided by the PPL is given in the main PPL user manual Here we just describe those aspects that are specific to the Java interface In the sequel prefix is the path prefix under which the library has been installed typically usr or usr local Overview Here is a list of notes with general information and advice on the use of the Java interface When the Parma Polyhedra Library is co
76. emove_higher_space_dimensions long new_dimension Removes the higher dimensions of the vector space so that the resulting space will have dimension new _ dimension native void expand_space_dimension Variable var long m Creates m copies of the space dimension corresponding to var native void fold_space_dimensions Variables_Set vars Variable dest Folds the space dimensions in vars into dest native void map_space_dimensions Partial_Function pfunc Remaps the dimensions of the vector space according to a partial function Ad Hoc Functions for C or NNC Polyhedra The functions listed here below being specific of the polyhedron domains do not have a correspondence in other semantic geometric descriptions native Generator_System generators Returns the system of generators native Generator_System minimized_generators Returns the system of generators with no redundant generator native void add_generator Generator g Adds a copy of generator g to the system of generators of this without minimizing the result e native void add generators Generator_System gs Adds a copy of the generators in gs to the system of generators of thi s without minimizing the result native void poly_hull_assign Polyhedron y Same as upper_bound_assign native void poly_difference_assign Polyhedron y Same as difference_assign e native void BHRZ03_widening_assign Polyhedron y By_Reference lt Integer gt tp
77. enominator Parameters var The variable updated by the affine relation lb_expr The numerator of the lower bounding affine expression ub_expr The numerator of the upper bounding affine expression denominator tional argument with default value 1 The common denominator for the lower and upper bounding affine expressions op Exceptions Invalid_Argument_ Thrown if denominator is zero or if 1b_expr resp ub_expr and this Exception are dimension incompatible or if var is not a space dimension of this 10 53 2 32 native void parma_polyhedra_library Polyhedron bounded_affine_preimage Variable var Assigns to this the preimage of this with respect to the bounded affine relation ub_expr denominator Linear_Expression b_expr Linear_Expression ub_expr Coefficient denominator lb_expr denominator lt var lt The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 53 parma_polyhedra_library Polyhedron Class Reference 89 Parameters var The variable updated by the affine relation lb_expr The numerator of the lower bounding affine expression ub_expr The numerator of the upper bounding affine expression denominator The common denominator for the lower and upper bounding affine expressions op tional argument with default value 1 Exceptions
78. entation for this class was generated from the following file Constraint java 10 13 parma_polyhedra_library Constraint System Class Reference A system of constraints Public Member Functions e Constraint_System Default constructor builds an empty system of constraints native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string representation of this 10 13 1 Detailed Description A system of constraints An object of the class Constraint_System is a system of constraints i e a multiset of objects of the class Constraint The documentation for this class was generated from the following file e Constraint_System java 10 14 parma polyhedra library Control Parameter Name Enum Reference Names of MIP problems control parameters Public Attributes PRICING The pricing rule 10 14 1 Detailed Description Names of MIP problems control parameters The documentation for this enum was generated from the following file Control_Parameter_Name java 10 15 parma_polyhedra_library Control_Parameter_Value Enum Reference Possible values for MIP problem s control parameters The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 38 CONTENTS Public Attributes PRICING_STEEPEST_EDGE_FLOAT Steepest edge pricing method using floating points default
79. epresentation Representation of bounded integer types enum Bounded_Integer_Type_Width Widths of bounded integer types e class By_Reference lt T gt An utility class implementing mutable and non mutable call by reference class Coefficient A PPL coefficient enum Complexity_Class Possible Complexities class Congruence A linear congruence e class Congruence_System A system of congruences class Constraint A linear eguality or ineguality e class Constraint_System A system of constraints enum Control_Parameter_Name Names of MIP problems control parameters enum Control_Parameter_Value Possible values for MIP problem s control parameters enum Degenerate_Element Kinds of degenerate abstract elements e class Domain_Error_Exception Exceptions caused by domain errors class Polyhedron The Java base class for C and NNC convex polyhedra class C_Polyhedron The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 26 CONTENTS A topologically closed convex polyhedron class Pointset_Powerset_C_Polyhedron A powerset of C_Polyhedron objects class Pointset_Powerset_C_Polyhedron_Iterator An iterator class for the disjuncts of a Pointset_Powerset_C_Polyhedron class Generator A line ray point or closure point class Generator_System A system of generators enum Generator_Type The generator type class Grid_Generator A grid line parameter or
80. ession e2 Coefficient m Returns the congruence e1 e2 mod m e Linear_Expression left_hand_ side Returns the left hand side of this e Linear _Expression right_hand_side Returns the right hand side of this Coefficient modulus Returns the relation symbol of this native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string representation of this Protected Attributes Coefficient mod The modulus of the congruence 10 10 1 Detailed Description A linear congruence An object of the class Congruence is an object represeting a congruence e cg ee A X b 0 mod m where n is the dimension of the space a is the integer coefficient of variable x b is the integer inho mogeneous term and m is the integer modulus if m 0 then cg represents the equality congruence y3 aizi b O and if m 0 then the congruence cg is said to be a proper congruence The documentation for this class was generated from the following file Congruence java 10 11 parma polyhedra library Congruence System Class Reference A system of congruences The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 36 CONTENTS Public Member Functions Congruence_System Default constructor builds an empty system of congruences native String ascii_dump Returns an ascii
81. eters e enum parma_polyhedra_library Control_Parameter_Value Possible values for MIP problem s control parameters enum parma_polyhedra_library Degenerate_Element Kinds of degenerate abstract elements e class parma_polyhedra_library Domain_Error_Exception Exceptions caused by domain errors e class parma_polyhedra_library Polyhedron The Java base class for C and NNC convex polyhedra class parma_polyhedra_library C_Polyhedron A topologically closed convex polyhedron e class parma_polyhedra_library Pointset_Powerset_C_Polyhedron A powerset of C_Polyhedron objects e class parma_polyhedra_library Pointset_Powerset_C_Polyhedron_Iterator An iterator class for the disjuncts of a Pointset_Powerset_C_Polyhedron class parma_polyhedra_library Generator A line ray point or closure point e class parma_polyhedra_library Generator_System A system of generators enum parma_polyhedra_library Generator_Type The generator type class parma_polyhedra_library Grid_Generator A grid line parameter or grid point e class parma_polyhedra_library Grid_Generator_System A system of grid generators enum parma_polyhedra_library Grid_Generator_Type The grid generator type e class parma_polyhedra_library Invalid_Argument_Exception Exceptions caused by invalid arguments e class parma_polyhedra_library IO A class collecting I O functions class parma_polyhedra_library Length_Error_Exception Exceptions caused by
82. f PIP problems control parameters The documentation for this enum was generated from the following file PIP_Problem_Control_Parameter_Name java 10 45 parma_polyhedra_library PIP_Problem_Control_Parameter_Value Enum Reference Possible values for PIP problems control parameters Public Attributes CUTTING_STRATEGY_FIRST Choose the first non integer row The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 70 CONTENTS e CUTTING_STRATEGY_DEEPEST Choose row which generates the deepest cut e CUTTING STRATEGY_ALL Always generate all possible cuts e PIVOT ROW_STRATEGY_FIRST Choose the first row with negative parameter sign e PIVOT_ROW_STRATEGY_MAX_ COLUMN Choose the row which generates the lexico maximal pivot column 10 45 1 Detailed Description Possible values for PIP problems control parameters The documentation for this enum was generated from the following file PIP_Problem_Control_Parameter_Value java 10 46 _ parma polyhedra library PlP Problem Status Enum Reference Possible outcomes of the PIP_Problem solver Public Attributes e UNFEASIBLE_PIP PROBLEM The problem is unsatisfiable 10 46 1 Detailed Description Possible outcomes of the PIP_Problem solver The documentation for this enum was generated from the following file PIP_Problem_Status java 10 47 parma polyhedra library PlP Solution Node Class
83. f the vector space so that the resulting space will have dimension new _dimension Exceptions Invalid_Argument_ Thrown if new_dimensions is greater than the space dimension of this Exception 10 53 2 46 native void parma_polyhedra_library Polyhedron expand_space_dimension Variable var long m Creates m copies of the space dimension corresponding to var The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 53 parma_polyhedra_library Polyhedron Class Reference 93 Parameters var The variable corresponding to the space dimension to be replicated m The number of replicas to be created Exceptions Invalid_Argument_ Thrown if var does not correspond to a dimension of the vector space Exception Length_Error_Exception Thrown if adding m new space dimensions would cause the vector space to exceed dimensionmax_space_dimension 10 53 2 47 native void parma_polyhedra _library Polyhedron fold space dimensions Variables_Set vars Variable dest Folds the space dimensions in vars into dest Parameters vars The set of Variable objects corresponding to the space dimensions to be folded dest The variable corresponding to the space dimension that is the destination of the folding operation Exceptions Invalid_Argument_ Thrown if this is dimension incompatible with dest or
84. ference lt Integer gt tp Improves the result of the BHRZ03 widening computation by also enforcing those constraints in cs that are satisfied by all the points of this plus all the constraints of the form z lt r and a lt r with r Q that are satisfied by all the points of this Parameters y A polyhedron that must be contained in this cs The system of constraints used to improve the widened polyhedron tp A reference to an unsigned variable storing the number of available tokens to be used when applying the widening with tokens delay technique Exceptions Invalid_Argument_ Thrownif this y and cs are topology incompatible or dimension incompatible Exception 10 53 2 56 native void parma_polyhedra_library Polyhedron bounded_H79_extrapolation_assign Polyhedron y Constraint_System cs By Reference lt Integer gt tp Improves the result of the H79 widening computation by also enforcing those constraints in cs that are satisfied by all the points of this plus all the constraints of the form a lt r and x lt r with r Q that are satisfied by all the points of this Parameters y A polyhedron that must be contained in this cs The system of constraints used to improve the widened polyhedron The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information Ni 96 CONTENTS tp A refere
85. fimum value inf_d The denominator of the infimum value minimum t rue if and only if the infimum is also the minimum value Exceptions Invalid_Argument_ Thrown if expr and this are dimension incompatible Exception If this is empty or expr is not bounded from below false is returned and inf_n inf_d and minimum are left untouched The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 53 parma_polyhedra_library Polyhedron Class Reference 83 10 53 2 6 native boolean parma_polyhedra_library Polyhedron maximize Linear_Expression expr Coefficient sup_n Coefficient sup_d By_Reference lt Boolean gt maximum Generator g Returns t rue if and only if this is not empty and expr is bounded from above in this in which case the supremum value and a point where expr reaches it are computed Parameters expr The linear expression to be maximized subject to this sup_n The numerator of the supremum value sup_d The denominator of the supremum value maximum t rue if and only if the supremum is also the maximum value g When maximization succeeds will be assigned the point or closure point where expr reaches its supremum value Exceptions Invalid_Argument_ Thrown if expr and this are dimension incompatible Exception If this is empty or expr is not bounded from above fal
86. for more information 4 1 Modules 17 41 Modules Here is a list of all modules Java Language Interface 22 5 Namespace Index 5 1 Namespace List Here is a list of all documented namespaces with brief descriptions parma_polyhedra_library The PPL Java interface package 25 6 Class Index 6 1 Class Hierarchy This inheritance list is sorted roughly but not completely alphabetically parma_polyhedra_library Artificial_Parameter 27 parma_polyhedra_library Artificial_Parameter_Sequence 28 parma_polyhedra_library Bounded_Integer_Type_Overflow 29 parma_polyhedra_library Bounded_Integer_Type_Representation 29 parma_polyhedra_library Bounded_Integer_Type_Width 29 parma_polyhedra_library By_Reference lt T gt 30 parma_polyhedra_library Coefficient 33 parma_polyhedra_library Complexity_Class 34 parma_polyhedra_library Congruence 35 parma_polyhedra_library Congruence_System 35 parma_polyhedra_library Constraint 36 parma_polyhedra_library Constraint_System 37 parma_polyhedra_library Control_Parameter_Name 37 parma_polyhedra_library Control_Parameter_Value 37 parma_polyhedra_library Degenerate_Element 38 parma_polyhedra_library Domain_Error_Exception 38 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 18 CONTENTS parma_polyhedra_library Generator 39 parma_polyhedra_library Generator_System 40 parma_polyhedra_library Generator_Type 41 parma_polyhedra_library Grid_Generator 41
87. ful document free in the sense of freedom to assure everyone the effective freedom to copy and redistribute it with or without modifying it either commercially or noncommercially Secondarily this License preserves for the author The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 12 CONTENTS and publisher a way to get credit for their work while not being considered responsible for modifications made by others This License is a kind of copyleft which means that derivative works of the document must themselves be free in the same sense It complements the GNU General Public License which is a copyleft license designed for free software We have designed this License in order to use it for manuals for free software because free software needs free documentation a free program should come with manuals providing the same freedoms that the software does But this License is not limited to software manuals it can be used for any textual work regardless of subject matter or whether it is published as a printed book We recommend this License principally for works whose purpose is instruction or reference 1 APPLICABILITY AND DEFINITIONS This License applies to any manual or other work in any medium that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License Such a notice grants a world wide royalty free license
88. hat must be contained in this cs The system of constraints used to improve the widened polyhedron ip A reference to an unsigned variable storing the number of available tokens to be used when applying the widening with tokens delay technigue The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 53 parma_polyhedra_library Polyhedron Class Reference 95 Exceptions Invalid_Argument_ Thrownif this y and cs are topology incompatible or dimension incompatible Exception 10 53 2 54 native void parma_polyhedra_library Polyhedron limited_H79_extrapolation_assign Polyhedron y Constraint_System cs By_Reference lt Integer gt tp Improves the result of the H79 widening computation by also enforcing those constraints in cs that are satisfied by all the points of this Parameters y A polyhedron that must be contained in this cs The system of constraints used to improve the widened polyhedron tp A reference to an unsigned variable storing the number of available tokens to be used when applying the widening with tokens delay technique Exceptions Invalid_Argument_ Thrownif this y and cs are topology incompatible or dimension incompatible Exception 10 53 2 55 native void parma_polyhedra_library Polyhedron bounded_BHRZ03_extrapolation_assign Polyhedron y Constraint_System cs By_Re
89. he Document does not identify any Invariant Sections then there are none The Cover Texts are certain short passages of text that are listed as Front Cover Texts or Back Cover Texts in the notice that says that the Document is released under this License A Front Cover Text may be at most 5 words and a Back Cover Text may be at most 25 words A Transparent copy of the Document means a machine readable copy represented in a format whose specification is available to the general public that is suitable for revising the document straightforwardly with generic text editors or for images composed of pixels generic paint programs or for drawings some widely available drawing editor and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters A copy made in an otherwise Transparent file format whose markup or absence of markup has been arranged to thwart or discourage subsequent modification by readers is not Transparent An image format is not Transparent if used for any substantial amount of text A copy that is not Transparent is called Opaque Examples of suitable formats for Transparent copies include plain ASCII without markup Texinfo input format LaTeX input format SGML or XML using a publicly available DTD and standard conforming simple HTML PostScript or PDF designed for human modification Examples of transparent image for mats include PNG XCF a
90. icense fee royalty or other charge for exercise of rights granted under this License and you may not initiate litigation including a cross claim or counterclaim in a lawsuit alleging that any patent claim is infringed by making using selling offering for sale or importing the Program or any portion of it 11 Patents A contributor is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based The work thus licensed is called the contributor s contributor version A contributor s essential patent claims are all patent claims owned or controlled by the contributor whether already acguired or hereafter acguired that would be infringed by some manner permitted by this License of making using or selling its contributor version but do not include claims that would be infringed only as a conseguence of further modification of the contributor version For purposes of this definition control includes the right to grant patent sublicenses in a manner consistent with the reguirements of this License Each contributor grants you a non exclusive worldwide royalty free patent license under the contributor s essential patent claims to make use sell offer for sale import and otherwise run modify and propagate the contents of its contributor version In the following three paragraphs a patent license is any express agreement or commitment however denominate
91. id clear Resets this to be egual to the trivial PIP problem The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 66 CONTENTS native void add_space_dimensions_and_embed long pip_vars long pip_params Adds pip_vars pip params new space dimensions and embeds the PIP problem in the new vector space native void add_to_parameter_space_dimensions Variables_Set vars Sets the space dimensions in vars to be parameter dimensions of the PIP problem native void set_big_parameter_dimension long d Sets the big parameter dimension of PIP problem to d e native void add constraint Constraint c Adds a copy of constraint c to the PIP problem e native void add constraints Constraint_System cs Adds a copy of the constraints in cs to the PIP problem Computing the Solution of the PIP_Problem native boolean is_satisfiable Checks satisfiability of thi s e native PIP_Problem_ Status solve Optimizes the PIP problem native PIP_Tree_Node solution Returns a solution for the PIP problem if it exists native PIP_Tree_Node optimizing_solution Returns an optimizing solution for the PIP problem if it exists Querying Setting Control Parameters native PIP_Problem_Control_Parameter_ Value get_pip_problem_control_parameter PIP_Problem_Control _Parameter_Name name Returns the value of control parameter name e native void set_pip_prob
92. ient parma_polyhedra_library concatenate_assign parma_polyhedra_library constrains parma_polyhedra_library constraints parma_polyhedra_library contains parma_polyhedra_library difference_assign parma_polyhedra_library divisor parma_polyhedra_library parma_polyhedra_library evaluate_objective_function parma_polyhedra_library expand_space_dimension parma_polyhedra_library feasible_point parma_polyhedra_library finalize_library parma_polyhedra_library 61 fold_space_dimensions parma_polyhedra_library parma_polyhedra_library Parma_Polyhedra_Libgwiyeralized_affine_image 61 bounded_BHRZ03_extrapolation_assign parma_polyhedra library Polyhedron 95 bounded_H79_extrapolation_assign parma_polyhedra_library bounded_affine_image parma_polyhedra_library bounded_affine_preimage parma_polyhedra_library bounds_from_above parma_polyhedra library bounds_from_below parma_polyhedra library Polyhedron 95 Polyhedron 88 Polyhedron 88 Polyhedron 81 Polyhedron 81 parma_polyhedra library generalized affine_preimage parma_polyhedra_library get_disjunct parma_polyhedra_library MIP_Problem 56 PIP_Problem 68 Generator 39 Coefficient 34 Polyhedron 92 Polyhedron 81 PIP_Tree_Node 73 Polyhedron 84 Polyhedron 87 Generator 40 Grid_Generator 43 MIP_Problem 57 Polyhedron 92 MIP_Problem 58 Parma_Polyhedra_Library Polyh
93. iler used to produce the work or an object code interpreter used to run it The Corresponding Source for a work in object code form means all the source code needed to generate install and for an executable work run the object code and to modify the work including scripts to control those activities However it does not include the work s System Libraries or general purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work For example Corresponding Source includes interface definition files associated with source files for the work and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to reguire such as by intimate data communication or control flow between those subprograms and other parts of the work The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source The Corresponding Source for a work in source code form is that same work 2 Basic Permissions All rights granted under this License are granted for the term of copyright on the Program and are irrevo cable provided the stated conditions are met This License explicitly affirms your unlimited permission to run the unmodified Program The output from running a covered work is covered by this License only if the output given its content constitutes a
94. ing indemnification of licensors and authors of that material by anyone who conveys the material or modified versions of it with contractual assumptions of liability to the recipient for any liability that these contractual assumptions directly impose on those licensors and authors All other non permissive additional terms are considered further restrictions within the meaning of sec tion 10 If the Program as you received it or any part of it contains a notice stating that it is governed by this License along with a term that is a further restriction you may remove that term If a license document contains a further restriction but permits relicensing or conveying under this License you may add to a covered work material governed by the terms of that license document provided that the further restriction does not survive such relicensing or conveying If you add terms to a covered work in accord with this section you must place in the relevant source files a statement of the additional terms that apply to those files or a notice indicating where to find the applicable terms Additional terms permissive or non permissive may be stated in the form of a separately written license or stated as exceptions the above reguirements apply either way 8 Termination You may not propagate or modify a covered work except as expressly provided under this License Any attempt otherwise to propagate or modify it is void and will automatica
95. int parma polyhedra library Polyhedron hashCode Returns a hash code for this If x and y are such that x y thenx hash_code y hash_code The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 53 parma_polyhedra_library Polyhedron Class Reference 85 10 53 2 15 native String parma_polyhedra_library Polyhedron ascii_dump Returns a string containing a low level representation of this Useful for debugging purposes 10 53 2 16 native void parma_polyhedra_library Polyhedron add_constraint Constraint c Adds a copy of constraint c to the system of constraints of this without minimizing the result Parameters The constraint that will be added to the system of constraints of this o Exceptions Invalid_Argument_ Thrown if this and constraint c are topology incompatible or dimension Exception incompatible 10 53 2 17 native void parma_polyhedra_library Polyhedron add_congruence Congruence cg Adds a copy of congruence cg to this if cg can be exactly represented by a polyhedron Exceptions Invalid_Argument_ Thrown if this and congruence cg are dimension incompatible of if cg is a Exception proper congruence which is neither a tautology nor a contradiction 10 53 2 18 native void parma_polyhedra_library Polyhedron add_constraints Constraint_System cs Adds a copy of the constraints in cs
96. ions e static native int bits Returns the number of bits of PPL coefficients O if unbounded 10 8 1 Detailed Description A PPL coefficient Objects of type Coefficient are used to implement the integral valued coefficients occurring in linear ex pressions constraints generators and so on 10 8 2 Constructor amp Destructor Documentation 10 8 2 1 parma_polyhedra_library Coefficient Coefficient Strings inline Builds a coefficient from the decimal representation in s Exceptions java lang NumberFormat Thrown if s does not contain a valid decimal representation Exception The documentation for this class was generated from the following file Coefficient java 10 9 parma_polyhedra_library Complexity Class Enum Reference Possible Complexities Public Attributes POLYNOMIAL_COMPLEXITY Worst case polynomial complexity SIMPLEX_COMPLEXITY Worst case exponential complexity but typically polynomial behavior 10 9 1 Detailed Description Possible Complexities The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 10 parma_polyhedra_library Congruence Class Reference 35 The documentation for this enum was generated from the following file Complexity_Class java 10 10 parma_polyhedra_library Congruence Class Reference A linear congruence Public Member Functions e Congruence Linear _Expression el Linear_Expr
97. ird party retains the ability to install modified object code on the User Product for example the work has been installed in ROM The reguirement to provide Installation Information does not include a reguirement to continue to provide support service warranty or updates for a work that has been modified or installed by the recipient or for the User Product in which it has been modified or installed Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network Corresponding Source conveyed and Installation Information provided in accord with this section must be in a format that is publicly documented and with an implementation available to the public in source code form and must reguire no special password or key for unpacking reading or copying 7 Additional Terms Additional permissions are terms that supplement the terms of this License by making exceptions from one or more of its conditions Additional permissions that are applicable to the entire Program shall be The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 2 GNU General Public License 7 treated as though they were included in this License to the extent that they are valid under applicable law If additional permissions apply only to part of the Program that part
98. is not included in it e static Poly_Con_Relation is_included The polyhedron is included in the set of points satisfying the constraint static Poly_Con_Relation saturates The polyhedron is included in the set of points saturating the constraint The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 76 CONTENTS 10 51 1 Detailed Description The relation between a polyhedron and a constraint This class implements conjunctions of assertions on the relation between a polyhedron and a constraint The documentation for this class was generated from the following file Poly_Con_Relation java 10 52 parma_polyhedra_library Poly_Gen_Relation Class Reference The relation between a polyhedron and a generator Public Member Functions Poly_Gen_Relation int val Constructs from a integer value e boolean implies Poly_Gen_Relation y True if and only if this implies y Static Public Member Functions static Poly_Gen_Relation nothing The assertion that says nothing e static Poly_Gen_Relation subsumes Adding the generator would not change the polyhedron 10 52 1 Detailed Description The relation between a polyhedron and a generator This class implements conjunctions of assertions on the relation between a polyhedron and a generator The documentation for this class was generated from the following file Poly_Gen_Relation java 10 53
99. is times c Linear_Expression unary_minus Returns the negation of this abstract Linear_Expression clone Returns a copy of the linear expression native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string representation of this native boolean is_zero Returns t rue if and only if this is 0 e native boolean all_homogeneous_terms_are_zero Returns t rue if and only if all the homogeneous terms of this are 0 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 28 parma_polyhedra_library Linear_Expression_Coefficient Class Reference 47 10 271 Detailed Description A linear expression An object of the class Linear_Expression represents a linear expression that can be built from a Linear_ Expression_Variable Linear_Expression_Coefficient Linear_Expression_Sum Linear_Expression_Difference Linear_Expression_Unary_Minus The documentation for this class was generated from the following file e Linear_Expression java 10 28 parma_polyhedra_library Linear_Expression_Coefficient Class Reference A linear expression built from a coefficient Inheritance diagram for parma_polyhedra_library Linear_Expression_Coefficient parma_polyhedra_library Linear_Expression parma_polyhedra_library Linear_Expression_Coefficient Public Member Functions e Linear_Expressi
100. ision_Node parma_polyhedra_library PIP_Tree_Node parma_polyhedra_library PIP_Solution Node Public Member Functions native PIP_Solution_Node as_solution Returns the solution node if this is a solution node and 0 otherwise native PIP_Decision_Node as_decision Returns the decision node if this is a decision node and 0 otherwise native boolean OK Returns true if the pip tree is well formed i e if it satisfies all its implementation invariants returns 0 and perhaps makes some noise if broken Useful for debugging purposes native long number_of_artificials Returns the number of artificial parameters in the PIP_Tree_Node native Artificial_Parameter_Sequence artificials Returns the sequence of Java artificial parameters in the PIP_Tree_Node native Constraint_System constraints Returns the system of parameter constraints controlling the PIP_Tree_Node native String toString Returns a string representation of this Additional Inherited Members 10 48 1 Detailed Description A node of the PIP solution tree This is the base class for the nodes of the binary trees representing the solutions of PIP problems From this one two classes are derived PIP_Decision_Node for the internal nodes of the tree PIP_Solution_Node for the leaves of the tree The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 49 p
101. itle egually prominent and visible You may add other material on the covers in addition Copying with changes limited to the covers as long as they preserve the title of the Document and satisfy these conditions can be treated as verbatim copying in other respects If the reguired texts for either cover are too voluminous to fit legibly you should put the first ones listed as many as fit reasonably on the actual cover and continue the rest onto adjacent pages If you publish or distribute Opague copies of the Document numbering more than 100 you must either include a machine readable Transparent copy along with each Opague copy or state in or with each Opague copy a computer network location from which the general network using public has access to download using public standard network protocols a complete Transparent copy of the Document free of added material If you use the latter option you must take reasonably prudent steps when you begin distribution of Opague copies in guantity to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opague copy directly or through your agents or retailers of that edition to the public It is reguested but not reguired that you contact the authors of the Document well before redistributing any large number of copies to give them a chance to provide you with an updated version of the Document 4 MODIFI
102. ject code by offering access from a designated place gratis or for a charge and offer eguivalent access to the Corresponding Source in the same way through the same place at no further charge You need not reguire recipients to copy the Corresponding Source along with the object code If the place to copy the object code is a network server the Corresponding Source may be on a different server operated by you or a third party that supports eguivalent copying facilities provided you maintain clear directions next to the object code saying where to find the Corresponding Source Regardless of what server hosts the Corresponding Source you remain obligated to ensure that it is available for as long as needed to satisfy these reguirements e Convey the object code using peer to peer transmission provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d A separable portion of the object code whose source code is excluded from the Corresponding Source as a System Library need not be included in conveying the object code work A User Product is either 1 a consumer product which means any tangible personal property which is normally used for personal family or household purposes or 2 anything designed or sold for incor poration into a dwelling In determining whether a product is a consumer product doubtful cases shall be
103. lass Partial_Function A partial function on space dimension indices e class PIP_Decision_Node An internal node of the PIP solution tree e class PIP_Problem A Parametric Integer Programming problem enum PIP_Problem_Control_Parameter_Name Names of PIP problems control parameters enum PIP_Problem_Control_Parameter_Value Possible values for PIP problems control parameters enum PIP_Problem_Status Possible outcomes of the PIP_Problem solver class PIP_Solution_Node A leaf node of the PIP solution tree e class PIP_Tree_Node A node of the PIP solution tree e class Poly_Con_Relation The relation between a polyhedron and a constraint class Poly_Gen_Relation The relation between a polyhedron and a generator e enum Relation_ Symbol Relation symbols class Timeout_Exception Exceptions caused by timeout expiring class Variable A dimension of the vector space e class Variables_Set A java util TreeSet of variables indexes Detailed Description The PPL Java interface package All classes interfaces and enums related to the Parma Polyhedra Library Java interface are included in this package 10 10 1 Class Documentation Public Member Functions e Artificial_Parameter Linear_Expression e Coefficient d parma_polyhedra_library Artificial Parameter Class Reference The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more informatio
104. laws that apply to other kinds of works such as semiconductor masks The Program refers to any copyrightable work licensed under this License Each licensee is addressed as you Licensees and recipients may be individuals or organizations To modify a work means to copy from or adapt all or part of the work in a fashion reguiring copyright permission other than the making of an exact copy The resulting work is called a modified version of the earlier work or a work based on the earlier work A covered work means either the unmodified Program or a work based on the Program To propagate a work means to do anything with it that without permission would make you directly or secondarily liable for infringement under applicable copyright law except executing it on a computer or modifying a private copy Propagation includes copying distribution with or without modification making available to the public and in some countries other activities as well To convey a work means any kind of propagation that enables other parties to make or receive copies Mere interaction with a user through a computer network with no transfer of a copy is not conveying An interactive user interface displays Appropriate Legal Notices to the extent that it includes a convenient and prominently visible feature that 1 displays an appropriate copyright notice and 2 tells the user that there is no
105. lem y Builds a copy of y native void free Releases all resources managed by t his also resetting it to a null reference native void finalize Releases all resources managed by this The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 35 parma_polyhedra_library MIP_Problem Class Reference 55 Additional Inherited Members 10 35 1 Detailed Description A Mixed Integer linear Programming problem An object of this class encodes a mixed integer linear programming problem The MIP problem is specified by providing the dimension of the vector space the feasible region by means of a finite set of linear equality and non strict inequality constraints the subset of the unknown variables that range over the integers the other variables implicitly ranging over the reals the objective function described by a Linear_Expression e the optimization mode either maximization or minimization The class provides support for the incremental solution of the MIP problem based on variations of the revised simplex method and on branch and bound techniques The result of the resolution process is ex pressed in terms of an enumeration encoding the feasibility and the unboundedness of the optimization problem The class supports simple feasibility tests i e no optimization as well as the extraction of an optimal resp feasible point provided the M
106. lem_control_parameter PIP_Problem_Control_Parameter_ Value value Sets control parameter value Protected Member Functions native void finalize Releases all resources managed by this 10 43 1 Detailed Description A Parametric Integer Programming problem An object of this class encodes a parametric integer linear programming problem The PIP problem is specified by providing the dimension of the vector space e the subset of those dimensions of the vector space that are interpreted as integer parameters the other space dimensions are interpreted as non parameter integer variables a finite set of linear equality and strict or non strict inequality constraints involving variables and or parameters these constraints are used to define the feasible region if they involve one or more problem variable and maybe some parameters The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 43 parma_polyhedra_library PIP_Problem Class Reference 67 the initial context if they only involve the parameters optionally the so called big parameter i e a problem parameter to be considered arbitrarily big Note that all problem variables and problem parameters are assumed to take non negative integer values so that there is no need to specify non negativity constraints The class provides support for the incremental solution of the PIP pro
107. lly terminate your rights under this License including any patent licenses granted under the third paragraph of section 11 However if you cease all violation of this License then your license from a particular copyright holder is reinstated a provisionally unless and until the copyright holder explicitly and finally terminates your license and b permanently if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation Moreover your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means this is the first time you have received notice of The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 8 CONTENTS violation of this License for any work from that copyright holder and you cure the violation prior to 30 days after your receipt of the notice Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License If your rights have been terminated and not permanently reinstated you do not gualify to receive new licenses for the same material under section 10 9 Acceptance Not Reguired for Having Copies You are not reguired to accept this License in order to receive or run a copy of the Program Ancillary propagation of a covered work
108. lyhedra_library C_Polyhedron Class Reference 31 Inheritance diagram for parma_polyhedra_library C_Polyhedron parma_polyhedra library Polyhedron parma_polyhedra library C_Polyhedron Public Member Functions Standard Constructors and Destructor C_Polyhedron long d Degenerate_Element kind Builds a new C polyhedron of dimension d C_Polyhedron C_Polyhedron y Builds a new C polyhedron that is copy of y C_Polyhedron C_Polyhedron y Complexity_Class complexity Builds a new C polyhedron that is a copy of ph C_Polyhedron Constraint_System cs Builds a new C polyhedron from the system of constraints cs C_Polyhedron Congruence_System cgs Builds a new C polyhedron from the system of congruences cgs native void free Releases all resources managed by thi s also resetting it to a null reference Constructors Behaving as Conversion Operators Besides the conversions listed here below the library also provides conversion operators that build a semantic geometric description starting from any other semantic geometric description e g Grid C Polyhedron y C Polyhedron BD Shape mpg class y etc Clearly the conver sion operators are only available if both the source and the target semantic geometric descriptions have been enabled when configuring the library The conversions also taking as argument a complexity class sometimes provide non trivial precision efficiency trade offs C_Polyhedro
109. ma_polyhedra_library minimize parma_polyhedra_library optimal_value parma_polyhedra_library optimizing point parma_polyhedra_library PIP_Problem parma_polyhedra_library parameter parma_polyhedra_library parametric_values parma_polyhedra_library 71 parma_polyhedra_library 25 Polyhedron 95 Generator 40 C_Polyhedron 33 MIP_Problem 55 Polyhedron 93 Partial_Function 64 Polyhedron 82 Polyhedron 82 83 MIP_Problem 58 MIP_ Problem 58 PIP_Problem 67 68 Grid_Generator 42 PIP_Solution_Node parma_polyhedra_library Artificial_Parameter 27 parma_polyhedra_library Artificial_Parameter_Sequence 28 parma_polyhedra_library Bounded_Integer_Type_Overflow 29 parma_polyhedra_library Coefficient 33 parma_polyhedra_library Complexity_Class 34 parma_polyhedra_library Congruence 35 parma_polyhedra_library Congruence_System 35 parma_polyhedra_library Constraint 36 parma_polyhedra_library Constraint_System 37 parma_polyhedra_library Control_Parameter_Name 37 parma_polyhedra_library Control_Parameter_Value 37 parma_polyhedra_library Degenerate_Element 38 parma_polyhedra_library Domain_Error_Exception 38 parma_polyhedra_library Generator 39 parma_polyhedra_library Generator_System 40 parma_polyhedra_library Generator_Type 41 parma_polyhedra_library Grid_Generator 41 parma_polyhedra_library Grid_Generator_System 43 parma_polyhedra_library Grid_Gene
110. may be used separately under those permissions but the entire Program remains governed by this License without regard to the additional permissions When you convey a copy of a covered work you may at your option remove any additional permissions from that copy or from any part of it Additional permissions may be written to reguire their own removal in certain cases when you modify the work You may place additional permissions on material added by you to a covered work for which you have or can give appropriate copyright permission Notwithstanding any other provision of this License for material you add to a covered work you may if authorized by the copyright holders of that material supplement the terms of this License with terms a Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License or e b Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it or c Prohibiting misrepresentation of the origin of that material or reguiring that modified versions of such material be marked in reasonable ways as different from the original version or d Limiting the use for publicity purposes of names of licensors or authors of the material or e Declining to grant rights under trademark law for use of some trade names trademarks or service marks or f Reguir
111. n 28 CONTENTS Builds an artificial parameter from a linear expression and a denominator e Linear_Expression linear_expression Returns the linear expression in artificial parameter this e Coefficient denominator Returns the denominator in artificial parameter thi s native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string representation of this 10 1 1 Detailed Description An Artificial_Parameter object represents the result of the integer division of a Linear_Expression on the other parameters including the previously defined artificials by an integer denominator a Coefficient object The dimensions of the artificial parameters if any in a tree node have consecutive indices starting from dim 1 where the value of dim is computed as follows for the tree root node dim is the space dimension of the PIP_Problem for any other node of the tree it is recusrively obtained by adding the value of dim computed for the parent node to the number of artificial parameters defined in the parent node Since the numbering of dimensions for artificial parameters follows the rule above the addition of new problem variables and or new problem parameters to an already solved PIP_Problem object as done when incrementally solving a problem will result in the systematic renumbering of all the existing artificial parameters The documentation for
112. n NNC_Polyhedron y Builds a C polyhedron that is a copy of the topological closure of the NNC polyhedron y C_Polyhedron NNC_Polyhedron y Complexity_Class complexity Builds a C polyhedron that is a copy of the topological closure of the NNC polyhedron y C_Polyhedron Generator_System gs Builds a new C polyhedron from the system of generators gs Other Methods The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 32 CONTENTS native boolean upper_bound_assign_if_exact C_Polyhedron y If the upper bound of this and y is exact it is assigned to this and true is returned otherwise false is returned Static Public Member Functions e static native Pair lt C_Polyhedron Pointset_Powerset_NNC_Polyhedron gt linear_partition C_Polyhedron p C_Polyhedron q Partitions q with respect to p Protected Member Functions native void finalize Releases all resources managed by this 10 71 Detailed Description A topologically closed convex polyhedron 10 7 2 Constructor amp Destructor Documentation 10 7 2 1 parma_polyhedra library C Polyhedron C Polyhedron long d Degenerate_Element kind Builds a new C polyhedron of dimension d If kind is EMPTY the newly created polyhedron will be empty otherwise it will be a universe polyhedron 10 7 2 2 parma polyhedra_library C Polyhedron C Polyhedron C_Polyhedron y Complexity_Class complexity
113. nce to an unsigned variable storing the number of available tokens to be used when applying the widening with tokens delay technigue Exceptions Invalid_Argument_ Thrown if this y and cs are topology incompatible or dimension incompatible Exception The documentation for this class was generated from the following file Fake_Class_for_Doxygen java 10 54 parma_polyhedra _library Relation Symbol Enum Reference Relation symbols Public Attributes e LESS THAN Less than LESS_OR_EQUAL Less than or egual to EOUAL Egual to e GREATER OR _EOUAL Greater than or egual to 10 54 1 Detailed Description Relation symbols The documentation for this enum was generated from the following file Relation_Symbol java 10 55 parma polyhedra library Timeout Exception Class Reference Exceptions caused by timeout expiring Public Member Functions Timeout_Exception String s Constructor The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 57 parma_polyhedra_ library Variables_Set Class Reference 97 10 55 1 Detailed Description Exceptions caused by timeout expiring The documentation for this class was generated from the following file Timeout_Exception java 10 56 parma_polyhedra_library Variable Class Reference A dimension of the vector space Public Member Functions Variable int i Builds th
114. nd JPG Opaque formats include proprietary formats that can be read and edited only by proprietary word processors SGML or XML for which the DTD and or processing tools are not generally available and the machine generated HTML PostScript or PDF produced by some word proces sors for output purposes only The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 3 GNU Free Documentation License 13 The Title Page means for a printed book the title page itself plus such following pages as are needed to hold legibly the material this License reguires to appear in the title page For works in formats which do not have any title page as such Title Page means the text near the most prominent appearance of the work s title preceding the beginning of the body of the text A section Entitled XYZ means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language Here XYZ stands for a specific section name mentioned below such as Acknowledgements Dedications Endorsements or History To Preserve the Title of such a section when you modify the Document means that it remains a section Entitled XYZ according to this definition The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document These Warranty Disclaimers are consider
115. nded integer types The documentation for this enum was generated from the following file Bounded_Integer_Type_Representation java 10 5 parma polyhedra library Bounded Integer Type Width Enum Reference Widths of bounded integer types Public Attributes BITS_8 Minimization is requested BITS_16 16 bits BITS_32 32 bits The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 30 CONTENTS BITS_64 64 bits 10 5 1 Detailed Description Widths of bounded integer types The documentation for this enum was generated from the following file Bounded_Integer_Type_Width java 10 6 parma_polyhedra library By Reference lt T gt Class Reference An utility class implementing mutable and non mutable call by reference Public Member Functions By_Reference T object_value Builds an object encapsulating object_value e void set T y Set an object to value object_value e Tget O Returns the value held by this 10 6 1 Detailed Description An utility class implementing mutable and non mutable call by reference The documentation for this class was generated from the following file By_Reference java 10 7 _ parma_polyhedra_library C_Polyhedron Class Reference A topologically closed convex polyhedron The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 7 parma_po
116. ne of direction e e static Grid_Generator parameter Linear_Expression e Coefficient d Returns the parameter at e d e static Grid_Generator grid_point Linear_Expression e Coefficient d Returns the point at e d 10 21 1 Detailed Description A grid line parameter or grid point An object of the class Grid_Generator is one of the following e a grid line a parameter e a grid point 10 21 2 Member Function Documentation 10 21 2 1 static Grid_Generator parma_polyhedra_library Grid_Generator grid_line Linear_Expression e inline static Returns the line of direction e Exceptions RuntimeErrorException Thrown if the homogeneous part of e represents the origin of the vector space 10 21 2 2 static Grid_Generator parma_polyhedra_library Grid_Generator parameter Linear_Expression e Coefficient d inline static Returns the parameter at e d Exceptions RuntimeErrorException Thrown if d is zero 10 21 2 3 static Grid_Generator parma_polyhedra_library Grid_Generator grid_point Linear_Expression e Coefficient d inline static Returns the point at e d The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 22 parma_polyhedra_library Grid_Generator_System Class Reference 43 Exceptions RuntimeErrorException Thrown if d is zero 10 21 2 4 Coefficient parma_polyhedra_librar
117. nfigured it will automatically test for the existence of the Java system unless configuration options are passed to disable the build of the Java interface see configuration option enable interfaces If Java is correctly installed in a standard location things will be arranged so that the Java interface is built and installed see configuration option with java if you need to specify a non standard location for the Java system The Java interface files are all installed in the directory prefix lib ppl Since this includes shared and dynamically loaded libraries you must make your dynamic linker loader aware of this fact If you use a GNU Linux system try the commands man 1d so and man ldconfig for more information Any application using the PPL should Load the PPL interface library by calling System load and passing the full path of the dynamic shared object Make sure that only the intended version s of the library has been loaded e g by calling static method version inclassparma_polyhedra_library Parma_Polyhedra_Library Starting from version 0 11 initialize the interface by calling static method initialize_ library when all library work is done finalize the interface by calling finalize_ library The numerical abstract domains available to the Java user as Java classes consist of the simple do mains powersets of a simple domain and products of simple domains Note that the default con figuration
118. ng library level functions class parma_polyhedra_library Partial_Function A partial function on space dimension indices class parma_polyhedra_library PIP_Problem A Parametric Integer Programming problem enum parma_polyhedra_library PIP_Problem_Control_Parameter_Name Names of PIP problems control parameters enum parma_polyhedra_library PIP_Problem_Control_Parameter_Value Possible values for PIP problems control parameters enum parma_polyhedra_library PIP_Problem_Status Possible outcomes of the PIP_Problem solver class parma_polyhedra_library Poly_Con_Relation The relation between a polyhedron and a constraint enum parma_polyhedra_library Relation_Symbol Relation symbols class parma_polyhedra_library Timeout_Exception Exceptions caused by timeout expiring class parma_polyhedra_library Variable A dimension of the vector space The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 9 Namespace Documentation 25 8 1 1 Detailed Description The Parma Polyhedra Library comes equipped with an interface for the Java language 9 Namespace Documentation 9 1 Package parma polyhedra library The PPL Java interface package Classes e class Artificial_Parameter e class Artificial_Parameter_Seguence A seguence of artificial parameters e enum Bounded_Integer_Type_Overflow Overflow behavior of bounded integer types e enum Bounded_Integer_Type_R
119. ning all the variables indexes constrained to be integral e native Constraint_System constraints Returns the constraints e native Linear_Expression objective_function Returns the objective function native Optimization_Mode optimization_mode Returns the optimization mode native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string representation of this native long total_memory_in_bytes Returns the total size in bytes of the memory occupied by the underlying C object native boolean OK Checks if all the invariants are satisfied Functions that May Modify the MIP_Problem native void clear Resets this to be equal to the trivial MIP problem native void add_space_dimensions_and_embed long m The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 54 CONTENTS Adds m new space dimensions and embeds the old MIP problem in the new vector space native void add_to_integer_space_dimensions Variables_Set i_vars Sets the variables whose indexes are in set i_vars to be integer space dimensions e native void add constraint Constraint c Adds a copy of constraint c to the MIP problem e native void add constraints Constraint_System cs Adds a copy of the constraints in cs to the MIP problem native void set_objective_function Linear_Expression obj Sets the objec
120. nowledgements and or dedications given therein e L Preserve all the Invariant Sections of the Document unaltered in their text and in their titles Section numbers or the equivalent are not considered part of the section titles e M Delete any section Entitled Endorsements Such a section may not be included in the Modified Version e N Do not retitle any existing section to be Entitled Endorsements or to conflict in title with any Invariant Section O Preserve any Warranty Disclaimers If the Modified Version includes new front matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document you may at your option designate some or all of these sections as invariant To do this add their titles to the list of Invariant Sections in the Modified Version s license notice These titles must be distinct from any other section titles You may add a section Entitled Endorsements provided it contains nothing but endorsements of your Modified Version by various parties for example statements of peer review or that the text has been ap proved by an organization as the authoritative definition of a standard The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 3 GNU Free Documentation License 15 You may add a passage of up to five words as a Front Cover Text and a passage of up to 25 words as a Back Cover Text to the
121. ns 4 and 5 provided that you also convey the machine readable Corresponding Source under the terms of this License in one of these ways a Convey the object code in or embodied in a physical product including a physical distribution medium accompanied by the Corresponding Source fixed on a durable physical medium customar ily used for software interchange b Convey the object code in or embodied in a physical product including a physical distribution medium accompanied by a written offer valid for at least three years and valid for as long as you offer spare parts or customer support for that product model to give anyone who possesses the object code either 1 a copy of the Corresponding Source for all the software in the product that is covered by this License on a durable physical medium customarily used for software interchange for a price no more than your reasonable cost of physically performing this conveying of source or 2 access to copy the Corresponding Source from a network server at no charge The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 6 CONTENTS c Convey individual copies of the object code with a copy of the written offer to provide the Cor responding Source This alternative is allowed only occasionally and noncommercially and only if you received the object code with such an offer in accord with subsection 6b d Convey the ob
122. nt_System cs Variables_Set params inline Builds a PIP problem from a sequence of constraints Builds a PIP problem having space dimension dim from the constraint system cs the dimensions vars are interpreted as parameters 10 43 38 Member Function Documentation 10 43 3 1 native void parma_polyhedra_library PIP_Problem clear Resets this to be equal to the trivial PIP problem The space dimension is reset to 0 10 43 3 2 native void parma_polyhedra_library PIP_Problem add_space_dimensions_and_embed long pip_vars long pip_params Adds pip_vars pip_params new space dimensions and embeds the PIP problem in the new vector space Parameters pip_vars The number of space dimensions to add that are interpreted as PIP problem variables i e non parameters These are added before adding the pip_params parameters pip_params The number of space dimensions to add that are interpreted as PIP problem parameters These are added after having added the pip_vars problem variables The new space dimensions will be those having the highest indexes in the new PIP problem they are initially unconstrained 10 43 3 3 native void parma_polyhedra_library PIP_Problem add_constraint Constraint c Adds a copy of constraint c to the PIP problem Exceptions Invalid_Argument_ Thrown if the constraint c is a strict inequality or if its space dimension is strictly Exception greater than the space dimension
123. ntation of this 10 19 1 Detailed Description A system of generators An object of the class Generator_System is a system of generators i e a multiset of objects of the class Generator lines rays points and closure points The documentation for this class was generated from the following file e Generator_System java 10 20 parma_polyhedra library Generator Type Enum Reference The generator type Public Attributes LINE The generator is a line RAY The generator is a ray POINT The generator is a point 10 20 1 Detailed Description The generator type The documentation for this enum was generated from the following file Generator_Type java 10 21 parma_polyhedra_library Grid Generator Class Reference A grid line parameter or grid point Public Member Functions e Grid Generator_Type type Returns the generator type e Linear_Expression linear_expression Returns the linear expression in this Coefficient divisor The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 42 CONTENTS If this is either a grid point or a parameter returns its divisor native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string representation of this Static Public Member Functions e static Grid_Generator grid line Linear_Expression e Returns the li
124. obj The objective function mode The optimization mode Exceptions Length_Error_Exception Thrown if dim exceeds max_space_dimension Invalid_Argument_ Exception Thrown if the constraint system contains any strict inequality or if the space di mension of the constraint system resp the objective function is strictly greater than dim 10 35 3 Member Function Documentation 10 35 3 1 native void parma_polyhedra_library MIP_Problem clear Resets this to be equal to the trivial MIP problem The space dimension is reset to 0 10 35 3 2 native void parma_polyhedra_library MIP_Problem add_space_dimensions_and_embed long m Adds m new space dimensions and embeds the old MIP problem in the new vector space Parameters m The number of dimensions to add Exceptions Length_Error_Exception Thrown if adding m new space dimensions would cause the vector space to exceed dimension max_space_dimension The new space dimensions will be those having the highest indexes in the new MIP problem they are initially unconstrained 10 35 3 3 native void parma_polyhedra_library MIP_Problem add_to_integer_space_dimensions Variables_Set i_vars Sets the variables whose indexes are in set i_vars to be integer space dimensions Exceptions Invalid_Argument_ Exception Thrown if some index in i_vars does not correspond to a space dimension in this 10 35 3 4 nativ
125. of this 10 43 3 4 native void parma_polyhedra_library PIP_Problem add_constraints Constraint_System cs Adds a copy of the constraints in cs to the PIP problem Exceptions Invalid_Argument_ Thrown if the constraint system cs contains any strict inequality or if its space Exception dimension is strictly greater than the space dimension of this The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 44 parma_polyhedra_ library PIP_Problem_Control_Parameter_Name Enum Reference 69 10 43 3 5 native boolean parma_polyhedra_library PIP_Problem is_satisfiable Checks satisfiability of this Returns true if and only if the PIP problem is satisfiable 10 43 3 6 native PIP_Problem_Status parma_polyhedra_library PIP_Problem solve Optimizes the PIP problem Solves the PIP problem returning an exit status Returns UNFEASIBLE_PIP_PROBLEM if the PIP problem is not satisfiable OPTIMIZED_PIP_PROBLEM if the PIP problem admits an optimal solution The documentation for this class was generated from the following file PIP_Problem java 10 44 parma_polyhedra_library PIP_Problem_Control_Parameter_Name Enum Reference Names of PIP problems control parameters Public Attributes CUTTING_STRATEGY The cutting strategy rule PIVOT_ROW_STRATEGY The pivot row strategy rule 10 44 1 Detailed Description Names o
126. ome of the parties receiving the covered work authorizing them to use propagate modify or convey a specific copy of the covered work then the patent license you grant is automatically extended to all recipients of the covered work and works based on it A patent license is discriminatory if it does not include within the scope of its coverage prohibits the exercise of or is conditioned on the non exercise of one or more of the rights that are specifically granted under this License You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software under which you make payment to the third party based on the extent of your activity of conveying the work and under which the third party grants to any of the parties who would receive the covered work from you a discriminatory patent license a in connection with copies of the covered work conveyed by you or copies made from those copies or b primarily for and in connection with specific products or compilations that contain the covered work unless you entered into that arrangement or that patent license was granted prior to 28 March 2007 Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law 12 No Surrender of Others Freedom If conditions are imposed on you whether by court
127. on_Coefficient Coefficient c Builds the object corresponding to a copy of the coefficient c e Coefficient argument Returns coefficient representing the linear expression Linear_Expression_Coefficient clone Builds a copy of this Protected Attributes Coefficient coeff The coefficient representing the linear expression The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 48 CONTENTS 10 28 1 Detailed Description A linear expression built from a coefficient The documentation for this class was generated from the following file e Linear_Expression_Coefficient java 10 29 parma_polyhedra_library Linear_Expression_Difference Class Reference The difference of two linear expressions Inheritance diagram for parma_polyhedra_library Linear_Expression_Difference parma_polyhedra_library Linear_Expression parma_polyhedra_library Linear_Expression_Difference Public Member Functions e Linear_Expression_Difference Linear_Expression x Linear_Expression y Builds an object that represents the difference of the copy x and y e Linear_Expression left_hand_side Returns the left hand side of this e Linear_Expression right_hand_side Returns the left hand side of this e Linear_Expression_Difference clone Builds a copy of this Protected Attributes Linear_Expression lhs The value of the left hand side of this e Linear Exp
128. parma_polyhedra_library Polyhedron Class Reference The Java base class for C and NNC convex polyhedra The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 53 parma_polyhedra_library Polyhedron Class Reference 77 Inheritance diagram for parma_polyhedra_library Polyhedron parma_polyhedra_library Polyhedron parma_polyhedra_library C_Polyhedron Public Member Functions Member Functions that Do Not Modify the Polyhedron native long space_dimension Returns the dimension of the vector space enclosing this native long affine_dimension Returns 0 if this is empty otherwise returns the affine dimension of this e native Constraint_System constraints Returns the system of constraints native Congruence_System congruences Returns a system of eguality congruences satisfied by this native Constraint_System minimized_constraints Returns the system of constraints with no redundant constraint native Congruence_System minimized_congruences Returns a system of eguality congruences satisfied by thi s with no redundant congruences and hav ing the same affine dimension as this native boolean is_empty Returns t rue if and only if this is an empty polyhedron native boolean is_universe Returns t rue if and only if this is a universe polyhedron native boolean is_bounded Returns t rue if and only if this is a bounded polyhedron
129. permit When the Document is included in an aggregate this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document If the Cover Text requirement of section 3 is applicable to these copies of the Document then if the Document is less than one half of the entire aggregate the Document s Cover Texts may be placed on covers that bracket the Document within the aggregate or the electronic equivalent of covers if the Document is in electronic form Otherwise they must appear on printed covers that bracket the whole aggregate 8 TRANSLATION Translation is considered a kind of modification so you may distribute translations of the Document under the terms of section 4 Replacing Invariant Sections with translations requires special permission from their copyright holders but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections You may include a translation of this License and all the license notices in the Document and any Warranty Disclaimers provided that you also include the original English version of this License and the original versions of those notices and disclaimers In case of a disagreement between the translation and the original version of this License or a notice or disclaimer the The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 16 CON
130. polyhedra_library Degenerate_Element Enum Reference 10 17 parma_polyhedra_library Domain_Error_Exception Class Reference 10 18 parma_polyhedra_library Generator Class Reference lt lt 10 19 parma_polyhedra_library Generator_System Class Reference 10 20 parma_polyhedra_library Generator_Type Enum Reference 10 21 parma_polyhedra_library Grid_Generator Class Reference 10 22 parma_polyhedra_library Grid_Generator_System Class Reference 10 23 parma_polyhedra_library Grid_Generator_Type Enum Reference 10 24 parma_polyhedra_library Invalid_Argument_Exception Class Reference 10 25 parma_polyhedra_library lO Class Reference 9 RR RF RR RS ERS 10 26 parma_polyhedra_library Length_Error_Exception Class Reference 10 27 parma_polyhedra_library Linear_Expression Class Reference 10 28 parma_polyhedra_library Linear_Expression_Coefficient Class Reference 11 16 17 17 17 17 17 19 19 22 22 25 25 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information CONTENTS 10 29 10 30 10 31 10 32 10 33 10 34 10 35 10 36 10 37 10 38 10 39 10 40 10 41 10 42 10 43 10 44 10 45 10 46 10 47 10 48 10 49 10 50 10 51 10 52 10 53 10 54 10 55 10 56 10 57 parma_polyhedra_library Linear_Expression_Difference Class Refe
131. ra_library Polyhedron 90 upper_bound_assign parma_polyhedra_library Polyhedron 87 upper_bound_assign_if_exact parma_polyhedra_library C_Polyhedron 33 Variable parma_polyhedra_library Variable 97 widening assign parma_polyhedra_library Polyhedron 91 wrap_string parma_polyhedra library IO 44 parma_polyhedra_library Parma_Polyhedra_Library 61 set_deterministic_timeout parma_polyhedra_library Parma_Polyhedra_Library 62 set_irrational_precision parma_polyhedra_library Parma_Polyhedra_Library 62 set_objective_function parma_polyhedra_library MIP_Problem 57 set_rounding for_PPL parma_polyhedra_library Parma_Polyhedra_Library 61 set_timeout parma_polyhedra_library Parma_Polyhedra_Library 62 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information
132. raints in cs to refine this native void refine_with_congruences Congruence_System cgs Uses a copy of the congruences in cgs to refine this native void intersection_assign Polyhedron y Assigns to this the intersection of this and y The result is not guaranteed to be minimized native void upper_bound_assign Polyhedron y Assigns to this the upper bound of this and y native void difference_assign Polyhedron y Assigns to this the poly difference of this and y The result is not guaranteed to be minimized native void time_elapse_assign Polyhedron y Assigns to this the result of computing the time elapse between this and y native void topological_closure_assign Assigns to this its topological closure native boolean simplify_using_context_assign Polyhedron y Assigns to this a meet preserving simplification of this with respect to y If false is returned then the intersection is empty native void affine_image Variable var Linear_Expression expr Coefficient denominator Assigns to this the affine image of this under the function mapping variable var to the affine ex pression specified by expr and denominator native void affine_preimage Variable var Linear_Expression expr Coefficient denominator Assigns to this the affine preimage of this under the function mapping variable var to the affine expression specified by expr and denominator native void bounded_affine_image Variable var Linear_Expression lb_expr Lin
133. rator_Type 43 parma_polyhedra_library IO 44 parma_polyhedra_library Invalid_Argument_Exception 44 parma_polyhedra_library Length_Error_Exception 45 parma_polyhedra_library Linear_Expression 45 parma_polyhedra_library Linear_Expression_Coefficient 47 parma_polyhedra_library Linear_Expression_Difference 48 parma_polyhedra_library Linear_Expression_Sum 49 parma_polyhedra_library Linear_Expression_Times 50 parma_polyhedra_library Linear_Expression_Unary _Minus 51 parma_polyhedra_library Linear_Expression_Variable 52 parma_polyhedra_library Logic_Error_Exception 52 parma_polyhedra_library MIP_Problem 53 parma_polyhedra_library MIP_Problem_Status 58 parma_polyhedra_library Optimization_Mode 59 parma_polyhedra_library Overflow_Error_Exception ac parma_polyhedra_library PIP_Decision_Node 64 parma_polyhedra_library PIP_Problem 65 parma_polyhedra_library PIP_Problem_Control_Parameter _Name 69 parma_polyhedra_library PIP_Problem_Control_Parameter _ Value 69 parma_polyhedra_library PIP_Problem_Status 70 parma_polyhedra_library Bounded_Integer_Type_Reppasamtapotyhedra_library PIP_Solution_Node 70 29 parma_polyhedra_library PIP_Tree_Node 71 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information INDEX 101 parma_polyhedra_library Pair lt K V gt 59 parma_polyhedra_library Parma_Polyhedra_Library 60 parma_polyhedra_library Partial_Function 6
134. rence parma_polyhedra_library Linear_Expression_Sum Class Reference parma_polyhedra_library Linear_Expression_Times Class Reference parma_polyhedra_library Linear_Expression_Unary_Minus Class Reference parma_polyhedra_library Linear_Expression_Variable Class Reference parma_polyhedra_library Logic_Error_Exception Class Reference parma_polyhedra_library MIP_Problem Class Reference parma_polyhedra_library MIP_Problem_Status Enum Reference parma_polyhedra_library Optimization_Mode Enum Reference parma_polyhedra_library Overflow_Error_Exception Class Reference parma_polyhedra_library Pair lt K V gt Class Reference parma_polyhedra_library Parma_Polyhedra_Library Class Reference parma_polyhedra_library Partial_Function Class Reference parma_polyhedra_library PIP_Decision_Node Class Reference parma_polyhedra_library PIP_Problem Class Reference parma_polyhedra_library PIP_Problem_Control_Parameter_Name Enum Reference parma_polyhedra_library PIP_Problem_Control_Parameter_Value Enum Reference parma_polyhedra_library PIP_Problem_Status Enum Reference parma_polyhedra_library PIP_Solution_Node Class Reference parma_polyhedra_library PIP_Tree_Node Class Reference parma_polyhedra_library Pointset_Powerset_C_Polyhedron Class R
135. ression 45 parma_polyhedra_library Linear_Expression_Coefficient A linear expression built from a coefficient 47 The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 7 1 Class List 21 parma_polyhedra_library Linear_Expression_Difference The difference of two linear expressions 48 parma_polyhedra_library Linear_Expression_Sum The sum of two linear expressions 49 parma_polyhedra_library Linear_Expression_Times The product of a linear expression and a coefficient 50 parma_polyhedra_library Linear_Expression_Unary_Minus The negation of a linear expression 51 parma_polyhedra_library Linear_Expression_Variable A linear expression built from a variable 52 parma_polyhedra_library Logic_Error_Exception Exceptions due to errors in low level routines 52 parma_polyhedra_library MIP_Problem A Mixed Integer linear Programming problem 53 parma_polyhedra_library MIP_Problem_Status Possible outcomes of the MIP_Problem solver 58 parma_polyhedra_library Optimization_Mode Possible optimization modes 59 parma_polyhedra_library Overflow_Error_Exception Exceptions due to overflow errors 59 parma_polyhedra_library Pair lt K V gt A pair of values of type K and V 59 parma_polyhedra_library Parma_Polyhedra_Library A class collecting library level functions 60 parma_polyhedra_library Partial_Function A partial function on space dimension indices 63 parma_polyhedra_library PIP_Decision_
136. ression rhs The value of the right hand side of this The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 30 parma_polyhedra_library Linear_Expression_Sum Class Reference 49 10 29 1 Detailed Description The difference of two linear expressions The documentation for this class was generated from the following file e Linear_Expression_Difference java 10 30 parma_polyhedra_library Linear_Expression_Sum Class Reference The sum of two linear expressions Inheritance diagram for parma_polyhedra_library Linear_Expression_Sum parma_polyhedra library Linear_Expression parma_polyhedra library Linear_Expression_Sum Public Member Functions e Linear_Expression_Sum Linear_Expression x Linear_Expression y Builds an object that represents the sum of the copy of x and y Linear_Expression left_hand_side Returns the left hand side of this Linear_Expression right_hand_side Returns the right hand side of this e Linear_Expression_Sum clone Builds a copy of this Protected Attributes Linear_Expression lhs The value of the left hand side of this e Linear _Expression rhs The value of the right hand side of this The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 50 CONTENTS 10 30 1 Detailed Description The sum of two linear expressions The documentation for thi
137. rns the maximum space dimension an PIP_Problem can handle native long space_dimension Returns the space dimension of the PIP problem e native long number_of_parameter_space_dimensions Returns the number of parameter space dimensions of the PIP problem native Variables_Set parameter_space_dimensions Returns all the parameter space dimensions of problem pip e native long get_big_parameter_ dimension Returns the big parameter dimension of PIP problem pip native long number_of_constraints Returns the number of constraints defining the feasible region of pip native Constraint constraint_at_index long dim Returns the i th constraint defining the feasible region of the PIP problem pip e native Constraint_System constraints Returns the constraints native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string representation of this e native long total memory_in_bytes Returns the size in bytes of the memory occupied by the underlying C object e native long external memory_in_bytes Returns the size in bytes of the memory managed by the underlying C object native boolean OK Returns true if the pip problem is well formed i e if it satisfies all its implementation invariants returns 0 and perhaps makes some noise if broken Useful for debugging purposes Functions that May Modify the PIP_Problem native vo
138. s The documentation for this class was generated from the following file Variables_Set java The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information Index add_congruence parma_polyhedra library add_congruences parma_polyhedra library add_constraint parma_polyhedra_library parma_polyhedra_library parma_polyhedra_library add_constraints parma_polyhedra_library parma_polyhedra_library parma_polyhedra_library add_generator parma_polyhedra_library add_generators parma_polyhedra_library Polyhedron 85 Polyhedron 85 MIP_Problem 56 PIP_Problem 68 Polyhedron 85 MIP_Problem 57 PIP_Problem 68 Polyhedron 85 Polyhedron 93 Polyhedron 93 add_space_dimensions_and_embed parma_polyhedra_library parma_polyhedra_library parma_polyhedra_library MIP_Problem 56 PIP_Problem 68 Polyhedron 91 add_space_dimensions_and_project parma_polyhedra_library Polyhedron 91 add_to_integer_space_dimensions parma_polyhedra_library affine_image parma_polyhedra_library affine_preimage parma_polyhedra_library ascii_dump parma_polyhedra_library BHRZ03_widening_assign parma_polyhedra_library banner MIP_Problem 56 Polyhedron 87 Polyhedron 88 Polyhedron 84 Polyhedron 94 clear parma_polyhedra_library parma_polyhedra_library closure_point parma_polyhedra_library Coeffic
139. s an iterator referring to past the end of the sequence of disjuncts of this native void add_disjunct C_Polyhedron d Adds to this a copy of disjunct d native void drop_disjunct Pointset_Powerset_C_Polyhedron_Iterator iter Drops from this the disjunct referred by iter returns an iterator referring to the disjunct following the dropped one native void drop_disjuncts Pointset_Powerset_C_Polyhedron_Iterator first Pointset_Powerset_ C_Polyhedron_Iterator last Drops from this all the disjuncts from first to last excluded native void pairwise_reduce Modifies this by recursively merging together the pairs of disjuncts whose upper bound is the same as their set theoretical union The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 74 CONTENTS Additional Inherited Members 10 49 1 Detailed Description A powerset of C_Polyhedron objects The powerset domains can be instantiated by taking as a base domain any fixed semantic geometric de scription C and NNC polyhedra BD and octagonal shapes boxes and grids An element of the powerset domain represents a disjunctive collection of base objects its disjuncts all having the same space dimen sion Besides the methods that are available in all semantic geometric descriptions whose documentation is not repeated here the powerset domain also provides several ad hoc methods In particular the iterator types
140. s class was generated from the following file e Linear_Expression_Sum java 10 31 parma_polyhedra_library Linear_Expression_Times Class Reference The product of a linear expression and a coefficient Inheritance diagram for parma_polyhedra_library Linear_Expression_Times parma_polyhedra_library Linear_Expression parma_polyhedra_library Linear_Expression_Times Public Member Functions e Linear_Expression_Times Coefficient c Variable v Builds an object cloning the input arguments e Linear_Expression_Times Coefficient c Linear_Expression 1 Builds an object cloning the input arguments e Linear_Expression_Times Linear_Expression 1 Coefficient c Builds an object cloning the input arguments Coefficient coefficient Returns the coefficient of this e Linear_Expression linear_expression Returns the linear expression subobject of this Linear_Expression_Times clone Builds a copy of this Protected Attributes Coefficient coeff The value of the coefficient The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 32 parma_polyhedra_library Linear_Expression_Unary_Minus Class Reference 51 Linear_Expression lin_expr The value of the inner linear expression 10 31 1 Detailed Description The product of a linear expression and a coefficient The documentation for this class was generated from the following file e Linear
141. s the timeout for computations whose completion could require an exponential amount of time Parameters csecs The number of centiseconds sometimes after which a timeout will occur it must be strictly greater than zero Computations taking exponential time will be interrupted some time after csecs centiseconds have elapsed since the call to the timeout setting function by throwing a Timeout_Exception object Otherwise if the computation completes without being interrupted then the timeout should be reset by calling reset _timeout 10 40 2 8 static native void parma_polyhedra_library Parma_Polyhedra_Library set_deterministic_timeout int unscaled_weight int scale static Sets a threshold for computations whose completion could require an exponential amount of time If unscaled_weight has value u and scale has value s then the scaled weight threshold is com puted as w u 2 Computations taking exponential time will be interrupted some time after reaching the complexity threshold w by throwing a Timeout_Exception object Otherwise if the computation completes without being interrupted then the deterministic timeout should be reset by calling reset_ deterministic timeout Parameters weight unscaled_ The unscaled maximum computational weight it has to be strictly greater than zero scale The scaling factor to be applied to unscaled_weight it has to be non negative
142. s was generated from the following file Partial_Function java 10 42 parma_polyhedra_library PIP_Decision_Node Class Reference An internal node of the PIP solution tree Inheritance diagram for parma_polyhedra_library PIP_Decision_Node parma_polyhedra_library PIP_Tree_ Node parma_polyhedra_library PIP_Decision_Node Public Member Functions native PIP_Tree_Node child_node boolean branch Returns the true branch if branch is true or the false branch if branch is false of this 10 42 1 Detailed Description An internal node of the PIP solution tree The documentation for this class was generated from the following file PIP_Decision_Node java The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 43 parma_polyhedra_library PIP_Problem Class Reference 65 10 43 parma_polyhedra_library PIP_Problem Class Reference A Parametric Integer Programming problem Inherits parma_polyhedra_library PPL_Object Public Member Functions PIP_Problem long dim Builds a trivial PIP problem PIP_Problem long dim Constraint_System cs Variables_Set params Builds a PIP problem from a seguence of constraints PIP_Problem PIP_Problem y Builds a copy of y native void free Releases all resources managed by t his also resetting it to a null reference Functions that Do Not Modify the PIP_Problem native long max_space_dimension Retu
143. se any version ever published not as a draft by the Free Software Foundation How to use this License for your documents To use this License in a document you have written include a copy of the License in the document and put the following copyright and license notices just after the title page Copyright c YEAR YOUR NAME Permission is granted to copy distribute and or modify this document under the terms of the GNU Free Documentation License Version 1 2 or any later version published by the Free Software Foundation with no Invariant Sections no Front Cover Texts and no Back Cover Texts A copy of the license is included in the section entitled GNU Free Documentation License If you have Invariant Sections Front Cover Texts and Back Cover Texts replace the with Texts line with this with the Invariant Sections being LIST THEIR TITLES with the Front Cover Texts being LIST and with the Back Cover Texts being LIST If you have Invariant Sections without Cover Texts or some other combination of the three merge those two alternatives to suit the situation If your document contains nontrivial examples of program code we recommend releasing these examples in parallel under your choice of free software license such as the GNU General Public License to permit their use in free software 4 Module Index The PPL Java Language Interface User s Manual version 1 0 See http bugseng com
144. se is returned and sup_n sup_d maximum and g are left untouched 10 53 2 7 native boolean parma_polyhedra_library Polyhedron minimize Linear_Expression expr Coefficient inf_n Coefficient inf_d By_Reference lt Boolean gt minimum Generator g Returns t rue if and only if this is not empty and expr is bounded from below in this in which case the infimum value and a point where expr reaches it are computed Parameters expr The linear expression to be minimized subject to this inf_n The numerator of the infimum value inf_d The denominator of the infimum value minimum true if and only if the infimum is also the minimum value g When minimization succeeds will be assigned a point or closure point where expr reaches its infimum value Exceptions Invalid_Argument_ Thrown if expr and this are dimension incompatible Exception If this is empty or expr is not bounded from below false is returned and inf_n inf_d minimum and g are left untouched 10 53 2 8 native Poly_Con_Relation parma_polyhedra library Polyhedron relation with Constraint c Returns the relations holding between the polyhedron this and the constraint c Exceptions Invalid_Argument_ Thrown if this and constraint c are dimension incompatible Exception The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information Ni 84 CONTENTS
145. senting the linear expression e Linear_Expression_Variable clone Builds a copy of this 10 33 1 Detailed Description A linear expression built from a variable The documentation for this class was generated from the following file Linear_Expression_Variable java 10 34 parma_polyhedra_library Logic_Error_Exception Class Reference Exceptions due to errors in low level routines The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 35 parma_polyhedra_library MIP_Problem Class Reference 53 Public Member Functions e Logic Error Exception String s Constructor 10 34 1 Detailed Description Exceptions due to errors in low level routines These exceptions may be generated for instance by the inability of querying controlling the FPU behavior with respect to rounding modes The documentation for this class was generated from the following file Logic_Error_Exception java 10 35 parma_polyhedra_library MIP_Problem Class Reference A Mixed Integer linear Programming problem Inherits parma_polyhedra_library PPL_Object Public Member Functions Functions that Do Not Modify the MIP_Problem native long max_space_dimension Returns the maximum space dimension an MIP_Problem can handle native long space_dimension Returns the space dimension of the MIP problem native Variables_Set integer_space_dimensions Returns a set contai
146. t_ Thrown if this and y are topology incompatible or dimension incompatible Exception 10 53 2 26 native void parma_polyhedra_library Polyhedron difference_assign Polyhedron y Assigns to this the poly difference of this and y The result is not guaranteed to be minimized Exceptions Invalid_Argument_ Thrown if this and y are topology incompatible or dimension incompatible Exception 10 53 2 27 native void parma_polyhedra_library Polyhedron time_elapse_assign Polyhedron y Assigns to this the result of computing the time elapse between this and y Exceptions Invalid_Argument_ Thrown if this and y are topology incompatible or dimension incompatible Exception 10 53 2 28 native boolean parma_polyhedra_library Polyhedron simplify_using_context_assign Polyhedron y Assigns to this a meet preserving simplification of this with respect to y If false is returned then the intersection is empty Exceptions Invalid_Argument_ Thrown if this and y are topology incompatible or dimension incompatible Exception 10 53 2 29 native void parma_polyhedra_library Polyhedron affine_image Variable var Linear_Expression expr Coefficient denominator Assigns to this the affine image of this under the function mapping variable var to the affine expres sion specified by expr and denominator The PPL Java Language Interface User s Manual version 1 0 See http bugseng
147. this class was generated from the following file e Artificial_Parameter java 10 2 parma_polyhedra_library Artificial Parameter_Seguence Class Reference A sequence of artificial parameters Public Member Functions e Artificial_Parameter_Sequence Default constructor builds an empty sequence of artificial parameters 10 2 1 Detailed Description A sequence of artificial parameters An object of the class Artificial_Parameter_Sequence is a sequence of artificial parameters The documentation for this class was generated from the following file e Artificial_Parameter_Sequence java The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 10 3 parma_polyhedra_library Bounded_Integer_Type_Overflow Enum Reference 29 10 3 parma_polyhedra_library Bounded Integer_Type_Overflow Enum Reference Overflow behavior of bounded integer types Public Attributes OVERFLOW_WRAPS On overflow wrapping takes place OVERFLOW_UNDEFINED On overflow the result is undefined 10 3 1 Detailed Description Overflow behavior of bounded integer types The documentation for this enum was generated from the following file Bounded_Integer_Type_Overflow java 10 4 parma_polyhedra_library Bounded_Integer_Type_Representation Enum Reference Representation of bounded integer types Public Attributes UNSIGNED Unsigned binary 10 4 1 Detailed Description Representation of bou
148. tive function to obj native void set_optimization_mode Optimization_Mode mode Sets the optimization mode to mode Computing the Solution of the MIP_Problem native boolean is_satisfiable Checks satisfiability of thi s e native MIP Problem_ Status solve Optimizes the MIP problem native void evaluate_objective_function Generator evaluating point Coefficient num Coeffi cient den num den Sets num and den so that is the result of evaluating the objective function on evaluating_ point e native Generator feasible_point Returns a feasible point for this if it exists native Generator optimizing point Returns an optimal point for this if it exists native void optimal_value Coefficient num Coefficient den mum uen is the solution of the optimization problem Sets num and den so that Ouerying Setting Control Parameters native Control_Parameter_Value get_control_parameter Control_Parameter_Name name Returns the value of control parameter name e native void set_control_parameter Control_Parameter_ Value value Sets control parameter value Constructors and Destructor MIP_Problem long dim Builds a trivial MIP problem MIP_Problem long dim Constraint_System cs Linear_Expression obj Optimization Mode mode Builds an MIP problem having space dimension dim from the constraint system cs the objective function obj and optimization mode mode MIP_Problem MIP_Prob
149. tive void set_deterministic_timeout int unscaled_weight int scale Sets a threshold for computations whose completion could require an exponential amount of time e static native void reset_deterministic_timeout Resets the deterministic timeout so that the computation is not interrupted 10 40 1 Detailed Description A class collecting library level functions 10 40 2 Member Function Documentation 10 40 2 1 static native void parma_polyhedra_library Parma_Polyhedra_Library initialize_library static Initializes the Parma Polyhedra Library This method must be called after loading the library and before calling any other method from any other PPL package class 10 40 2 2 static native void parma_polyhedra_library Parma_Polyhedra_Library finalize library static Finalizes the Parma Polyhedra Library This method must be called when work with the library is done After finalization no other library method can be called except those in class Parma_Polyhedra_Library unless the library is re initialized by calling initialize_library 10 40 2 3 static native String parma_polyhedra_library Parma_Polyhedra_Library banner static Returns a string containing the PPL banner The banner provides information about the PPL version the licensing the lack of any warranty whatsoever the C compiler used to build the library where to report bugs and where to look for further information 10 40 2 4 static native
150. to the system of constraints of this without minimizing the result Parameters cs Contains the constraints that will be added to the system of constraints of this Exceptions Invalid_Argument_ Thrown if this and cs are topology incompatible or dimension incompatible Exception 10 53 2 19 native void parma_polyhedra_library Polyhedron add_congruences Congruence_System cgs Adds a copy of the congruences in cgs to this if all the congruences can be exactly represented by a polyhedron Parameters cgs The congruences to be added The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information Ni 86 CONTENTS Exceptions Invalid_Argument_ Exception Thrown if this and cgs are dimension incompatible of if there exists in cgs a proper congruence which is neither a tautology nor a contradiction 10 53 2 20 native void parma_polyhedra_library Polyhedron refine_with_constraint Constraint c Uses a copy of constraint c to refine this Exceptions Invalid_Argument_ Exception Thrown if this and constraint c are dimension incompatible 10 53 2 21 native void parma_polyhedra _library Polyhedron refine_with_congruence Congruence cg Uses a copy of congruence cg to refine this Exceptions Invalid_Argument_ Exception Thrown if this and congruence cg are dimension incompati
151. too big length size values The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 24 CONTENTS class parma_polyhedra_library Linear_Expression A linear expression class parma_polyhedra_library Linear_Expression_Coefficient A linear expression built from a coefficient class parma_polyhedra_library Linear_Expression_Difference The difference of two linear expressions class parma_polyhedra_library Linear_Expression_Sum The sum of two linear expressions class parma_polyhedra_library Linear_Expression_Times The product of a linear expression and a coefficient class parma_polyhedra_library Linear_Expression_Unary_Minus The negation of a linear expression class parma_polyhedra_library Linear_Expression_Variable A linear expression built from a variable class parma_polyhedra_library Logic_Error_Exception Exceptions due to errors in low level routines class parma_polyhedra_library MIP_Problem A Mixed Integer linear Programming problem enum parma_polyhedra_library MIP_Problem_ Status Possible outcomes of the MIP_Problem solver enum parma_polyhedra_library Optimization_Mode Possible optimization modes class parma_polyhedra_library Overflow_Error_Exception Exceptions due to overflow errors class parma_polyhedra_library Pair lt K V gt A pair of values of type K and V class parma_polyhedra_library Parma_Polyhedra_Library A class collecti
152. tribute and change under these terms To do so attach the following notices to the program It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty and each file should have at least the copyright line and a pointer to where the full notice is found The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 3 GNU Free Documentation License 11 one line to give the program s name and a brief idea of what it does Copyright C year name of author This program is free software you can redistribute it and or modify it under the terms of the GNU General Public License as published by the Free Software Foundation either version 3 of the License or at your option any later version This program is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the GNU General Public License for more details You should have received a copy of the GNU General Public License along with this program If not see http www gnu org licenses Also add information on how to contact you by electronic and paper mail If the program does terminal interaction make it output a short notice like this when it starts in an interactive mode program Copyright C year name of author This program comes with ABSOLUT
153. ual version 1 0 See http bugseng com for more information 80 CONTENTS Assigns to this the preimage of this with respect to the generalized affine relation lhs gt a rhs where gt lt is the relation symbol encoded by relsym e native void unconstrain_space_dimension Variable var Computes the cylindrification of this with respect to space dimension var assigning the result to this native void unconstrain_space_dimensions Variables_Set vars Computes the cylindrification of this with respect to the set of space dimensions vars assigning the result to this e native void widening assign Polyhedron y By_Reference lt Integer gt tp Assigns to this the result of computing the H79 widening between this and y Member Functions that May Modify the Dimension of the Vector Space native void swap Polyhedron y Swaps thi s with polyhedron y this and y can be dimension incompatible native void add_space_dimensions_and_embed long m Adds m new space dimensions and embeds the old polyhedron in the new vector space e native void add_space_dimensions_and project long m Adds m new space dimensions to the polyhedron and does not embed it in the new vector space native void concatenate_assign Polyhedron y Assigns to this the concatenation of this and y taken in this order native void remove_space_dimensions Variables_Set vars Removes all the specified dimensions from the vector space e native void r
154. void parma_polyhedra_library Parma_Polyhedra_Library set_rounding for PPL static Sets the FPU rounding mode so that the PPL abstractions based on floating point numbers work correctly This is performed automatically at initialization time Calling this function is needed only if restore_pre_ PPL_rounding has been previously called The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information 62 CONTENTS 10 40 2 5 static native void parma_polyhedra_library Parma_Polyhedra_Library restore_pre_PPL_rounding static Sets the FPU rounding mode as it was before initialization of the PPL After calling this function it is absolutely necessary to call set_rounding for_PPL before using any PPL abstractions based on floating point numbers This is performed automatically at finalization time 10 40 2 6 static native void parma_polyhedra _library Parma_Polyhedra_Library set_irrational_precision int p static Sets the precision parameter used for irrational calculations If p is less than or equal to INT_MAX sets the precision parameter used for irrational calculations to p Then in the irrational calculations returning an unbounded rational e g when computing a square root the lesser between numerator and denominator will be limited to 2x p 10 40 2 7 static native void parma_polyhedra_library Parma_Polyhedra_Library set timeout int csecs static Set
155. y conditions added under section 7 This reguirement modifies the reguirement in section 4 to keep intact all notices c You must license the entire work as a whole under this License to anyone who comes into pos session of a copy This License will therefore apply along with any applicable section 7 additional terms to the whole of the work and all its parts regardless of how they are packaged This License gives no permission to license the work in any other way but it does not invalidate such permission if you have separately received it d If the work has interactive user interfaces each must display Appropriate Legal Notices however if the Program has interactive interfaces that do not display Appropriate Legal Notices your work need not make them do so A compilation of a covered work with other separate and independent works which are not by their nature extensions of the covered work and which are not combined with it such as to form a larger program in or on a volume of a storage or distribution medium is called an aggregate if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation s users beyond what the individual works permit Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate 6 Conveying Non Source Forms You may convey a covered work in object code form under the terms of sectio
156. y Grid_Generator divisor inline If this is either a grid point or a parameter returns its divisor Exceptions RuntimeErrorException Thrown if this is a line The documentation for this class was generated from the following file e Grid Generator java 10 22 parma_polyhedra_library Grid_Generator_System Class Reference A system of grid generators Public Member Functions Grid_Generator_System Default constructor builds an empty system of grid generators native String ascii_dump Returns an ascii formatted internal representation of this native String toString Returns a string representation of this 10 221 Detailed Description A system of grid generators An object of the class Grid_Generator_ System is a system of grid generators i e a multiset of objects of the class Grid_Generator The documentation for this class was generated from the following file e Grid Generator_System java 10 23 parma_polyhedra_library Grid_Generator_Type Enum Reference The grid generator type Public Attributes LINE The generator is a line PARAMETER The generator is a parameter The PPL Java Language Interface User s Manual version 1 0 See http bugseng com for more information BS 44 CONTENTS 10 23 1 Detailed Description The grid generator type The documentation for this enum was generated from the following file e Grid_Generator_Type java 10 2
157. y Polyhedron bounds_from_below Linear_Expression expr Returns t rue if and only if expr is bounded from below in this Exceptions Invalid_Argument_ Thrown if expr and this are dimension incompatible Exception 10 53 2 4 native boolean parma_polyhedra_library Polyhedron maximize Linear_Expression expr Coefficient sup_n Coefficient sup_d By_Reference lt Boolean gt maximum Returns t rue if and only if this is not empty and expr is bounded from above in this in which case the supremum value is computed Parameters expr The linear expression to be maximized subject to this sup_n The numerator of the supremum value sup_d The denominator of the supremum value maximum t rue if and only if the supremum is also the maximum value Exceptions Invalid_Argument_ Thrown if expr and this are dimension incompatible Exception If this is empty or expr is not bounded from above false is returned and sup_n sup_d and maximum are left untouched 10 53 2 5 native boolean parma_polyhedra_library Polyhedron minimize Linear_Expression expr Coefficient inf_n Coefficient inf_d By Reference lt Boolean gt minimum Returns t rue if and only if this is not empty and expr is bounded from below in this in which case the infimum value is computed Parameters expr The linear expression to be minimized subject to this inf_n The numerator of the in
Download Pdf Manuals
Related Search
Related Contents
PK3797713 BAW-8.indd ASUS X550JK PL7926 User's Manual Vosstronics TransImp 230U3 USB powered Samsung 2400 x 600dpi 16 koopiat minutis värvilised multifunktsionaalsed laserprinterid CLX-3185 Kasutusjuhend Tebis application software innkeeper LTD Manual 取扱説明書 - 三菱電機 Photos of Test Setup Jabra CHILL for PC 6.3 Configure OpenCube XFReader Copyright © All rights reserved.
Failed to retrieve file