Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


C++ code for generating sets of constraints characterizing many kinds of imprecise probabilities

This repository contains two directories, one with the C++ code to generate constraints sets, the other with files resulting from using the code with many different parameters, and further files derived from these.


Usage Compilation gives the constraints program, which calculates constraints for lower probabilities for a given size of the possibility space and for given properties. Run the program without arguments to get more information.

Compilation In the directory containing this file and the source code, enter the following on the command line:

g++ -O3 -o constraints -lgsl -lgslcblas constraints.cpp constraints-classes.cpp constraints-text.cpp basic-constraints.cpp k-monotonicity-constraints.cpp asl-constraints.cpp coherence-constraints.cpp necessity-constraints.cpp print-constraints.cpp

For this command to work, you need to have the GNU compiler collection gcc, the GNU Scientific Library gsl and a BLAS library installed. The compiler can be readily changed (the code is ANSI C++/C), but if you want to change the scientific library (which is not available for non-cygwin Windows-systems), some code changes have to be made in coherence-constraints.cpp and asl-constraints.cpp.

Licensing Because I use the GPL'ed gsl library, this code is also GPL'ed. See for more information.


Explanation This package containts files with:

  • constraints for lower probabilities (extension .ine), generated by the constraints program;
  • the above, but with redundant constraints removed (extension -nr.ine), generated from the above by the redund program;
  • extreme lower probabilities (extension .ext), generated from the above (or above above) with the lcdd_gmp program from the cdd bundle.
  • adjacency lists (extension .adj), generated from the above with the adjacency_gmp program from the cdd bundle.

The first part of the filename indicated the cardinality of the possibility space, the second part the properties, the third part is the extension.

I suggest looking into the 2-lpo* or 2-lpow* files (first .ine, then -nr.ine, the *.ext) to understand the format of the files. They describe the calculation of the additive (l), positive (p), one-normed (o) (and permutation invariant (w)) lower probabilities.


  1. Missing *.ext files indicate that these cases are very computationally intensive to calculate (using the cdd bundle for vertex enumeration), which is why they were not included.
  2. Because these results were obtaining using an older version of the constraints program, the one- (o) and zero-normed (z) and positivity (p) properties are not mentioned in the .ine files, although the corresponding constraints are included if these letters are in the file name.
  3. Only a few .adj files are given, because most are not really interesting (at first sight?).

Licensing These files contain the music of the polytopes, so no license can be given or is needed for their use.

References & citing

This code has been used for my research. This research has been presented:

  • at a conference

    Quaeghebeur, Erik, and De Cooman, Gert. 2006. “Extreme Lower Probabilities.” Ed. A. Bugarin, M. A. Gil, P. Grzegorzewski, O. Hyrniewicz, J. Lawry, S. Li, and E. Miranda. Soft Methods for Integrated Uncertainty Modelling: 211–221. doi:10.1007/3-540-34777-1_26, hdl:1854/6276.

  • in a journal paper

    Quaeghebeur, Erik, and De Cooman, Gert. 2008. “Extreme Lower Probabilities.” Fuzzy Sets and Systems 159 (16): 2163–2175. doi:10.1016/j.fss.2007.11.020, hdl:1854/11713.

  • in my PhD thesis:

    Quaeghebeur, Erik. 2009. “Learning from Samples Using Coherent Lower Previsions”. Ghent, Belgium: Ghent University. Faculty of Engineering. hdl:1854/LU-495650.

Please cite the journal paper if you use any material in this repository.


C++ code for generating sets of constraints characterizing many kinds of imprecise probabilities



No releases published


No packages published