3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-06-27 00:18:45 +00:00
z3/src/shell/smtlib_frontend.h
Nikolaj Bjorner 6022c17131 Add simplification customization for SMTLIB2
Add the ability to customize incremental pre-processing simplification for the SMTLIB2 front-end. The main new capability is to use pre-processing tactics in incremental mode that were previously not available. The main new capabilities are
- solve-eqs
- reduce-args
- elim-unconstrained
There are several more. Documentation and exposed simplifiers are populated incrementally. The current set of supported simplifiers can be inspected by using z3 with the --simplifiers flag or referring to https://microsoft.github.io/z3guide/docs/strategies/simplifiers

Some pending features are:
- add the ability to update parameters to simplifiers similar to how tactics can be controlled using parameters.
- expose simplification solvers over the binary API.
2023-01-30 22:38:51 -08:00

29 lines
498 B
C

/*++
Copyright (c) 2006 Microsoft Corporation
Module Name:
smtlib_frontend.h
Abstract:
Smtlib frontend.
Author:
Leonardo de Moura (leonardo) 2006-11-2.
Revision History:
--*/
#pragma once
unsigned read_smtlib_file(char const * benchmark_file);
unsigned read_smtlib2_commands(char const * command_file);
void help_tactics();
void help_simplifiers();
void help_probes();
void help_tactic(char const* name, bool markdown);
void help_simplifier(char const* name, bool markdown);