cprover
Toggle main menu visibility
Loading...
Searching...
No Matches
equation_symbol_mapping.h
Go to the documentation of this file.
1
/*******************************************************************\
2
3
Module: String solver
4
5
Author: Diffblue Ltd.
6
7
\*******************************************************************/
8
9
#ifndef CPROVER_SOLVERS_STRINGS_EQUATION_SYMBOL_MAPPING_H
10
#define CPROVER_SOLVERS_STRINGS_EQUATION_SYMBOL_MAPPING_H
11
12
#include <map>
13
#include <unordered_map>
14
15
#include <
util/expr.h
>
16
21
class
equation_symbol_mappingt
22
{
23
public
:
25
void
add
(
const
std::size_t i,
const
exprt
&expr);
26
30
std::vector<exprt>
find_expressions
(
const
std::size_t i);
31
34
std::vector<std::size_t>
find_equations
(
const
exprt
&expr);
35
36
private
:
38
std::map<exprt, std::vector<std::size_t>>
equations_containing
;
40
std::unordered_map<std::size_t, std::vector<exprt>>
strings_in_equation
;
41
};
42
43
#endif
// CPROVER_SOLVERS_STRINGS_EQUATION_SYMBOL_MAPPING_H
equation_symbol_mappingt
Maps equation to expressions contained in them and conversely expressions to equations that contain t...
Definition
equation_symbol_mapping.h:22
equation_symbol_mappingt::add
void add(const std::size_t i, const exprt &expr)
Record the fact that equation i contains expression expr.
Definition
equation_symbol_mapping.cpp:11
equation_symbol_mappingt::find_equations
std::vector< std::size_t > find_equations(const exprt &expr)
Definition
equation_symbol_mapping.cpp:24
equation_symbol_mappingt::equations_containing
std::map< exprt, std::vector< std::size_t > > equations_containing
Record index of the equations that contain a given expression.
Definition
equation_symbol_mapping.h:38
equation_symbol_mappingt::strings_in_equation
std::unordered_map< std::size_t, std::vector< exprt > > strings_in_equation
Record expressions that are contained in the equation with the given index.
Definition
equation_symbol_mapping.h:40
equation_symbol_mappingt::find_expressions
std::vector< exprt > find_expressions(const std::size_t i)
Definition
equation_symbol_mapping.cpp:18
exprt
Base class for all expressions.
Definition
expr.h:57
expr.h
solvers
strings
equation_symbol_mapping.h
Generated by
1.17.0