3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-29 22:40:08 +00:00
z3/src/sat/sat_iff3_finder.h
Nikolaj Bjorner 4bc044c982 update header guards to be C++ style. Fixes issue #9
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-07-08 23:18:40 -07:00

48 lines
824 B
C++

/*++
Copyright (c) 2011 Microsoft Corporation
Module Name:
sat_iff3_finder.h
Abstract:
Find constraints of the form x = l1 = l2
That is, search for clauses of the form
~x \/ l1 \/ ~l2
~x \/ ~l1 \/ l2
x \/ l1 \/ l2
x \/ ~l1 \/ ~l2
The basic idea is to sort the watch lists.
This information can be used to propagate equivalences
during probing (and search).
Author:
Leonardo de Moura (leonardo) 2011-06-04.
Revision History:
--*/
#ifndef SAT_IFF3_FINDER_H_
#define SAT_IFF3_FINDER_H_
#include"sat_types.h"
namespace sat {
class iff3_finder {
solver & s;
void sort_watches();
void mk_eq(literal l1, literal l2);
public:
iff3_finder(solver & s);
void operator()();
};
};
#endif