如何通过 java-api 在 z3 中生成字符串常量

how to generate string const in z3 through java-api

如何通过java-api在z3中生成字符串常量?对于整数,ctx.mkInt(int a) 生成一个值为 a 的 IntExpr 和 ctx.mkIntConst("a") 生成一个名为“a”的 IntExpr。但是,对于字符串,我只能找到 ctx.mkString("a"),它只是一个值为“a”的 SeqExpr,类似于 ctx.mkInt。所以我想要的是类似 ctx.mkStringConst("a") 但没有这样的功能。

我在pythonapi中找到,我要的就是str = String("a")

试试下面的方法。

String variable_name="foo";
Expr variable = context.mkConst(context.mkSymbol(variable_name), context.mkStringSort());