/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 02:12:46,036 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 02:12:46,058 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 02:12:46,108 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 02:12:46,108 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 02:12:46,109 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 02:12:46,112 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 02:12:46,117 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 02:12:46,118 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 02:12:46,122 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 02:12:46,122 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 02:12:46,123 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 02:12:46,123 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 02:12:46,124 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 02:12:46,125 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 02:12:46,125 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 02:12:46,126 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 02:12:46,127 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 02:12:46,128 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 02:12:46,129 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 02:12:46,130 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 02:12:46,132 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 02:12:46,134 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 02:12:46,136 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 02:12:46,137 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 02:12:46,147 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 02:12:46,148 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 02:12:46,148 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 02:12:46,149 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 02:12:46,150 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 02:12:46,151 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 02:12:46,151 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 02:12:46,152 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 02:12:46,153 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 02:12:46,153 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 02:12:46,154 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 02:12:46,154 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 02:12:46,155 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 02:12:46,155 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 02:12:46,155 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 02:12:46,156 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 02:12:46,157 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 02:12:46,158 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-08 02:12:46,182 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 02:12:46,182 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 02:12:46,183 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-08 02:12:46,183 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-08 02:12:46,184 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-08 02:12:46,184 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-08 02:12:46,184 INFO L138 SettingsManager]: * Use SBE=true [2022-04-08 02:12:46,185 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 02:12:46,185 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 02:12:46,185 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 02:12:46,185 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 02:12:46,186 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 02:12:46,186 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 02:12:46,186 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 02:12:46,186 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 02:12:46,186 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 02:12:46,186 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 02:12:46,186 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 02:12:46,187 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 02:12:46,187 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 02:12:46,187 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 02:12:46,187 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-08 02:12:46,187 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-08 02:12:46,188 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-08 02:12:46,188 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-08 02:12:46,188 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 02:12:46,188 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-08 02:12:46,188 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-08 02:12:46,189 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-08 02:12:46,189 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-08 02:12:46,422 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 02:12:46,443 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 02:12:46,445 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 02:12:46,445 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 02:12:46,446 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 02:12:46,447 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound2.c [2022-04-08 02:12:46,492 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fa12b2acc/55929c18551843ba8b45b65f15f05413/FLAGc409da8ce [2022-04-08 02:12:46,875 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 02:12:46,875 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound2.c [2022-04-08 02:12:46,882 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fa12b2acc/55929c18551843ba8b45b65f15f05413/FLAGc409da8ce [2022-04-08 02:12:47,287 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fa12b2acc/55929c18551843ba8b45b65f15f05413 [2022-04-08 02:12:47,289 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 02:12:47,290 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-08 02:12:47,295 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 02:12:47,295 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 02:12:47,301 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 02:12:47,302 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,303 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@29800f9f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47, skipping insertion in model container [2022-04-08 02:12:47,303 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,309 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 02:12:47,320 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 02:12:47,461 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound2.c[537,550] [2022-04-08 02:12:47,477 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 02:12:47,484 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 02:12:47,494 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound2.c[537,550] [2022-04-08 02:12:47,499 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 02:12:47,512 INFO L208 MainTranslator]: Completed translation [2022-04-08 02:12:47,512 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47 WrapperNode [2022-04-08 02:12:47,512 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 02:12:47,513 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 02:12:47,513 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 02:12:47,513 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 02:12:47,521 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,521 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,526 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,526 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,531 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,535 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,535 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,537 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 02:12:47,537 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 02:12:47,538 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 02:12:47,538 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 02:12:47,538 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,554 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 02:12:47,564 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:12:47,580 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-08 02:12:47,589 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-08 02:12:47,614 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 02:12:47,614 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 02:12:47,614 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 02:12:47,614 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 02:12:47,614 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 02:12:47,614 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 02:12:47,615 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 02:12:47,615 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 02:12:47,615 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 02:12:47,615 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 02:12:47,615 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 02:12:47,615 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 02:12:47,615 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 02:12:47,615 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 02:12:47,615 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 02:12:47,616 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 02:12:47,616 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 02:12:47,616 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 02:12:47,616 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 02:12:47,616 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 02:12:47,676 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 02:12:47,677 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 02:12:47,850 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 02:12:47,856 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 02:12:47,856 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-08 02:12:47,857 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 02:12:47 BoogieIcfgContainer [2022-04-08 02:12:47,857 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 02:12:47,858 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-08 02:12:47,858 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-08 02:12:47,859 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-08 02:12:47,861 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 02:12:47" (1/1) ... [2022-04-08 02:12:47,863 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-08 02:12:47,882 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 02:12:47 BasicIcfg [2022-04-08 02:12:47,882 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-08 02:12:47,884 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 02:12:47,884 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 02:12:47,886 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 02:12:47,886 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 02:12:47" (1/4) ... [2022-04-08 02:12:47,887 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6010ff21 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 02:12:47, skipping insertion in model container [2022-04-08 02:12:47,887 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:12:47" (2/4) ... [2022-04-08 02:12:47,887 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6010ff21 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 02:12:47, skipping insertion in model container [2022-04-08 02:12:47,887 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 02:12:47" (3/4) ... [2022-04-08 02:12:47,888 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6010ff21 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 02:12:47, skipping insertion in model container [2022-04-08 02:12:47,888 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 02:12:47" (4/4) ... [2022-04-08 02:12:47,888 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_unwindbound2.cqvasr [2022-04-08 02:12:47,892 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-08 02:12:47,892 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 02:12:47,929 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 02:12:47,940 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-08 02:12:47,940 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 02:12:47,959 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 02:12:47,964 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-08 02:12:47,964 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:12:47,965 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:12:47,965 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:12:47,972 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:12:47,972 INFO L85 PathProgramCache]: Analyzing trace with hash 1957529129, now seen corresponding path program 1 times [2022-04-08 02:12:47,980 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:12:47,981 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [869895342] [2022-04-08 02:12:47,981 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:47,982 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:12:48,087 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:48,166 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 02:12:48,170 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:48,188 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {33#true} is VALID [2022-04-08 02:12:48,188 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 02:12:48,189 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {33#true} {33#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 02:12:48,190 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 02:12:48,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:48,205 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {33#true} is VALID [2022-04-08 02:12:48,205 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 02:12:48,206 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 02:12:48,207 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-08 02:12:48,210 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 02:12:48,211 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {33#true} is VALID [2022-04-08 02:12:48,211 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 02:12:48,212 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 02:12:48,212 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 02:12:48,212 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {33#true} is VALID [2022-04-08 02:12:48,213 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-08 02:12:48,213 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {33#true} is VALID [2022-04-08 02:12:48,213 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 02:12:48,213 INFO L290 TraceCheckUtils]: 9: Hoare triple {33#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 02:12:48,214 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33#true} {33#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-08 02:12:48,215 INFO L290 TraceCheckUtils]: 11: Hoare triple {33#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {33#true} is VALID [2022-04-08 02:12:48,216 INFO L290 TraceCheckUtils]: 12: Hoare triple {33#true} [77] L33-3-->L33-4: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 02:12:48,216 INFO L272 TraceCheckUtils]: 13: Hoare triple {34#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {34#false} is VALID [2022-04-08 02:12:48,217 INFO L290 TraceCheckUtils]: 14: Hoare triple {34#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {34#false} is VALID [2022-04-08 02:12:48,217 INFO L290 TraceCheckUtils]: 15: Hoare triple {34#false} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 02:12:48,217 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 02:12:48,218 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 02:12:48,218 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:12:48,219 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [869895342] [2022-04-08 02:12:48,219 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [869895342] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 02:12:48,219 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 02:12:48,219 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 02:12:48,221 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1597885821] [2022-04-08 02:12:48,221 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 02:12:48,226 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-08 02:12:48,227 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:12:48,230 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 02:12:48,260 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:12:48,261 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 02:12:48,262 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:12:48,286 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 02:12:48,287 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 02:12:48,289 INFO L87 Difference]: Start difference. First operand has 30 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 02:12:48,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:48,424 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-08 02:12:48,424 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 02:12:48,424 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-08 02:12:48,424 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:12:48,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 02:12:48,437 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-08 02:12:48,437 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 02:12:48,444 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-08 02:12:48,444 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 66 transitions. [2022-04-08 02:12:48,544 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:12:48,552 INFO L225 Difference]: With dead ends: 52 [2022-04-08 02:12:48,552 INFO L226 Difference]: Without dead ends: 26 [2022-04-08 02:12:48,554 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 02:12:48,557 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 35 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 02:12:48,558 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 35 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 02:12:48,584 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2022-04-08 02:12:48,600 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 25. [2022-04-08 02:12:48,601 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:12:48,601 INFO L82 GeneralOperation]: Start isEquivalent. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 02:12:48,602 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 02:12:48,602 INFO L87 Difference]: Start difference. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 02:12:48,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:48,611 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-08 02:12:48,611 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-08 02:12:48,612 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:12:48,614 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:12:48,615 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 26 states. [2022-04-08 02:12:48,615 INFO L87 Difference]: Start difference. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 26 states. [2022-04-08 02:12:48,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:48,618 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-08 02:12:48,618 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-08 02:12:48,619 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:12:48,619 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:12:48,619 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:12:48,619 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:12:48,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 02:12:48,622 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 28 transitions. [2022-04-08 02:12:48,623 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 28 transitions. Word has length 17 [2022-04-08 02:12:48,627 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:12:48,627 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 28 transitions. [2022-04-08 02:12:48,628 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 02:12:48,628 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-08 02:12:48,629 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 02:12:48,629 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:12:48,629 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:12:48,629 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 02:12:48,630 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:12:48,632 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:12:48,632 INFO L85 PathProgramCache]: Analyzing trace with hash 583261658, now seen corresponding path program 1 times [2022-04-08 02:12:48,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:12:48,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [120708064] [2022-04-08 02:12:48,632 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:48,632 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:12:48,670 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:12:48,671 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [390974026] [2022-04-08 02:12:48,671 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:48,671 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:12:48,671 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:12:48,677 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 02:12:48,717 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-08 02:12:48,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:48,740 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 02:12:48,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:48,757 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:12:48,913 INFO L272 TraceCheckUtils]: 0: Hoare triple {199#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199#true} is VALID [2022-04-08 02:12:48,914 INFO L290 TraceCheckUtils]: 1: Hoare triple {199#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,915 INFO L290 TraceCheckUtils]: 2: Hoare triple {207#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,916 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {207#(<= ~counter~0 0)} {199#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,917 INFO L272 TraceCheckUtils]: 4: Hoare triple {207#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,918 INFO L290 TraceCheckUtils]: 5: Hoare triple {207#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,919 INFO L272 TraceCheckUtils]: 6: Hoare triple {207#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,919 INFO L290 TraceCheckUtils]: 7: Hoare triple {207#(<= ~counter~0 0)} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,919 INFO L290 TraceCheckUtils]: 8: Hoare triple {207#(<= ~counter~0 0)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,920 INFO L290 TraceCheckUtils]: 9: Hoare triple {207#(<= ~counter~0 0)} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,921 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {207#(<= ~counter~0 0)} {207#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,921 INFO L290 TraceCheckUtils]: 11: Hoare triple {207#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {207#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:48,922 INFO L290 TraceCheckUtils]: 12: Hoare triple {207#(<= ~counter~0 0)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {241#(<= |main_#t~post6| 0)} is VALID [2022-04-08 02:12:48,923 INFO L290 TraceCheckUtils]: 13: Hoare triple {241#(<= |main_#t~post6| 0)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 2)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {200#false} is VALID [2022-04-08 02:12:48,923 INFO L272 TraceCheckUtils]: 14: Hoare triple {200#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {200#false} is VALID [2022-04-08 02:12:48,924 INFO L290 TraceCheckUtils]: 15: Hoare triple {200#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {200#false} is VALID [2022-04-08 02:12:48,924 INFO L290 TraceCheckUtils]: 16: Hoare triple {200#false} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {200#false} is VALID [2022-04-08 02:12:48,925 INFO L290 TraceCheckUtils]: 17: Hoare triple {200#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {200#false} is VALID [2022-04-08 02:12:48,925 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 02:12:48,925 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 02:12:48,926 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:12:48,926 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [120708064] [2022-04-08 02:12:48,926 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:12:48,927 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [390974026] [2022-04-08 02:12:48,930 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [390974026] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 02:12:48,930 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 02:12:48,931 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 02:12:48,931 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1858964915] [2022-04-08 02:12:48,934 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 02:12:48,936 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-08 02:12:48,936 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:12:48,937 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 02:12:48,956 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:12:48,956 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 02:12:48,956 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:12:48,957 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 02:12:48,957 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 02:12:48,957 INFO L87 Difference]: Start difference. First operand 25 states and 28 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 02:12:49,023 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:49,024 INFO L93 Difference]: Finished difference Result 34 states and 37 transitions. [2022-04-08 02:12:49,024 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 02:12:49,024 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-08 02:12:49,024 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:12:49,024 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 02:12:49,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-08 02:12:49,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 02:12:49,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-08 02:12:49,028 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 37 transitions. [2022-04-08 02:12:49,061 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:12:49,062 INFO L225 Difference]: With dead ends: 34 [2022-04-08 02:12:49,062 INFO L226 Difference]: Without dead ends: 27 [2022-04-08 02:12:49,063 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 02:12:49,064 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 0 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 02:12:49,064 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 66 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 02:12:49,065 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-08 02:12:49,071 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-08 02:12:49,071 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:12:49,071 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 02:12:49,072 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 02:12:49,072 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 02:12:49,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:49,074 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-08 02:12:49,074 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-08 02:12:49,074 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:12:49,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:12:49,075 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-08 02:12:49,075 INFO L87 Difference]: Start difference. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-08 02:12:49,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:49,077 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-08 02:12:49,077 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-08 02:12:49,078 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:12:49,078 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:12:49,078 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:12:49,078 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:12:49,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 02:12:49,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-08 02:12:49,080 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 18 [2022-04-08 02:12:49,080 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:12:49,080 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-08 02:12:49,080 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 02:12:49,080 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-08 02:12:49,081 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 02:12:49,081 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:12:49,081 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:12:49,105 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-08 02:12:49,295 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:12:49,296 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:12:49,296 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:12:49,296 INFO L85 PathProgramCache]: Analyzing trace with hash 584363925, now seen corresponding path program 1 times [2022-04-08 02:12:49,296 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:12:49,297 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1778350123] [2022-04-08 02:12:49,297 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:49,297 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:12:49,310 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:12:49,310 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1054687785] [2022-04-08 02:12:49,310 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:49,310 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:12:49,311 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:12:49,312 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 02:12:49,328 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-08 02:12:49,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:49,359 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 02:12:49,367 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:49,368 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:12:49,515 INFO L272 TraceCheckUtils]: 0: Hoare triple {395#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-08 02:12:49,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {395#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {395#true} is VALID [2022-04-08 02:12:49,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {395#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-08 02:12:49,516 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {395#true} {395#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-08 02:12:49,516 INFO L272 TraceCheckUtils]: 4: Hoare triple {395#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-08 02:12:49,517 INFO L290 TraceCheckUtils]: 5: Hoare triple {395#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {395#true} is VALID [2022-04-08 02:12:49,520 INFO L272 TraceCheckUtils]: 6: Hoare triple {395#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {395#true} is VALID [2022-04-08 02:12:49,521 INFO L290 TraceCheckUtils]: 7: Hoare triple {395#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {395#true} is VALID [2022-04-08 02:12:49,521 INFO L290 TraceCheckUtils]: 8: Hoare triple {395#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-08 02:12:49,521 INFO L290 TraceCheckUtils]: 9: Hoare triple {395#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-08 02:12:49,522 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {395#true} {395#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {395#true} is VALID [2022-04-08 02:12:49,522 INFO L290 TraceCheckUtils]: 11: Hoare triple {395#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:12:49,523 INFO L290 TraceCheckUtils]: 12: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:12:49,526 INFO L290 TraceCheckUtils]: 13: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:12:49,528 INFO L272 TraceCheckUtils]: 14: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {443#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:12:49,529 INFO L290 TraceCheckUtils]: 15: Hoare triple {443#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {447#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:12:49,529 INFO L290 TraceCheckUtils]: 16: Hoare triple {447#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {396#false} is VALID [2022-04-08 02:12:49,530 INFO L290 TraceCheckUtils]: 17: Hoare triple {396#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {396#false} is VALID [2022-04-08 02:12:49,530 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 02:12:49,530 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 02:12:49,530 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:12:49,530 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1778350123] [2022-04-08 02:12:49,530 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:12:49,531 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1054687785] [2022-04-08 02:12:49,531 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1054687785] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 02:12:49,531 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 02:12:49,531 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 02:12:49,531 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [664772757] [2022-04-08 02:12:49,531 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 02:12:49,532 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-08 02:12:49,532 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:12:49,533 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 02:12:49,548 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:12:49,549 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 02:12:49,549 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:12:49,549 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 02:12:49,549 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 02:12:49,550 INFO L87 Difference]: Start difference. First operand 27 states and 30 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 02:12:49,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:49,701 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-08 02:12:49,701 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 02:12:49,701 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-08 02:12:49,702 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:12:49,702 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 02:12:49,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-08 02:12:49,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 02:12:49,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-08 02:12:49,710 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 43 transitions. [2022-04-08 02:12:49,757 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:12:49,760 INFO L225 Difference]: With dead ends: 38 [2022-04-08 02:12:49,760 INFO L226 Difference]: Without dead ends: 36 [2022-04-08 02:12:49,760 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 02:12:49,764 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 8 mSDsluCounter, 56 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 78 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 02:12:49,765 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 78 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 02:12:49,766 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-08 02:12:49,784 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 32. [2022-04-08 02:12:49,785 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:12:49,785 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:49,785 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:49,786 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:49,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:49,788 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-08 02:12:49,788 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-08 02:12:49,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:12:49,789 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:12:49,789 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 36 states. [2022-04-08 02:12:49,789 INFO L87 Difference]: Start difference. First operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 36 states. [2022-04-08 02:12:49,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:49,791 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-08 02:12:49,792 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-08 02:12:49,792 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:12:49,792 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:12:49,792 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:12:49,792 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:12:49,793 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:49,794 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 35 transitions. [2022-04-08 02:12:49,794 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 35 transitions. Word has length 18 [2022-04-08 02:12:49,795 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:12:49,795 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 35 transitions. [2022-04-08 02:12:49,799 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 02:12:49,799 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2022-04-08 02:12:49,801 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-08 02:12:49,801 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:12:49,801 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:12:49,825 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-08 02:12:50,015 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-08 02:12:50,016 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:12:50,016 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:12:50,016 INFO L85 PathProgramCache]: Analyzing trace with hash 1698322804, now seen corresponding path program 1 times [2022-04-08 02:12:50,016 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:12:50,017 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [7594137] [2022-04-08 02:12:50,017 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:50,017 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:12:50,033 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:12:50,034 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1416889554] [2022-04-08 02:12:50,034 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:50,034 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:12:50,034 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:12:50,035 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 02:12:50,075 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-08 02:12:50,089 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:50,090 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 02:12:50,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:50,100 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:12:50,227 INFO L272 TraceCheckUtils]: 0: Hoare triple {624#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-08 02:12:50,228 INFO L290 TraceCheckUtils]: 1: Hoare triple {624#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {624#true} is VALID [2022-04-08 02:12:50,228 INFO L290 TraceCheckUtils]: 2: Hoare triple {624#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-08 02:12:50,228 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {624#true} {624#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-08 02:12:50,229 INFO L272 TraceCheckUtils]: 4: Hoare triple {624#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-08 02:12:50,229 INFO L290 TraceCheckUtils]: 5: Hoare triple {624#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {624#true} is VALID [2022-04-08 02:12:50,229 INFO L272 TraceCheckUtils]: 6: Hoare triple {624#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {624#true} is VALID [2022-04-08 02:12:50,230 INFO L290 TraceCheckUtils]: 7: Hoare triple {624#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {650#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 02:12:50,231 INFO L290 TraceCheckUtils]: 8: Hoare triple {650#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {654#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:12:50,231 INFO L290 TraceCheckUtils]: 9: Hoare triple {654#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:12:50,234 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {654#(not (= |assume_abort_if_not_#in~cond| 0))} {624#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {661#(<= 1 main_~b~0)} is VALID [2022-04-08 02:12:50,235 INFO L290 TraceCheckUtils]: 11: Hoare triple {661#(<= 1 main_~b~0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {665#(<= 1 main_~y~0)} is VALID [2022-04-08 02:12:50,240 INFO L290 TraceCheckUtils]: 12: Hoare triple {665#(<= 1 main_~y~0)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {665#(<= 1 main_~y~0)} is VALID [2022-04-08 02:12:50,241 INFO L290 TraceCheckUtils]: 13: Hoare triple {665#(<= 1 main_~y~0)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {665#(<= 1 main_~y~0)} is VALID [2022-04-08 02:12:50,241 INFO L272 TraceCheckUtils]: 14: Hoare triple {665#(<= 1 main_~y~0)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {624#true} is VALID [2022-04-08 02:12:50,241 INFO L290 TraceCheckUtils]: 15: Hoare triple {624#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {624#true} is VALID [2022-04-08 02:12:50,241 INFO L290 TraceCheckUtils]: 16: Hoare triple {624#true} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-08 02:12:50,242 INFO L290 TraceCheckUtils]: 17: Hoare triple {624#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-08 02:12:50,242 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {624#true} {665#(<= 1 main_~y~0)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {665#(<= 1 main_~y~0)} is VALID [2022-04-08 02:12:50,243 INFO L290 TraceCheckUtils]: 19: Hoare triple {665#(<= 1 main_~y~0)} [91] L34-1-->L33-4: Formula: (= v_main_~y~0_7 0) InVars {main_~y~0=v_main_~y~0_7} OutVars{main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[] {625#false} is VALID [2022-04-08 02:12:50,243 INFO L272 TraceCheckUtils]: 20: Hoare triple {625#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {625#false} is VALID [2022-04-08 02:12:50,243 INFO L290 TraceCheckUtils]: 21: Hoare triple {625#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {625#false} is VALID [2022-04-08 02:12:50,243 INFO L290 TraceCheckUtils]: 22: Hoare triple {625#false} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {625#false} is VALID [2022-04-08 02:12:50,244 INFO L290 TraceCheckUtils]: 23: Hoare triple {625#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {625#false} is VALID [2022-04-08 02:12:50,244 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 02:12:50,244 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 02:12:50,244 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:12:50,244 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [7594137] [2022-04-08 02:12:50,244 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:12:50,245 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1416889554] [2022-04-08 02:12:50,245 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1416889554] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 02:12:50,245 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 02:12:50,245 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 02:12:50,245 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [556432685] [2022-04-08 02:12:50,245 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 02:12:50,246 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-08 02:12:50,246 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:12:50,246 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 02:12:50,262 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:12:50,263 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 02:12:50,263 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:12:50,263 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 02:12:50,263 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 02:12:50,263 INFO L87 Difference]: Start difference. First operand 32 states and 35 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 02:12:50,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:50,420 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2022-04-08 02:12:50,420 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 02:12:50,420 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-08 02:12:50,421 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:12:50,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 02:12:50,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-08 02:12:50,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 02:12:50,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-08 02:12:50,424 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 43 transitions. [2022-04-08 02:12:50,469 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:12:50,470 INFO L225 Difference]: With dead ends: 42 [2022-04-08 02:12:50,470 INFO L226 Difference]: Without dead ends: 35 [2022-04-08 02:12:50,471 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-08 02:12:50,472 INFO L913 BasicCegarLoop]: 23 mSDtfsCounter, 17 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 02:12:50,472 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 88 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 02:12:50,472 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-08 02:12:50,481 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 33. [2022-04-08 02:12:50,482 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:12:50,482 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:50,482 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:50,483 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:50,484 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:50,485 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-08 02:12:50,485 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-08 02:12:50,485 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:12:50,485 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:12:50,485 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-08 02:12:50,486 INFO L87 Difference]: Start difference. First operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-08 02:12:50,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:50,488 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-08 02:12:50,488 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-08 02:12:50,489 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:12:50,489 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:12:50,489 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:12:50,489 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:12:50,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:50,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 36 transitions. [2022-04-08 02:12:50,491 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 36 transitions. Word has length 24 [2022-04-08 02:12:50,491 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:12:50,491 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 36 transitions. [2022-04-08 02:12:50,491 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 02:12:50,491 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 36 transitions. [2022-04-08 02:12:50,492 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 02:12:50,492 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:12:50,492 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:12:50,513 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-08 02:12:50,692 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:12:50,693 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:12:50,693 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:12:50,693 INFO L85 PathProgramCache]: Analyzing trace with hash 919545147, now seen corresponding path program 1 times [2022-04-08 02:12:50,693 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:12:50,694 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2097518715] [2022-04-08 02:12:50,694 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:50,694 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:12:50,706 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:12:50,706 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1435828027] [2022-04-08 02:12:50,706 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:50,706 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:12:50,706 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:12:50,711 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 02:12:50,715 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-08 02:12:50,753 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:50,754 INFO L263 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 02:12:50,762 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:50,763 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:12:50,917 INFO L272 TraceCheckUtils]: 0: Hoare triple {878#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-08 02:12:50,918 INFO L290 TraceCheckUtils]: 1: Hoare triple {878#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,919 INFO L290 TraceCheckUtils]: 2: Hoare triple {886#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,919 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {886#(<= ~counter~0 0)} {878#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,920 INFO L272 TraceCheckUtils]: 4: Hoare triple {886#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,920 INFO L290 TraceCheckUtils]: 5: Hoare triple {886#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,921 INFO L272 TraceCheckUtils]: 6: Hoare triple {886#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,921 INFO L290 TraceCheckUtils]: 7: Hoare triple {886#(<= ~counter~0 0)} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,922 INFO L290 TraceCheckUtils]: 8: Hoare triple {886#(<= ~counter~0 0)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,922 INFO L290 TraceCheckUtils]: 9: Hoare triple {886#(<= ~counter~0 0)} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,923 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {886#(<= ~counter~0 0)} {886#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,923 INFO L290 TraceCheckUtils]: 11: Hoare triple {886#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:50,924 INFO L290 TraceCheckUtils]: 12: Hoare triple {886#(<= ~counter~0 0)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:50,924 INFO L290 TraceCheckUtils]: 13: Hoare triple {920#(<= ~counter~0 1)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:50,925 INFO L272 TraceCheckUtils]: 14: Hoare triple {920#(<= ~counter~0 1)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:50,925 INFO L290 TraceCheckUtils]: 15: Hoare triple {920#(<= ~counter~0 1)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:50,926 INFO L290 TraceCheckUtils]: 16: Hoare triple {920#(<= ~counter~0 1)} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:50,929 INFO L290 TraceCheckUtils]: 17: Hoare triple {920#(<= ~counter~0 1)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:50,930 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {920#(<= ~counter~0 1)} {920#(<= ~counter~0 1)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:50,930 INFO L290 TraceCheckUtils]: 19: Hoare triple {920#(<= ~counter~0 1)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:50,930 INFO L290 TraceCheckUtils]: 20: Hoare triple {920#(<= ~counter~0 1)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:50,931 INFO L290 TraceCheckUtils]: 21: Hoare triple {920#(<= ~counter~0 1)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:50,931 INFO L290 TraceCheckUtils]: 22: Hoare triple {920#(<= ~counter~0 1)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {951#(<= |main_#t~post6| 1)} is VALID [2022-04-08 02:12:50,933 INFO L290 TraceCheckUtils]: 23: Hoare triple {951#(<= |main_#t~post6| 1)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 2)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {879#false} is VALID [2022-04-08 02:12:50,933 INFO L272 TraceCheckUtils]: 24: Hoare triple {879#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {879#false} is VALID [2022-04-08 02:12:50,933 INFO L290 TraceCheckUtils]: 25: Hoare triple {879#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {879#false} is VALID [2022-04-08 02:12:50,933 INFO L290 TraceCheckUtils]: 26: Hoare triple {879#false} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {879#false} is VALID [2022-04-08 02:12:50,935 INFO L290 TraceCheckUtils]: 27: Hoare triple {879#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#false} is VALID [2022-04-08 02:12:50,935 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 02:12:50,937 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 02:12:51,123 INFO L290 TraceCheckUtils]: 27: Hoare triple {879#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#false} is VALID [2022-04-08 02:12:51,123 INFO L290 TraceCheckUtils]: 26: Hoare triple {879#false} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {879#false} is VALID [2022-04-08 02:12:51,124 INFO L290 TraceCheckUtils]: 25: Hoare triple {879#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {879#false} is VALID [2022-04-08 02:12:51,125 INFO L272 TraceCheckUtils]: 24: Hoare triple {879#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {879#false} is VALID [2022-04-08 02:12:51,125 INFO L290 TraceCheckUtils]: 23: Hoare triple {951#(<= |main_#t~post6| 1)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 2)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {879#false} is VALID [2022-04-08 02:12:51,127 INFO L290 TraceCheckUtils]: 22: Hoare triple {920#(<= ~counter~0 1)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {951#(<= |main_#t~post6| 1)} is VALID [2022-04-08 02:12:51,128 INFO L290 TraceCheckUtils]: 21: Hoare triple {920#(<= ~counter~0 1)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:51,143 INFO L290 TraceCheckUtils]: 20: Hoare triple {920#(<= ~counter~0 1)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:51,144 INFO L290 TraceCheckUtils]: 19: Hoare triple {920#(<= ~counter~0 1)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:51,145 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {878#true} {920#(<= ~counter~0 1)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:51,145 INFO L290 TraceCheckUtils]: 17: Hoare triple {878#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-08 02:12:51,146 INFO L290 TraceCheckUtils]: 16: Hoare triple {878#true} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-08 02:12:51,146 INFO L290 TraceCheckUtils]: 15: Hoare triple {878#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {878#true} is VALID [2022-04-08 02:12:51,146 INFO L272 TraceCheckUtils]: 14: Hoare triple {920#(<= ~counter~0 1)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {878#true} is VALID [2022-04-08 02:12:51,148 INFO L290 TraceCheckUtils]: 13: Hoare triple {920#(<= ~counter~0 1)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:51,149 INFO L290 TraceCheckUtils]: 12: Hoare triple {886#(<= ~counter~0 0)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {920#(<= ~counter~0 1)} is VALID [2022-04-08 02:12:51,150 INFO L290 TraceCheckUtils]: 11: Hoare triple {886#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:51,150 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {878#true} {886#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:51,150 INFO L290 TraceCheckUtils]: 9: Hoare triple {878#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-08 02:12:51,151 INFO L290 TraceCheckUtils]: 8: Hoare triple {878#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-08 02:12:51,151 INFO L290 TraceCheckUtils]: 7: Hoare triple {878#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {878#true} is VALID [2022-04-08 02:12:51,151 INFO L272 TraceCheckUtils]: 6: Hoare triple {886#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {878#true} is VALID [2022-04-08 02:12:51,152 INFO L290 TraceCheckUtils]: 5: Hoare triple {886#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:51,152 INFO L272 TraceCheckUtils]: 4: Hoare triple {886#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:51,153 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {886#(<= ~counter~0 0)} {878#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:51,153 INFO L290 TraceCheckUtils]: 2: Hoare triple {886#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:51,154 INFO L290 TraceCheckUtils]: 1: Hoare triple {878#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {886#(<= ~counter~0 0)} is VALID [2022-04-08 02:12:51,154 INFO L272 TraceCheckUtils]: 0: Hoare triple {878#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-08 02:12:51,155 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 02:12:51,155 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:12:51,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2097518715] [2022-04-08 02:12:51,155 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:12:51,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1435828027] [2022-04-08 02:12:51,155 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1435828027] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 02:12:51,155 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 02:12:51,155 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 5 [2022-04-08 02:12:51,155 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [897182473] [2022-04-08 02:12:51,155 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 02:12:51,156 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) Word has length 28 [2022-04-08 02:12:51,156 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:12:51,157 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 02:12:51,190 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:12:51,191 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 02:12:51,191 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:12:51,191 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 02:12:51,191 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 02:12:51,192 INFO L87 Difference]: Start difference. First operand 33 states and 36 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 02:12:51,274 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:51,275 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-04-08 02:12:51,275 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 02:12:51,275 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) Word has length 28 [2022-04-08 02:12:51,275 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:12:51,275 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 02:12:51,277 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-04-08 02:12:51,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 02:12:51,279 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-04-08 02:12:51,279 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 48 transitions. [2022-04-08 02:12:51,322 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:12:51,324 INFO L225 Difference]: With dead ends: 44 [2022-04-08 02:12:51,324 INFO L226 Difference]: Without dead ends: 37 [2022-04-08 02:12:51,324 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 51 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-08 02:12:51,325 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 7 mSDsluCounter, 48 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 75 SdHoareTripleChecker+Invalid, 16 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 02:12:51,325 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 75 Invalid, 16 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 02:12:51,326 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-08 02:12:51,340 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-08 02:12:51,340 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:12:51,341 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:51,341 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:51,341 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:51,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:51,343 INFO L93 Difference]: Finished difference Result 37 states and 41 transitions. [2022-04-08 02:12:51,343 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-04-08 02:12:51,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:12:51,343 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:12:51,343 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 37 states. [2022-04-08 02:12:51,344 INFO L87 Difference]: Start difference. First operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 37 states. [2022-04-08 02:12:51,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:12:51,345 INFO L93 Difference]: Finished difference Result 37 states and 41 transitions. [2022-04-08 02:12:51,345 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-04-08 02:12:51,346 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:12:51,346 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:12:51,346 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:12:51,346 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:12:51,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 02:12:51,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 41 transitions. [2022-04-08 02:12:51,348 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 41 transitions. Word has length 28 [2022-04-08 02:12:51,348 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:12:51,348 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 41 transitions. [2022-04-08 02:12:51,348 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 02:12:51,348 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-04-08 02:12:51,349 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 02:12:51,349 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:12:51,349 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:12:51,375 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 02:12:51,566 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:12:51,567 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:12:51,567 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:12:51,567 INFO L85 PathProgramCache]: Analyzing trace with hash 920647414, now seen corresponding path program 1 times [2022-04-08 02:12:51,567 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:12:51,567 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1044916730] [2022-04-08 02:12:51,567 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:51,567 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:12:51,590 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:12:51,590 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [483424073] [2022-04-08 02:12:51,590 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:12:51,590 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:12:51,590 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:12:51,591 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 02:12:51,622 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-08 02:12:51,656 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:51,658 INFO L263 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-08 02:12:51,680 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:12:51,682 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:12:56,928 INFO L272 TraceCheckUtils]: 0: Hoare triple {1237#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:12:56,930 INFO L290 TraceCheckUtils]: 1: Hoare triple {1237#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1237#true} is VALID [2022-04-08 02:12:56,930 INFO L290 TraceCheckUtils]: 2: Hoare triple {1237#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:12:56,930 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1237#true} {1237#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:12:56,930 INFO L272 TraceCheckUtils]: 4: Hoare triple {1237#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:12:56,930 INFO L290 TraceCheckUtils]: 5: Hoare triple {1237#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1237#true} is VALID [2022-04-08 02:12:56,931 INFO L272 TraceCheckUtils]: 6: Hoare triple {1237#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1237#true} is VALID [2022-04-08 02:12:56,931 INFO L290 TraceCheckUtils]: 7: Hoare triple {1237#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1237#true} is VALID [2022-04-08 02:12:56,931 INFO L290 TraceCheckUtils]: 8: Hoare triple {1237#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:12:56,931 INFO L290 TraceCheckUtils]: 9: Hoare triple {1237#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:12:56,931 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1237#true} {1237#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1237#true} is VALID [2022-04-08 02:12:56,932 INFO L290 TraceCheckUtils]: 11: Hoare triple {1237#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:12:56,932 INFO L290 TraceCheckUtils]: 12: Hoare triple {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:12:56,933 INFO L290 TraceCheckUtils]: 13: Hoare triple {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:12:56,933 INFO L272 TraceCheckUtils]: 14: Hoare triple {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1237#true} is VALID [2022-04-08 02:12:56,933 INFO L290 TraceCheckUtils]: 15: Hoare triple {1237#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1288#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:12:56,934 INFO L290 TraceCheckUtils]: 16: Hoare triple {1288#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:12:56,934 INFO L290 TraceCheckUtils]: 17: Hoare triple {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:12:56,935 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:12:56,935 INFO L290 TraceCheckUtils]: 19: Hoare triple {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {1302#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:12:56,936 INFO L290 TraceCheckUtils]: 20: Hoare triple {1302#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {1306#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= main_~z~0 main_~x~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:12:56,938 INFO L290 TraceCheckUtils]: 21: Hoare triple {1306#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= main_~z~0 main_~x~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 02:12:56,939 INFO L290 TraceCheckUtils]: 22: Hoare triple {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 02:12:56,939 INFO L290 TraceCheckUtils]: 23: Hoare triple {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 02:12:57,193 INFO L272 TraceCheckUtils]: 24: Hoare triple {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1320#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:12:57,194 INFO L290 TraceCheckUtils]: 25: Hoare triple {1320#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1324#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:12:57,194 INFO L290 TraceCheckUtils]: 26: Hoare triple {1324#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1238#false} is VALID [2022-04-08 02:12:57,194 INFO L290 TraceCheckUtils]: 27: Hoare triple {1238#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1238#false} is VALID [2022-04-08 02:12:57,194 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 02:12:57,194 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 02:13:56,748 INFO L290 TraceCheckUtils]: 27: Hoare triple {1238#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1238#false} is VALID [2022-04-08 02:13:56,749 INFO L290 TraceCheckUtils]: 26: Hoare triple {1324#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1238#false} is VALID [2022-04-08 02:13:56,750 INFO L290 TraceCheckUtils]: 25: Hoare triple {1320#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1324#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:13:56,751 INFO L272 TraceCheckUtils]: 24: Hoare triple {1340#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1320#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:13:56,751 INFO L290 TraceCheckUtils]: 23: Hoare triple {1340#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1340#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:13:56,752 INFO L290 TraceCheckUtils]: 22: Hoare triple {1340#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1340#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:13:56,774 INFO L290 TraceCheckUtils]: 21: Hoare triple {1350#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1340#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:13:56,777 INFO L290 TraceCheckUtils]: 20: Hoare triple {1354#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {1350#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-08 02:13:56,778 INFO L290 TraceCheckUtils]: 19: Hoare triple {1354#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {1354#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-08 02:13:57,072 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} {1237#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1354#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-08 02:13:57,072 INFO L290 TraceCheckUtils]: 17: Hoare triple {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:13:57,072 INFO L290 TraceCheckUtils]: 16: Hoare triple {1370#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:13:57,073 INFO L290 TraceCheckUtils]: 15: Hoare triple {1237#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1370#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 02:13:57,073 INFO L272 TraceCheckUtils]: 14: Hoare triple {1237#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1237#true} is VALID [2022-04-08 02:13:57,073 INFO L290 TraceCheckUtils]: 13: Hoare triple {1237#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1237#true} is VALID [2022-04-08 02:13:57,073 INFO L290 TraceCheckUtils]: 12: Hoare triple {1237#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1237#true} is VALID [2022-04-08 02:13:57,073 INFO L290 TraceCheckUtils]: 11: Hoare triple {1237#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1237#true} is VALID [2022-04-08 02:13:57,074 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1237#true} {1237#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1237#true} is VALID [2022-04-08 02:13:57,074 INFO L290 TraceCheckUtils]: 9: Hoare triple {1237#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:13:57,074 INFO L290 TraceCheckUtils]: 8: Hoare triple {1237#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:13:57,074 INFO L290 TraceCheckUtils]: 7: Hoare triple {1237#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1237#true} is VALID [2022-04-08 02:13:57,074 INFO L272 TraceCheckUtils]: 6: Hoare triple {1237#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1237#true} is VALID [2022-04-08 02:13:57,074 INFO L290 TraceCheckUtils]: 5: Hoare triple {1237#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1237#true} is VALID [2022-04-08 02:13:57,074 INFO L272 TraceCheckUtils]: 4: Hoare triple {1237#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:13:57,075 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1237#true} {1237#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:13:57,075 INFO L290 TraceCheckUtils]: 2: Hoare triple {1237#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:13:57,075 INFO L290 TraceCheckUtils]: 1: Hoare triple {1237#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1237#true} is VALID [2022-04-08 02:13:57,075 INFO L272 TraceCheckUtils]: 0: Hoare triple {1237#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-08 02:13:57,075 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 02:13:57,075 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:13:57,075 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1044916730] [2022-04-08 02:13:57,076 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:13:57,076 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [483424073] [2022-04-08 02:13:57,076 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [483424073] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 02:13:57,076 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 02:13:57,076 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9] total 14 [2022-04-08 02:13:57,076 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1449719886] [2022-04-08 02:13:57,076 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 02:13:57,077 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-08 02:13:57,077 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:13:57,077 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 02:13:57,730 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:13:57,730 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 02:13:57,730 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:13:57,731 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 02:13:57,731 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=142, Unknown=0, NotChecked=0, Total=182 [2022-04-08 02:13:57,731 INFO L87 Difference]: Start difference. First operand 37 states and 41 transitions. Second operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 02:14:07,572 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.82s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 02:14:14,903 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 02:14:16,247 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:16,247 INFO L93 Difference]: Finished difference Result 57 states and 65 transitions. [2022-04-08 02:14:16,247 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 02:14:16,247 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-08 02:14:16,248 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:14:16,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 02:14:16,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-08 02:14:16,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 02:14:16,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-08 02:14:16,253 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 60 transitions. [2022-04-08 02:14:17,012 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:17,013 INFO L225 Difference]: With dead ends: 57 [2022-04-08 02:14:17,013 INFO L226 Difference]: Without dead ends: 55 [2022-04-08 02:14:17,013 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 59 GetRequests, 40 SyntacticMatches, 3 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 9.0s TimeCoverageRelationStatistics Valid=66, Invalid=240, Unknown=0, NotChecked=0, Total=306 [2022-04-08 02:14:17,014 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 36 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 155 mSolverCounterSat, 17 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 7.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 38 SdHoareTripleChecker+Valid, 134 SdHoareTripleChecker+Invalid, 173 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 155 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 7.6s IncrementalHoareTripleChecker+Time [2022-04-08 02:14:17,014 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [38 Valid, 134 Invalid, 173 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 155 Invalid, 1 Unknown, 0 Unchecked, 7.6s Time] [2022-04-08 02:14:17,014 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-08 02:14:17,045 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 48. [2022-04-08 02:14:17,045 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:14:17,046 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 37 states have internal predecessors, (41), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 02:14:17,047 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 37 states have internal predecessors, (41), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 02:14:17,047 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 37 states have internal predecessors, (41), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 02:14:17,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:17,050 INFO L93 Difference]: Finished difference Result 55 states and 63 transitions. [2022-04-08 02:14:17,050 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 63 transitions. [2022-04-08 02:14:17,051 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:17,051 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:17,051 INFO L74 IsIncluded]: Start isIncluded. First operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 37 states have internal predecessors, (41), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 55 states. [2022-04-08 02:14:17,051 INFO L87 Difference]: Start difference. First operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 37 states have internal predecessors, (41), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 55 states. [2022-04-08 02:14:17,054 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:17,054 INFO L93 Difference]: Finished difference Result 55 states and 63 transitions. [2022-04-08 02:14:17,054 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 63 transitions. [2022-04-08 02:14:17,058 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:17,058 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:17,058 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:14:17,058 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:14:17,059 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 37 states have internal predecessors, (41), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 02:14:17,065 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 53 transitions. [2022-04-08 02:14:17,065 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 53 transitions. Word has length 28 [2022-04-08 02:14:17,065 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:14:17,065 INFO L478 AbstractCegarLoop]: Abstraction has 48 states and 53 transitions. [2022-04-08 02:14:17,066 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 02:14:17,066 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 53 transitions. [2022-04-08 02:14:17,066 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 02:14:17,066 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:14:17,066 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:14:17,096 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-08 02:14:17,289 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:14:17,289 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:14:17,290 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:14:17,290 INFO L85 PathProgramCache]: Analyzing trace with hash -1631509547, now seen corresponding path program 1 times [2022-04-08 02:14:17,290 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:14:17,290 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1223356911] [2022-04-08 02:14:17,290 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:17,290 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:14:17,304 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:14:17,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [961146537] [2022-04-08 02:14:17,304 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:17,304 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:14:17,304 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:14:17,306 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 02:14:17,309 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-08 02:14:17,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:17,349 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-08 02:14:17,359 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:17,360 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:14:18,631 INFO L272 TraceCheckUtils]: 0: Hoare triple {1681#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-08 02:14:18,631 INFO L290 TraceCheckUtils]: 1: Hoare triple {1681#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1681#true} is VALID [2022-04-08 02:14:18,631 INFO L290 TraceCheckUtils]: 2: Hoare triple {1681#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-08 02:14:18,639 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1681#true} {1681#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-08 02:14:18,639 INFO L272 TraceCheckUtils]: 4: Hoare triple {1681#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-08 02:14:18,640 INFO L290 TraceCheckUtils]: 5: Hoare triple {1681#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-08 02:14:18,640 INFO L272 TraceCheckUtils]: 6: Hoare triple {1681#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-08 02:14:18,640 INFO L290 TraceCheckUtils]: 7: Hoare triple {1681#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1707#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 02:14:18,641 INFO L290 TraceCheckUtils]: 8: Hoare triple {1707#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1711#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:18,641 INFO L290 TraceCheckUtils]: 9: Hoare triple {1711#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1711#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:18,641 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1711#(not (= |assume_abort_if_not_#in~cond| 0))} {1681#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1718#(<= 1 main_~b~0)} is VALID [2022-04-08 02:14:18,642 INFO L290 TraceCheckUtils]: 11: Hoare triple {1718#(<= 1 main_~b~0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1722#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:18,642 INFO L290 TraceCheckUtils]: 12: Hoare triple {1722#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1722#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:18,643 INFO L290 TraceCheckUtils]: 13: Hoare triple {1722#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1722#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:18,643 INFO L272 TraceCheckUtils]: 14: Hoare triple {1722#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-08 02:14:18,643 INFO L290 TraceCheckUtils]: 15: Hoare triple {1681#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1735#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:14:18,643 INFO L290 TraceCheckUtils]: 16: Hoare triple {1735#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1739#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:14:18,644 INFO L290 TraceCheckUtils]: 17: Hoare triple {1739#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1739#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:14:18,644 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1739#(not (= |__VERIFIER_assert_#in~cond| 0))} {1722#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1746#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:18,645 INFO L290 TraceCheckUtils]: 19: Hoare triple {1746#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {1746#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:18,645 INFO L290 TraceCheckUtils]: 20: Hoare triple {1746#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {1753#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:18,646 INFO L290 TraceCheckUtils]: 21: Hoare triple {1753#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1757#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} is VALID [2022-04-08 02:14:18,647 INFO L290 TraceCheckUtils]: 22: Hoare triple {1757#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1757#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} is VALID [2022-04-08 02:14:18,647 INFO L290 TraceCheckUtils]: 23: Hoare triple {1757#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1757#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} is VALID [2022-04-08 02:14:18,649 INFO L272 TraceCheckUtils]: 24: Hoare triple {1757#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1767#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:14:18,649 INFO L290 TraceCheckUtils]: 25: Hoare triple {1767#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1771#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:14:18,650 INFO L290 TraceCheckUtils]: 26: Hoare triple {1771#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1682#false} is VALID [2022-04-08 02:14:18,650 INFO L290 TraceCheckUtils]: 27: Hoare triple {1682#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#false} is VALID [2022-04-08 02:14:18,650 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 02:14:18,650 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 02:14:47,870 INFO L290 TraceCheckUtils]: 27: Hoare triple {1682#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#false} is VALID [2022-04-08 02:14:47,871 INFO L290 TraceCheckUtils]: 26: Hoare triple {1771#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1682#false} is VALID [2022-04-08 02:14:47,871 INFO L290 TraceCheckUtils]: 25: Hoare triple {1767#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1771#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:14:47,872 INFO L272 TraceCheckUtils]: 24: Hoare triple {1787#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1767#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:14:47,872 INFO L290 TraceCheckUtils]: 23: Hoare triple {1787#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1787#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:14:47,873 INFO L290 TraceCheckUtils]: 22: Hoare triple {1787#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1787#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:14:47,879 INFO L290 TraceCheckUtils]: 21: Hoare triple {1797#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1787#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:14:47,879 INFO L290 TraceCheckUtils]: 20: Hoare triple {1801#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {1797#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-08 02:14:47,880 INFO L290 TraceCheckUtils]: 19: Hoare triple {1801#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {1801#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-08 02:14:47,882 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1739#(not (= |__VERIFIER_assert_#in~cond| 0))} {1808#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1801#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-08 02:14:47,883 INFO L290 TraceCheckUtils]: 17: Hoare triple {1739#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1739#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:14:47,883 INFO L290 TraceCheckUtils]: 16: Hoare triple {1818#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1739#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:14:47,883 INFO L290 TraceCheckUtils]: 15: Hoare triple {1681#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1818#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 02:14:47,883 INFO L272 TraceCheckUtils]: 14: Hoare triple {1808#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-08 02:14:47,884 INFO L290 TraceCheckUtils]: 13: Hoare triple {1808#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1808#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-08 02:14:47,884 INFO L290 TraceCheckUtils]: 12: Hoare triple {1808#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1808#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-08 02:14:47,885 INFO L290 TraceCheckUtils]: 11: Hoare triple {1831#(or (= (+ (* (- 1) main_~b~0 main_~a~0) (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (* main_~b~0 main_~a~0)) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1808#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-08 02:14:47,886 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1711#(not (= |assume_abort_if_not_#in~cond| 0))} {1681#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1831#(or (= (+ (* (- 1) main_~b~0 main_~a~0) (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (* main_~b~0 main_~a~0)) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} is VALID [2022-04-08 02:14:47,886 INFO L290 TraceCheckUtils]: 9: Hoare triple {1711#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1711#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:47,886 INFO L290 TraceCheckUtils]: 8: Hoare triple {1844#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1711#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:47,887 INFO L290 TraceCheckUtils]: 7: Hoare triple {1681#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1844#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 02:14:47,887 INFO L272 TraceCheckUtils]: 6: Hoare triple {1681#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-08 02:14:47,887 INFO L290 TraceCheckUtils]: 5: Hoare triple {1681#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-08 02:14:47,887 INFO L272 TraceCheckUtils]: 4: Hoare triple {1681#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-08 02:14:47,887 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1681#true} {1681#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-08 02:14:47,887 INFO L290 TraceCheckUtils]: 2: Hoare triple {1681#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-08 02:14:47,887 INFO L290 TraceCheckUtils]: 1: Hoare triple {1681#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1681#true} is VALID [2022-04-08 02:14:47,887 INFO L272 TraceCheckUtils]: 0: Hoare triple {1681#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-08 02:14:47,888 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 02:14:47,888 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:14:47,888 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1223356911] [2022-04-08 02:14:47,888 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:14:47,888 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [961146537] [2022-04-08 02:14:47,888 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [961146537] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 02:14:47,888 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 02:14:47,888 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 20 [2022-04-08 02:14:47,889 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1690515991] [2022-04-08 02:14:47,889 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 02:14:47,889 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 28 [2022-04-08 02:14:47,890 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:14:47,890 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 02:14:47,928 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:47,928 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-08 02:14:47,928 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:14:47,928 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-08 02:14:47,928 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=67, Invalid=313, Unknown=0, NotChecked=0, Total=380 [2022-04-08 02:14:47,929 INFO L87 Difference]: Start difference. First operand 48 states and 53 transitions. Second operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 02:14:49,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:49,998 INFO L93 Difference]: Finished difference Result 75 states and 88 transitions. [2022-04-08 02:14:49,998 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 02:14:49,998 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 28 [2022-04-08 02:14:49,998 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:14:49,999 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 02:14:50,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 73 transitions. [2022-04-08 02:14:50,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 02:14:50,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 73 transitions. [2022-04-08 02:14:50,003 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 73 transitions. [2022-04-08 02:14:50,082 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:50,085 INFO L225 Difference]: With dead ends: 75 [2022-04-08 02:14:50,085 INFO L226 Difference]: Without dead ends: 68 [2022-04-08 02:14:50,086 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 36 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 122 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=127, Invalid=575, Unknown=0, NotChecked=0, Total=702 [2022-04-08 02:14:50,086 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 72 mSDsluCounter, 130 mSDsCounter, 0 mSdLazyCounter, 217 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 74 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 262 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 217 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-08 02:14:50,086 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [74 Valid, 150 Invalid, 262 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 217 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-08 02:14:50,087 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 68 states. [2022-04-08 02:14:50,114 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 68 to 65. [2022-04-08 02:14:50,114 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:14:50,114 INFO L82 GeneralOperation]: Start isEquivalent. First operand 68 states. Second operand has 65 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 51 states have internal predecessors, (59), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:14:50,115 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand has 65 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 51 states have internal predecessors, (59), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:14:50,115 INFO L87 Difference]: Start difference. First operand 68 states. Second operand has 65 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 51 states have internal predecessors, (59), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:14:50,117 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:50,117 INFO L93 Difference]: Finished difference Result 68 states and 80 transitions. [2022-04-08 02:14:50,117 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 80 transitions. [2022-04-08 02:14:50,118 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:50,118 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:50,118 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 51 states have internal predecessors, (59), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) Second operand 68 states. [2022-04-08 02:14:50,118 INFO L87 Difference]: Start difference. First operand has 65 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 51 states have internal predecessors, (59), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) Second operand 68 states. [2022-04-08 02:14:50,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:50,120 INFO L93 Difference]: Finished difference Result 68 states and 80 transitions. [2022-04-08 02:14:50,120 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 80 transitions. [2022-04-08 02:14:50,121 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:50,121 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:50,121 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:14:50,121 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:14:50,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 51 states have internal predecessors, (59), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:14:50,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 77 transitions. [2022-04-08 02:14:50,123 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 77 transitions. Word has length 28 [2022-04-08 02:14:50,123 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:14:50,123 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 77 transitions. [2022-04-08 02:14:50,124 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 02:14:50,124 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 77 transitions. [2022-04-08 02:14:50,124 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 02:14:50,124 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:14:50,124 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:14:50,147 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-08 02:14:50,335 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:14:50,336 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:14:50,336 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:14:50,336 INFO L85 PathProgramCache]: Analyzing trace with hash -357510123, now seen corresponding path program 1 times [2022-04-08 02:14:50,336 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:14:50,336 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1948494658] [2022-04-08 02:14:50,336 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:50,336 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:14:50,347 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:14:50,348 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1568383858] [2022-04-08 02:14:50,348 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:50,348 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:14:50,348 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:14:50,349 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 02:14:50,351 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-08 02:14:50,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:50,386 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-08 02:14:50,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:50,393 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:14:55,199 INFO L272 TraceCheckUtils]: 0: Hoare triple {2211#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:14:55,200 INFO L290 TraceCheckUtils]: 1: Hoare triple {2211#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2211#true} is VALID [2022-04-08 02:14:55,200 INFO L290 TraceCheckUtils]: 2: Hoare triple {2211#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:14:55,200 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2211#true} {2211#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:14:55,200 INFO L272 TraceCheckUtils]: 4: Hoare triple {2211#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:14:55,200 INFO L290 TraceCheckUtils]: 5: Hoare triple {2211#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2211#true} is VALID [2022-04-08 02:14:55,200 INFO L272 TraceCheckUtils]: 6: Hoare triple {2211#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2211#true} is VALID [2022-04-08 02:14:55,201 INFO L290 TraceCheckUtils]: 7: Hoare triple {2211#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2211#true} is VALID [2022-04-08 02:14:55,201 INFO L290 TraceCheckUtils]: 8: Hoare triple {2211#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:14:55,201 INFO L290 TraceCheckUtils]: 9: Hoare triple {2211#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:14:55,201 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2211#true} {2211#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2211#true} is VALID [2022-04-08 02:14:55,201 INFO L290 TraceCheckUtils]: 11: Hoare triple {2211#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2211#true} is VALID [2022-04-08 02:14:55,201 INFO L290 TraceCheckUtils]: 12: Hoare triple {2211#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2211#true} is VALID [2022-04-08 02:14:55,201 INFO L290 TraceCheckUtils]: 13: Hoare triple {2211#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2211#true} is VALID [2022-04-08 02:14:55,201 INFO L272 TraceCheckUtils]: 14: Hoare triple {2211#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2211#true} is VALID [2022-04-08 02:14:55,202 INFO L290 TraceCheckUtils]: 15: Hoare triple {2211#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2211#true} is VALID [2022-04-08 02:14:55,202 INFO L290 TraceCheckUtils]: 16: Hoare triple {2211#true} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:14:55,202 INFO L290 TraceCheckUtils]: 17: Hoare triple {2211#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:14:55,202 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2211#true} {2211#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2211#true} is VALID [2022-04-08 02:14:55,202 INFO L290 TraceCheckUtils]: 19: Hoare triple {2211#true} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:14:55,202 INFO L290 TraceCheckUtils]: 20: Hoare triple {2211#true} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2211#true} is VALID [2022-04-08 02:14:55,202 INFO L290 TraceCheckUtils]: 21: Hoare triple {2211#true} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2211#true} is VALID [2022-04-08 02:14:55,203 INFO L290 TraceCheckUtils]: 22: Hoare triple {2211#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2211#true} is VALID [2022-04-08 02:14:55,203 INFO L290 TraceCheckUtils]: 23: Hoare triple {2211#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2211#true} is VALID [2022-04-08 02:14:55,203 INFO L272 TraceCheckUtils]: 24: Hoare triple {2211#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2211#true} is VALID [2022-04-08 02:14:55,203 INFO L290 TraceCheckUtils]: 25: Hoare triple {2211#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2291#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:14:55,204 INFO L290 TraceCheckUtils]: 26: Hoare triple {2291#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2295#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:14:55,204 INFO L290 TraceCheckUtils]: 27: Hoare triple {2295#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2295#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:14:57,207 WARN L284 TraceCheckUtils]: 28: Hoare quadruple {2295#(not (= |__VERIFIER_assert_#in~cond| 0))} {2211#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2302#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} is UNKNOWN [2022-04-08 02:14:57,223 INFO L290 TraceCheckUtils]: 29: Hoare triple {2302#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} [91] L34-1-->L33-4: Formula: (= v_main_~y~0_7 0) InVars {main_~y~0=v_main_~y~0_7} OutVars{main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[] {2306#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:14:57,224 INFO L272 TraceCheckUtils]: 30: Hoare triple {2306#(= main_~z~0 (* main_~b~0 main_~a~0))} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {2310#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:14:57,225 INFO L290 TraceCheckUtils]: 31: Hoare triple {2310#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2314#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:14:57,225 INFO L290 TraceCheckUtils]: 32: Hoare triple {2314#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2212#false} is VALID [2022-04-08 02:14:57,226 INFO L290 TraceCheckUtils]: 33: Hoare triple {2212#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2212#false} is VALID [2022-04-08 02:14:57,226 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 02:14:57,226 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 02:15:01,926 INFO L290 TraceCheckUtils]: 33: Hoare triple {2212#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2212#false} is VALID [2022-04-08 02:15:01,927 INFO L290 TraceCheckUtils]: 32: Hoare triple {2314#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2212#false} is VALID [2022-04-08 02:15:01,928 INFO L290 TraceCheckUtils]: 31: Hoare triple {2310#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2314#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:15:01,928 INFO L272 TraceCheckUtils]: 30: Hoare triple {2306#(= main_~z~0 (* main_~b~0 main_~a~0))} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {2310#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:15:01,929 INFO L290 TraceCheckUtils]: 29: Hoare triple {2333#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} [91] L34-1-->L33-4: Formula: (= v_main_~y~0_7 0) InVars {main_~y~0=v_main_~y~0_7} OutVars{main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[] {2306#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:15:01,930 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2295#(not (= |__VERIFIER_assert_#in~cond| 0))} {2211#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2333#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-08 02:15:01,930 INFO L290 TraceCheckUtils]: 27: Hoare triple {2295#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2295#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:15:01,931 INFO L290 TraceCheckUtils]: 26: Hoare triple {2346#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2295#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:15:01,931 INFO L290 TraceCheckUtils]: 25: Hoare triple {2211#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2346#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 02:15:01,931 INFO L272 TraceCheckUtils]: 24: Hoare triple {2211#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2211#true} is VALID [2022-04-08 02:15:01,931 INFO L290 TraceCheckUtils]: 23: Hoare triple {2211#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2211#true} is VALID [2022-04-08 02:15:01,931 INFO L290 TraceCheckUtils]: 22: Hoare triple {2211#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2211#true} is VALID [2022-04-08 02:15:01,932 INFO L290 TraceCheckUtils]: 21: Hoare triple {2211#true} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2211#true} is VALID [2022-04-08 02:15:01,932 INFO L290 TraceCheckUtils]: 20: Hoare triple {2211#true} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2211#true} is VALID [2022-04-08 02:15:01,932 INFO L290 TraceCheckUtils]: 19: Hoare triple {2211#true} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:15:01,932 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2211#true} {2211#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2211#true} is VALID [2022-04-08 02:15:01,932 INFO L290 TraceCheckUtils]: 17: Hoare triple {2211#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:15:01,932 INFO L290 TraceCheckUtils]: 16: Hoare triple {2211#true} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:15:01,932 INFO L290 TraceCheckUtils]: 15: Hoare triple {2211#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2211#true} is VALID [2022-04-08 02:15:01,933 INFO L272 TraceCheckUtils]: 14: Hoare triple {2211#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2211#true} is VALID [2022-04-08 02:15:01,933 INFO L290 TraceCheckUtils]: 13: Hoare triple {2211#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2211#true} is VALID [2022-04-08 02:15:01,933 INFO L290 TraceCheckUtils]: 12: Hoare triple {2211#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2211#true} is VALID [2022-04-08 02:15:01,933 INFO L290 TraceCheckUtils]: 11: Hoare triple {2211#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2211#true} is VALID [2022-04-08 02:15:01,933 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2211#true} {2211#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2211#true} is VALID [2022-04-08 02:15:01,933 INFO L290 TraceCheckUtils]: 9: Hoare triple {2211#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:15:01,933 INFO L290 TraceCheckUtils]: 8: Hoare triple {2211#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:15:01,933 INFO L290 TraceCheckUtils]: 7: Hoare triple {2211#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2211#true} is VALID [2022-04-08 02:15:01,934 INFO L272 TraceCheckUtils]: 6: Hoare triple {2211#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2211#true} is VALID [2022-04-08 02:15:01,934 INFO L290 TraceCheckUtils]: 5: Hoare triple {2211#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2211#true} is VALID [2022-04-08 02:15:01,934 INFO L272 TraceCheckUtils]: 4: Hoare triple {2211#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:15:01,934 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2211#true} {2211#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:15:01,934 INFO L290 TraceCheckUtils]: 2: Hoare triple {2211#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:15:01,934 INFO L290 TraceCheckUtils]: 1: Hoare triple {2211#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2211#true} is VALID [2022-04-08 02:15:01,934 INFO L272 TraceCheckUtils]: 0: Hoare triple {2211#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2211#true} is VALID [2022-04-08 02:15:01,934 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 02:15:01,935 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:15:01,935 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1948494658] [2022-04-08 02:15:01,935 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:15:01,935 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1568383858] [2022-04-08 02:15:01,935 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1568383858] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 02:15:01,935 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 02:15:01,935 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 02:15:01,935 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [965391842] [2022-04-08 02:15:01,935 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 02:15:01,936 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-08 02:15:01,936 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:15:01,936 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 02:15:03,964 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 34 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 02:15:03,964 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 02:15:03,964 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:15:03,965 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 02:15:03,965 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-08 02:15:03,965 INFO L87 Difference]: Start difference. First operand 65 states and 77 transitions. Second operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 02:15:06,025 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 02:15:06,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:15:06,689 INFO L93 Difference]: Finished difference Result 72 states and 83 transitions. [2022-04-08 02:15:06,689 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 02:15:06,689 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-08 02:15:06,689 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:15:06,689 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 02:15:06,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-08 02:15:06,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 02:15:06,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-08 02:15:06,691 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 39 transitions. [2022-04-08 02:15:10,729 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 37 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-08 02:15:10,731 INFO L225 Difference]: With dead ends: 72 [2022-04-08 02:15:10,731 INFO L226 Difference]: Without dead ends: 65 [2022-04-08 02:15:10,731 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 58 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-08 02:15:10,732 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 14 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 83 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 124 SdHoareTripleChecker+Invalid, 87 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 83 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-08 02:15:10,732 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 124 Invalid, 87 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 83 Invalid, 1 Unknown, 0 Unchecked, 2.3s Time] [2022-04-08 02:15:10,732 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-08 02:15:10,760 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 65. [2022-04-08 02:15:10,760 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:15:10,761 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 65 states, 48 states have (on average 1.1875) internal successors, (57), 51 states have internal predecessors, (57), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:15:10,761 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 65 states, 48 states have (on average 1.1875) internal successors, (57), 51 states have internal predecessors, (57), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:15:10,761 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 65 states, 48 states have (on average 1.1875) internal successors, (57), 51 states have internal predecessors, (57), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:15:10,763 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:15:10,763 INFO L93 Difference]: Finished difference Result 65 states and 75 transitions. [2022-04-08 02:15:10,763 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 75 transitions. [2022-04-08 02:15:10,764 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:15:10,764 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:15:10,764 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 48 states have (on average 1.1875) internal successors, (57), 51 states have internal predecessors, (57), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-08 02:15:10,764 INFO L87 Difference]: Start difference. First operand has 65 states, 48 states have (on average 1.1875) internal successors, (57), 51 states have internal predecessors, (57), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-08 02:15:10,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:15:10,766 INFO L93 Difference]: Finished difference Result 65 states and 75 transitions. [2022-04-08 02:15:10,766 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 75 transitions. [2022-04-08 02:15:10,766 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:15:10,767 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:15:10,767 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:15:10,767 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:15:10,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 48 states have (on average 1.1875) internal successors, (57), 51 states have internal predecessors, (57), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:15:10,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 75 transitions. [2022-04-08 02:15:10,769 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 75 transitions. Word has length 34 [2022-04-08 02:15:10,769 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:15:10,769 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 75 transitions. [2022-04-08 02:15:10,770 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 02:15:10,770 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 75 transitions. [2022-04-08 02:15:10,770 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-08 02:15:10,771 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:15:10,771 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:15:10,793 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-08 02:15:10,983 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:15:10,983 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:15:10,984 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:15:10,984 INFO L85 PathProgramCache]: Analyzing trace with hash -782932132, now seen corresponding path program 2 times [2022-04-08 02:15:10,984 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:15:10,984 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1037578849] [2022-04-08 02:15:10,984 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:15:10,984 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:15:10,995 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:15:10,995 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [815117104] [2022-04-08 02:15:10,995 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 02:15:10,995 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:15:10,995 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:15:10,997 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 02:15:11,004 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-08 02:15:11,054 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 02:15:11,055 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-08 02:15:11,055 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-08 02:15:11,071 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-08 02:15:11,108 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-08 02:15:11,108 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-08 02:15:11,109 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 02:15:11,175 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-08 02:15:11,311 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-08 02:15:11,314 INFO L719 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:15:11,316 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 02:15:11,345 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L27 has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L10-2 has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L13-2 has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 02:15:11,346 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L45 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L33-4 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-04-08 02:15:11,347 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-08 02:15:11,347 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-08 02:15:11,348 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 02:15:11 BasicIcfg [2022-04-08 02:15:11,348 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 02:15:11,349 INFO L158 Benchmark]: Toolchain (without parser) took 144058.75ms. Allocated memory was 198.2MB in the beginning and 238.0MB in the end (delta: 39.8MB). Free memory was 147.1MB in the beginning and 173.5MB in the end (delta: -26.4MB). Peak memory consumption was 14.4MB. Max. memory is 8.0GB. [2022-04-08 02:15:11,349 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 198.2MB. Free memory was 163.3MB in the beginning and 163.3MB in the end (delta: 73.9kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 02:15:11,349 INFO L158 Benchmark]: CACSL2BoogieTranslator took 217.33ms. Allocated memory is still 198.2MB. Free memory was 146.9MB in the beginning and 173.9MB in the end (delta: -26.9MB). Peak memory consumption was 10.9MB. Max. memory is 8.0GB. [2022-04-08 02:15:11,349 INFO L158 Benchmark]: Boogie Preprocessor took 23.76ms. Allocated memory is still 198.2MB. Free memory was 173.9MB in the beginning and 172.3MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-08 02:15:11,350 INFO L158 Benchmark]: RCFGBuilder took 320.02ms. Allocated memory is still 198.2MB. Free memory was 172.3MB in the beginning and 160.7MB in the end (delta: 11.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-08 02:15:11,350 INFO L158 Benchmark]: IcfgTransformer took 24.59ms. Allocated memory is still 198.2MB. Free memory was 160.7MB in the beginning and 159.3MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-08 02:15:11,350 INFO L158 Benchmark]: TraceAbstraction took 143464.17ms. Allocated memory was 198.2MB in the beginning and 238.0MB in the end (delta: 39.8MB). Free memory was 158.7MB in the beginning and 173.5MB in the end (delta: -14.8MB). Peak memory consumption was 25.5MB. Max. memory is 8.0GB. [2022-04-08 02:15:11,352 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 198.2MB. Free memory was 163.3MB in the beginning and 163.3MB in the end (delta: 73.9kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 217.33ms. Allocated memory is still 198.2MB. Free memory was 146.9MB in the beginning and 173.9MB in the end (delta: -26.9MB). Peak memory consumption was 10.9MB. Max. memory is 8.0GB. * Boogie Preprocessor took 23.76ms. Allocated memory is still 198.2MB. Free memory was 173.9MB in the beginning and 172.3MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 320.02ms. Allocated memory is still 198.2MB. Free memory was 172.3MB in the beginning and 160.7MB in the end (delta: 11.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 24.59ms. Allocated memory is still 198.2MB. Free memory was 160.7MB in the beginning and 159.3MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * TraceAbstraction took 143464.17ms. Allocated memory was 198.2MB in the beginning and 238.0MB in the end (delta: 39.8MB). Free memory was 158.7MB in the beginning and 173.5MB in the end (delta: -14.8MB). Peak memory consumption was 25.5MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 15]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L20] int counter = 0; VAL [\old(counter)=11, counter=0] [L22] int a, b; [L23] long long x, y, z; [L25] a = __VERIFIER_nondet_int() [L26] b = __VERIFIER_nondet_int() [L27] CALL assume_abort_if_not(b >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L10] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L27] RET assume_abort_if_not(b >= 1) VAL [\old(counter)=0, a=2, b=7, counter=0] [L29] x = a [L30] y = b [L31] z = 0 VAL [\old(counter)=0, a=2, b=7, counter=0, x=2, y=7, z=0] [L33] EXPR counter++ VAL [\old(counter)=0, a=2, b=7, counter=1, counter++=0, x=2, y=7, z=0] [L33] COND TRUE counter++<2 [L34] CALL __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L13] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L34] RET __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(counter)=0, a=2, b=7, counter=1, x=2, y=7, z=0] [L35] COND FALSE !(!(y != 0)) VAL [\old(counter)=0, a=2, b=7, counter=1, x=2, y=7, z=0] [L38] COND TRUE y % 2 == 1 [L39] z = z + x [L40] y = y - 1 VAL [\old(counter)=0, a=2, b=7, counter=1, x=2, y=6, z=2] [L42] x = 2 * x [L43] y = y / 2 VAL [\old(counter)=0, a=2, b=7, counter=1, x=4, y=3, z=2] [L33] EXPR counter++ VAL [\old(counter)=0, a=2, b=7, counter=2, counter++=1, x=4, y=3, z=2] [L33] COND TRUE counter++<2 [L34] CALL __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(cond)=1, \old(counter)=0, counter=2] [L13] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L34] RET __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(counter)=0, a=2, b=7, counter=2, x=4, y=3, z=2] [L35] COND FALSE !(!(y != 0)) VAL [\old(counter)=0, a=2, b=7, counter=2, x=4, y=3, z=2] [L38] COND TRUE y % 2 == 1 [L39] z = z + x [L40] y = y - 1 VAL [\old(counter)=0, a=2, b=7, counter=2, x=4, y=2, z=6] [L42] x = 2 * x [L43] y = y / 2 VAL [\old(counter)=0, a=2, b=7, counter=2, x=8, y=1, z=6] [L33] EXPR counter++ VAL [\old(counter)=0, a=2, b=7, counter=3, counter++=2, x=8, y=1, z=6] [L33] COND FALSE !(counter++<2) [L45] CALL __VERIFIER_assert(z == (long long) a * b) VAL [\old(cond)=0, \old(counter)=0, counter=3] [L13] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=3] [L15] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=3] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 30 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 143.4s, OverallIterations: 9, TraceHistogramMax: 3, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 29.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 2 mSolverCounterUnknown, 171 SdHoareTripleChecker+Valid, 10.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 164 mSDsluCounter, 750 SdHoareTripleChecker+Invalid, 10.8s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 557 mSDsCounter, 76 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 570 IncrementalHoareTripleChecker+Invalid, 648 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 76 mSolverCounterUnsat, 193 mSDtfsCounter, 570 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 312 GetRequests, 238 SyntacticMatches, 6 SemanticMatches, 68 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 177 ImplicationChecksByTransitivity, 9.8s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=65occurred in iteration=7, InterpolantAutomatonStates: 62, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 8 MinimizatonAttempts, 17 StatesRemovedByMinimization, 5 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 108.6s InterpolantComputationTime, 233 NumberOfCodeBlocks, 233 NumberOfCodeBlocksAsserted, 10 NumberOfCheckSat, 301 ConstructedInterpolants, 0 QuantifiedInterpolants, 1329 SizeOfPredicates, 21 NumberOfNonLiveVariables, 705 ConjunctsInSsa, 96 ConjunctsInUnsatCore, 12 InterpolantComputations, 4 PerfectInterpolantSequences, 35/54 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-08 02:15:11,387 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...