Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Minimize for octagons #44

Open
sim642 opened this issue Jun 13, 2022 · 0 comments
Open

Minimize for octagons #44

sim642 opened this issue Jun 13, 2022 · 0 comments
Labels
enhancement New feature or request

Comments

@sim642
Copy link
Contributor

sim642 commented Jun 13, 2022

The original octagon library implements and documents a minimization algorithm. The Apron implementation of octagon minimization is missing:

/* NOT IMPLEMENTED: do nothing */
void oct_minimize(ap_manager_t* man, oct_t* a)
{
oct_internal_t* pr = oct_init_from_manager(man,AP_FUNID_MINIMIZE,0);
ap_manager_raise_exception(man,AP_EXC_NOT_IMPLEMENTED,pr->funid,
"not implemented");
}

Although the original implementation has a separate space-efficient storage format for minimized octagons, Apron clearly does not. Nevertheless, the algorithm could still be implemented to just act on and return the half-matrix representation (or really just modify it in-place).

It wouldn't offer actual space savings, but it would be useful for printing and to_lincons_array to have the octagon minimzed, such that they don't return an incomprehensibly large set of redundant constraints.

@antoinemine antoinemine added the enhancement New feature or request label Jun 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants