From e253094f6b4ade626813a3d500d86785e5dde138 Mon Sep 17 00:00:00 2001 From: ajreynol Date: Thu, 8 Oct 2015 23:57:50 +0200 Subject: Minor improvements to strings. Refactor rewriter. Enable fairness for multiple sorts in UF finite model finding by default. --- src/theory/strings/theory_strings.h | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'src/theory/strings/theory_strings.h') diff --git a/src/theory/strings/theory_strings.h b/src/theory/strings/theory_strings.h index ce2422faf..7e09a8e5b 100644 --- a/src/theory/strings/theory_strings.h +++ b/src/theory/strings/theory_strings.h @@ -360,9 +360,19 @@ protected: void printConcat( std::vector< Node >& n, const char * c ); void inferSubstitutionProxyVars( Node n, std::vector< Node >& vars, std::vector< Node >& subs, std::vector< Node >& unproc ); - + + enum { + sk_id_c_spt, + sk_id_vc_spt, + sk_id_v_spt, + sk_id_ctn_pre, + sk_id_ctn_post, + sk_id_deq_x, + sk_id_deq_y, + sk_id_deq_z, + }; std::map< Node, std::map< Node, std::map< int, Node > > > d_skolem_cache; - Node mkSkolemSplit( Node a, Node b, const char * c, int isLenSplit = 0 ); + Node mkSkolemCached( Node a, Node b, int id, const char * c, int isLenSplit = 0 ); private: // Special String Functions -- cgit v1.2.3