/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_valuebound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 02:13:57,991 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 02:13:57,992 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 02:13:58,022 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 02:13:58,022 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 02:13:58,033 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 02:13:58,037 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 02:13:58,038 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 02:13:58,039 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 02:13:58,039 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 02:13:58,040 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 02:13:58,041 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 02:13:58,041 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 02:13:58,041 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 02:13:58,042 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 02:13:58,043 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 02:13:58,043 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 02:13:58,044 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 02:13:58,045 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 02:13:58,046 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 02:13:58,047 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 02:13:58,054 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 02:13:58,058 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 02:13:58,058 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 02:13:58,060 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 02:13:58,061 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 02:13:58,062 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 02:13:58,062 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 02:13:58,062 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 02:13:58,062 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 02:13:58,063 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 02:13:58,063 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 02:13:58,064 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 02:13:58,064 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 02:13:58,064 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 02:13:58,065 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 02:13:58,065 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 02:13:58,066 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 02:13:58,066 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 02:13:58,066 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 02:13:58,066 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 02:13:58,073 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 02:13:58,073 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:13:58,099 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 02:13:58,099 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 02:13:58,100 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-08 02:13:58,100 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-08 02:13:58,101 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-08 02:13:58,101 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-08 02:13:58,101 INFO L138 SettingsManager]: * Use SBE=true [2022-04-08 02:13:58,101 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 02:13:58,101 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 02:13:58,101 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 02:13:58,102 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 02:13:58,102 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 02:13:58,102 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 02:13:58,102 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 02:13:58,102 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 02:13:58,102 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 02:13:58,102 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 02:13:58,102 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 02:13:58,102 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 02:13:58,102 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 02:13:58,103 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 02:13:58,103 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-08 02:13:58,103 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-08 02:13:58,103 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-08 02:13:58,103 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-08 02:13:58,103 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 02:13:58,103 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-08 02:13:58,103 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-08 02:13:58,104 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-08 02:13:58,104 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:13:58,244 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 02:13:58,261 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 02:13:58,262 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 02:13:58,263 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 02:13:58,263 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 02:13:58,264 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound2.c [2022-04-08 02:13:58,309 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7d0ecd4c5/f23c9d6f076a43fabb7c235009c8f314/FLAG1640fc038 [2022-04-08 02:13:58,618 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 02:13:58,618 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound2.c [2022-04-08 02:13:58,624 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7d0ecd4c5/f23c9d6f076a43fabb7c235009c8f314/FLAG1640fc038 [2022-04-08 02:13:59,045 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7d0ecd4c5/f23c9d6f076a43fabb7c235009c8f314 [2022-04-08 02:13:59,046 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 02:13:59,047 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-08 02:13:59,048 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 02:13:59,048 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 02:13:59,050 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 02:13:59,051 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,052 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4a422450 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59, skipping insertion in model container [2022-04-08 02:13:59,052 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,056 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 02:13:59,067 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 02:13:59,216 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_valuebound2.c[537,550] [2022-04-08 02:13:59,230 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 02:13:59,251 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 02:13:59,259 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_valuebound2.c[537,550] [2022-04-08 02:13:59,262 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 02:13:59,271 INFO L208 MainTranslator]: Completed translation [2022-04-08 02:13:59,271 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59 WrapperNode [2022-04-08 02:13:59,273 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 02:13:59,274 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 02:13:59,274 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 02:13:59,274 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 02:13:59,280 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,280 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,284 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,285 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,296 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,301 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,302 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,306 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 02:13:59,306 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 02:13:59,307 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 02:13:59,307 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 02:13:59,307 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 02:13:59,319 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:13:59,338 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:13:59,340 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:13:59,370 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 02:13:59,370 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 02:13:59,370 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 02:13:59,370 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 02:13:59,370 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 02:13:59,371 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 02:13:59,371 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 02:13:59,371 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 02:13:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 02:13:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 02:13:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 02:13:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 02:13:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 02:13:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 02:13:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 02:13:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 02:13:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 02:13:59,372 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 02:13:59,373 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 02:13:59,373 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 02:13:59,427 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 02:13:59,428 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 02:13:59,527 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 02:13:59,532 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 02:13:59,532 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-08 02:13:59,533 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 02:13:59 BoogieIcfgContainer [2022-04-08 02:13:59,533 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 02:13:59,534 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-08 02:13:59,534 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-08 02:13:59,534 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-08 02:13:59,536 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 02:13:59" (1/1) ... [2022-04-08 02:13:59,537 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-08 02:13:59,557 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 02:13:59 BasicIcfg [2022-04-08 02:13:59,557 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-08 02:13:59,558 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 02:13:59,558 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 02:13:59,560 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 02:13:59,560 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 02:13:59" (1/4) ... [2022-04-08 02:13:59,560 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@41ce409a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 02:13:59, skipping insertion in model container [2022-04-08 02:13:59,561 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 02:13:59" (2/4) ... [2022-04-08 02:13:59,561 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@41ce409a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 02:13:59, skipping insertion in model container [2022-04-08 02:13:59,561 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 02:13:59" (3/4) ... [2022-04-08 02:13:59,561 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@41ce409a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 02:13:59, skipping insertion in model container [2022-04-08 02:13:59,561 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 02:13:59" (4/4) ... [2022-04-08 02:13:59,562 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_valuebound2.cqvasr [2022-04-08 02:13:59,565 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-08 02:13:59,565 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 02:13:59,590 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 02:13:59,594 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:13:59,594 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 02:13:59,617 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 7 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 02:13:59,620 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 02:13:59,621 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:13:59,621 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:13:59,621 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:13:59,624 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:13:59,624 INFO L85 PathProgramCache]: Analyzing trace with hash 1656134296, now seen corresponding path program 1 times [2022-04-08 02:13:59,630 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:13:59,630 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1969963054] [2022-04-08 02:13:59,631 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:13:59,631 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:13:59,705 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:13:59,740 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 02:13:59,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:13:59,753 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {35#true} is VALID [2022-04-08 02:13:59,753 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-08 02:13:59,753 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-08 02:13:59,754 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 02:13:59,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:13:59,760 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [82] 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] {35#true} is VALID [2022-04-08 02:13:59,760 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,761 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,761 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {36#false} is VALID [2022-04-08 02:13:59,761 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 02:13:59,763 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:13:59,767 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [82] 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] {35#true} is VALID [2022-04-08 02:13:59,767 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,768 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,768 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-08 02:13:59,768 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 02:13:59,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:13:59,774 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [82] 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] {35#true} is VALID [2022-04-08 02:13:59,774 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,775 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,775 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-08 02:13:59,776 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 02:13:59,776 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {35#true} is VALID [2022-04-08 02:13:59,776 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-08 02:13:59,777 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-08 02:13:59,777 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-08 02:13:59,777 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {35#true} is VALID [2022-04-08 02:13:59,777 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {35#true} is VALID [2022-04-08 02:13:59,777 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} [82] 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] {35#true} is VALID [2022-04-08 02:13:59,778 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,778 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,778 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {36#false} is VALID [2022-04-08 02:13:59,778 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {36#false} is VALID [2022-04-08 02:13:59,779 INFO L272 TraceCheckUtils]: 12: Hoare triple {36#false} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-08 02:13:59,779 INFO L290 TraceCheckUtils]: 13: Hoare triple {35#true} [82] 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] {35#true} is VALID [2022-04-08 02:13:59,779 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,780 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,780 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {36#false} {36#false} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-08 02:13:59,780 INFO L272 TraceCheckUtils]: 17: Hoare triple {36#false} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-08 02:13:59,780 INFO L290 TraceCheckUtils]: 18: Hoare triple {35#true} [82] 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] {35#true} is VALID [2022-04-08 02:13:59,781 INFO L290 TraceCheckUtils]: 19: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,781 INFO L290 TraceCheckUtils]: 20: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,781 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {36#false} {36#false} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-08 02:13:59,781 INFO L290 TraceCheckUtils]: 22: Hoare triple {36#false} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {36#false} is VALID [2022-04-08 02:13:59,781 INFO L290 TraceCheckUtils]: 23: Hoare triple {36#false} [89] L34-2-->L34-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,782 INFO L272 TraceCheckUtils]: 24: Hoare triple {36#false} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} 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] {36#false} is VALID [2022-04-08 02:13:59,782 INFO L290 TraceCheckUtils]: 25: Hoare triple {36#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {36#false} is VALID [2022-04-08 02:13:59,782 INFO L290 TraceCheckUtils]: 26: Hoare triple {36#false} [99] L13-->L14: Formula: (= 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[] {36#false} is VALID [2022-04-08 02:13:59,782 INFO L290 TraceCheckUtils]: 27: Hoare triple {36#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-08 02:13:59,783 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 02:13:59,783 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:13:59,783 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1969963054] [2022-04-08 02:13:59,784 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1969963054] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 02:13:59,784 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 02:13:59,784 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 02:13:59,785 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [719194931] [2022-04-08 02:13:59,785 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 02:13:59,789 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-08 02:13:59,790 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:13:59,792 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 02:13:59,812 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:13:59,812 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 02:13:59,812 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:13:59,825 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 02:13:59,825 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 02:13:59,827 INFO L87 Difference]: Start difference. First operand has 32 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 7 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 02:13:59,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:13:59,916 INFO L93 Difference]: Finished difference Result 57 states and 77 transitions. [2022-04-08 02:13:59,917 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 02:13:59,918 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-08 02:13:59,920 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:13:59,921 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 02:13:59,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-08 02:13:59,931 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 02:13:59,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-08 02:13:59,939 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-08 02:14:00,022 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:00,029 INFO L225 Difference]: With dead ends: 57 [2022-04-08 02:14:00,030 INFO L226 Difference]: Without dead ends: 27 [2022-04-08 02:14:00,031 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 12 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:14:00,036 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 19 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 34 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 02:14:00,037 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 34 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 02:14:00,047 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-08 02:14:00,064 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-08 02:14:00,064 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:14:00,065 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 02:14:00,066 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 02:14:00,066 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 02:14:00,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:00,069 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-08 02:14:00,069 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-08 02:14:00,070 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:00,070 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:00,071 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 27 states. [2022-04-08 02:14:00,071 INFO L87 Difference]: Start difference. First operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 27 states. [2022-04-08 02:14:00,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:00,074 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-08 02:14:00,074 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-08 02:14:00,075 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:00,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:00,075 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:14:00,075 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:14:00,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 02:14:00,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-08 02:14:00,079 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 28 [2022-04-08 02:14:00,079 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:14:00,079 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-08 02:14:00,080 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 02:14:00,080 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-08 02:14:00,081 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 02:14:00,081 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:14:00,082 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:14:00,082 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 02:14:00,082 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:14:00,083 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:14:00,084 INFO L85 PathProgramCache]: Analyzing trace with hash -1063826184, now seen corresponding path program 1 times [2022-04-08 02:14:00,084 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:14:00,084 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [921328922] [2022-04-08 02:14:00,084 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:00,084 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:14:00,120 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:14:00,120 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1617902073] [2022-04-08 02:14:00,120 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:00,120 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:14:00,121 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:14:00,135 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:14:00,136 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:14:00,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:00,189 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 02:14:00,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:00,203 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:14:00,348 INFO L272 TraceCheckUtils]: 0: Hoare triple {224#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {224#true} is VALID [2022-04-08 02:14:00,349 INFO L290 TraceCheckUtils]: 1: Hoare triple {224#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {224#true} is VALID [2022-04-08 02:14:00,349 INFO L290 TraceCheckUtils]: 2: Hoare triple {224#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {224#true} is VALID [2022-04-08 02:14:00,349 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {224#true} {224#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {224#true} is VALID [2022-04-08 02:14:00,349 INFO L272 TraceCheckUtils]: 4: Hoare triple {224#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {224#true} is VALID [2022-04-08 02:14:00,349 INFO L290 TraceCheckUtils]: 5: Hoare triple {224#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {224#true} is VALID [2022-04-08 02:14:00,350 INFO L272 TraceCheckUtils]: 6: Hoare triple {224#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {224#true} is VALID [2022-04-08 02:14:00,350 INFO L290 TraceCheckUtils]: 7: Hoare triple {224#true} [82] 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] {224#true} is VALID [2022-04-08 02:14:00,350 INFO L290 TraceCheckUtils]: 8: Hoare triple {224#true} [85] 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[] {224#true} is VALID [2022-04-08 02:14:00,350 INFO L290 TraceCheckUtils]: 9: Hoare triple {224#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {224#true} is VALID [2022-04-08 02:14:00,350 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {224#true} {224#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {224#true} is VALID [2022-04-08 02:14:00,350 INFO L290 TraceCheckUtils]: 11: Hoare triple {224#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {224#true} is VALID [2022-04-08 02:14:00,351 INFO L272 TraceCheckUtils]: 12: Hoare triple {224#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {224#true} is VALID [2022-04-08 02:14:00,351 INFO L290 TraceCheckUtils]: 13: Hoare triple {224#true} [82] 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] {224#true} is VALID [2022-04-08 02:14:00,351 INFO L290 TraceCheckUtils]: 14: Hoare triple {224#true} [85] 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[] {224#true} is VALID [2022-04-08 02:14:00,351 INFO L290 TraceCheckUtils]: 15: Hoare triple {224#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {224#true} is VALID [2022-04-08 02:14:00,351 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {224#true} {224#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {224#true} is VALID [2022-04-08 02:14:00,351 INFO L272 TraceCheckUtils]: 17: Hoare triple {224#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {224#true} is VALID [2022-04-08 02:14:00,351 INFO L290 TraceCheckUtils]: 18: Hoare triple {224#true} [82] 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] {224#true} is VALID [2022-04-08 02:14:00,352 INFO L290 TraceCheckUtils]: 19: Hoare triple {224#true} [85] 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[] {224#true} is VALID [2022-04-08 02:14:00,352 INFO L290 TraceCheckUtils]: 20: Hoare triple {224#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {224#true} is VALID [2022-04-08 02:14:00,352 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {224#true} {224#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {224#true} is VALID [2022-04-08 02:14:00,352 INFO L290 TraceCheckUtils]: 22: Hoare triple {224#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {295#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:00,353 INFO L290 TraceCheckUtils]: 23: Hoare triple {295#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {295#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:00,354 INFO L272 TraceCheckUtils]: 24: Hoare triple {295#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {302#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:14:00,354 INFO L290 TraceCheckUtils]: 25: Hoare triple {302#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {306#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:14:00,355 INFO L290 TraceCheckUtils]: 26: Hoare triple {306#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= 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[] {225#false} is VALID [2022-04-08 02:14:00,355 INFO L290 TraceCheckUtils]: 27: Hoare triple {225#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {225#false} is VALID [2022-04-08 02:14:00,355 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 02:14:00,355 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 02:14:00,355 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:14:00,355 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [921328922] [2022-04-08 02:14:00,355 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:14:00,356 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1617902073] [2022-04-08 02:14:00,356 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1617902073] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 02:14:00,356 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 02:14:00,356 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 02:14:00,356 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [390093725] [2022-04-08 02:14:00,356 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 02:14:00,357 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-08 02:14:00,357 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:14:00,358 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 02:14:00,372 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:00,372 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 02:14:00,372 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:14:00,373 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 02:14:00,373 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 02:14:00,373 INFO L87 Difference]: Start difference. First operand 27 states and 31 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 02:14:00,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:00,477 INFO L93 Difference]: Finished difference Result 39 states and 45 transitions. [2022-04-08 02:14:00,477 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 02:14:00,477 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-08 02:14:00,478 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:14:00,478 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 02:14:00,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-08 02:14:00,479 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 02:14:00,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-08 02:14:00,480 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 45 transitions. [2022-04-08 02:14:00,511 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:00,513 INFO L225 Difference]: With dead ends: 39 [2022-04-08 02:14:00,513 INFO L226 Difference]: Without dead ends: 37 [2022-04-08 02:14:00,513 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 24 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:14:00,514 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 8 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 43 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 02:14:00,515 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 87 Invalid, 43 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 02:14:00,515 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-08 02:14:00,521 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 33. [2022-04-08 02:14:00,524 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:14:00,524 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 02:14:00,525 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 02:14:00,528 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 02:14:00,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:00,532 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-08 02:14:00,533 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-08 02:14:00,534 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:00,534 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:00,535 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 37 states. [2022-04-08 02:14:00,536 INFO L87 Difference]: Start difference. First operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 37 states. [2022-04-08 02:14:00,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:00,539 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-08 02:14:00,539 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-08 02:14:00,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:00,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:00,539 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:14:00,539 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:14:00,540 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 02:14:00,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2022-04-08 02:14:00,541 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 28 [2022-04-08 02:14:00,541 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:14:00,541 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2022-04-08 02:14:00,541 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 02:14:00,541 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2022-04-08 02:14:00,542 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 02:14:00,542 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:14:00,542 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 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:14:00,585 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-08 02:14:00,742 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:14:00,744 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:14:00,744 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:14:00,744 INFO L85 PathProgramCache]: Analyzing trace with hash -499634320, now seen corresponding path program 1 times [2022-04-08 02:14:00,744 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:14:00,745 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1031802476] [2022-04-08 02:14:00,745 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:00,745 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:14:00,758 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:14:00,759 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [887051684] [2022-04-08 02:14:00,759 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:00,759 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:14:00,759 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:14:00,775 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:14:00,815 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:14:00,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:00,844 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 02:14:00,852 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:00,854 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:14:00,989 INFO L272 TraceCheckUtils]: 0: Hoare triple {491#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {491#true} is VALID [2022-04-08 02:14:00,990 INFO L290 TraceCheckUtils]: 1: Hoare triple {491#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {491#true} is VALID [2022-04-08 02:14:00,990 INFO L290 TraceCheckUtils]: 2: Hoare triple {491#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {491#true} is VALID [2022-04-08 02:14:00,990 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {491#true} {491#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {491#true} is VALID [2022-04-08 02:14:00,990 INFO L272 TraceCheckUtils]: 4: Hoare triple {491#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {491#true} is VALID [2022-04-08 02:14:00,991 INFO L290 TraceCheckUtils]: 5: Hoare triple {491#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {491#true} is VALID [2022-04-08 02:14:00,991 INFO L272 TraceCheckUtils]: 6: Hoare triple {491#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {491#true} is VALID [2022-04-08 02:14:00,991 INFO L290 TraceCheckUtils]: 7: Hoare triple {491#true} [82] 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] {491#true} is VALID [2022-04-08 02:14:00,991 INFO L290 TraceCheckUtils]: 8: Hoare triple {491#true} [85] 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[] {491#true} is VALID [2022-04-08 02:14:00,991 INFO L290 TraceCheckUtils]: 9: Hoare triple {491#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {491#true} is VALID [2022-04-08 02:14:00,991 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {491#true} {491#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {491#true} is VALID [2022-04-08 02:14:00,992 INFO L290 TraceCheckUtils]: 11: Hoare triple {491#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {491#true} is VALID [2022-04-08 02:14:00,992 INFO L272 TraceCheckUtils]: 12: Hoare triple {491#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {491#true} is VALID [2022-04-08 02:14:00,992 INFO L290 TraceCheckUtils]: 13: Hoare triple {491#true} [82] 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] {491#true} is VALID [2022-04-08 02:14:00,992 INFO L290 TraceCheckUtils]: 14: Hoare triple {491#true} [85] 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[] {491#true} is VALID [2022-04-08 02:14:00,992 INFO L290 TraceCheckUtils]: 15: Hoare triple {491#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {491#true} is VALID [2022-04-08 02:14:00,992 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {491#true} {491#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {491#true} is VALID [2022-04-08 02:14:00,993 INFO L272 TraceCheckUtils]: 17: Hoare triple {491#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {491#true} is VALID [2022-04-08 02:14:00,993 INFO L290 TraceCheckUtils]: 18: Hoare triple {491#true} [82] 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] {550#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 02:14:00,994 INFO L290 TraceCheckUtils]: 19: Hoare triple {550#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] 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[] {554#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:00,995 INFO L290 TraceCheckUtils]: 20: Hoare triple {554#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {554#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:00,995 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {554#(not (= |assume_abort_if_not_#in~cond| 0))} {491#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {561#(<= 1 main_~b~0)} is VALID [2022-04-08 02:14:00,996 INFO L290 TraceCheckUtils]: 22: Hoare triple {561#(<= 1 main_~b~0)} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {565#(<= 1 main_~y~0)} is VALID [2022-04-08 02:14:00,996 INFO L290 TraceCheckUtils]: 23: Hoare triple {565#(<= 1 main_~y~0)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {565#(<= 1 main_~y~0)} is VALID [2022-04-08 02:14:00,996 INFO L272 TraceCheckUtils]: 24: Hoare triple {565#(<= 1 main_~y~0)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {491#true} is VALID [2022-04-08 02:14:00,996 INFO L290 TraceCheckUtils]: 25: Hoare triple {491#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {491#true} is VALID [2022-04-08 02:14:00,996 INFO L290 TraceCheckUtils]: 26: Hoare triple {491#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {491#true} is VALID [2022-04-08 02:14:00,997 INFO L290 TraceCheckUtils]: 27: Hoare triple {491#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {491#true} is VALID [2022-04-08 02:14:00,997 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {491#true} {565#(<= 1 main_~y~0)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {565#(<= 1 main_~y~0)} is VALID [2022-04-08 02:14:00,998 INFO L290 TraceCheckUtils]: 29: Hoare triple {565#(<= 1 main_~y~0)} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {492#false} is VALID [2022-04-08 02:14:00,999 INFO L272 TraceCheckUtils]: 30: Hoare triple {492#false} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} 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] {492#false} is VALID [2022-04-08 02:14:00,999 INFO L290 TraceCheckUtils]: 31: Hoare triple {492#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {492#false} is VALID [2022-04-08 02:14:01,000 INFO L290 TraceCheckUtils]: 32: Hoare triple {492#false} [99] L13-->L14: Formula: (= 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[] {492#false} is VALID [2022-04-08 02:14:01,000 INFO L290 TraceCheckUtils]: 33: Hoare triple {492#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {492#false} is VALID [2022-04-08 02:14:01,001 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-08 02:14:01,001 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 02:14:01,002 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:14:01,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1031802476] [2022-04-08 02:14:01,003 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:14:01,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [887051684] [2022-04-08 02:14:01,003 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [887051684] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 02:14:01,003 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 02:14:01,003 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 02:14:01,003 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1470857431] [2022-04-08 02:14:01,003 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 02:14:01,003 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-08 02:14:01,004 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:14:01,004 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 02:14:01,023 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:01,023 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 02:14:01,023 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:14:01,023 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 02:14:01,024 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 02:14:01,024 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 02:14:01,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:01,173 INFO L93 Difference]: Finished difference Result 43 states and 48 transitions. [2022-04-08 02:14:01,173 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 02:14:01,173 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-08 02:14:01,175 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:14:01,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 02:14:01,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 45 transitions. [2022-04-08 02:14:01,177 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 02:14:01,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 45 transitions. [2022-04-08 02:14:01,180 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 45 transitions. [2022-04-08 02:14:01,211 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:01,212 INFO L225 Difference]: With dead ends: 43 [2022-04-08 02:14:01,212 INFO L226 Difference]: Without dead ends: 36 [2022-04-08 02:14:01,212 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 29 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:14:01,212 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 14 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 58 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 58 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 02:14:01,213 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 89 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 58 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 02:14:01,213 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-08 02:14:01,219 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 34. [2022-04-08 02:14:01,219 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:14:01,219 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 02:14:01,220 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 02:14:01,220 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 02:14:01,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:01,221 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-08 02:14:01,221 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-08 02:14:01,221 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:01,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:01,222 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 36 states. [2022-04-08 02:14:01,222 INFO L87 Difference]: Start difference. First operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 36 states. [2022-04-08 02:14:01,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:01,223 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-08 02:14:01,223 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-08 02:14:01,224 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:01,224 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:01,224 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:14:01,224 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:14:01,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 02:14:01,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 38 transitions. [2022-04-08 02:14:01,225 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 38 transitions. Word has length 34 [2022-04-08 02:14:01,225 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:14:01,225 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 38 transitions. [2022-04-08 02:14:01,225 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 02:14:01,225 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-08 02:14:01,226 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-08 02:14:01,226 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:14:01,226 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 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:14:01,242 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:14:01,442 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:14:01,442 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:14:01,442 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:14:01,442 INFO L85 PathProgramCache]: Analyzing trace with hash -1096608558, now seen corresponding path program 1 times [2022-04-08 02:14:01,443 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:14:01,443 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [450695324] [2022-04-08 02:14:01,443 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:01,443 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:14:01,458 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:14:01,459 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [721166776] [2022-04-08 02:14:01,459 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:01,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:14:01,459 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:14:01,460 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:14:01,463 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:14:01,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:01,502 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-08 02:14:01,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:01,513 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:14:02,387 INFO L272 TraceCheckUtils]: 0: Hoare triple {783#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:02,387 INFO L290 TraceCheckUtils]: 1: Hoare triple {783#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {783#true} is VALID [2022-04-08 02:14:02,387 INFO L290 TraceCheckUtils]: 2: Hoare triple {783#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:02,387 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {783#true} {783#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:02,387 INFO L272 TraceCheckUtils]: 4: Hoare triple {783#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:02,388 INFO L290 TraceCheckUtils]: 5: Hoare triple {783#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {783#true} is VALID [2022-04-08 02:14:02,388 INFO L272 TraceCheckUtils]: 6: Hoare triple {783#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {783#true} is VALID [2022-04-08 02:14:02,388 INFO L290 TraceCheckUtils]: 7: Hoare triple {783#true} [82] 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] {809#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 02:14:02,388 INFO L290 TraceCheckUtils]: 8: Hoare triple {809#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] 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[] {813#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:02,389 INFO L290 TraceCheckUtils]: 9: Hoare triple {813#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {813#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:02,389 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {813#(not (= |assume_abort_if_not_#in~cond| 0))} {783#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {820#(and (<= 0 main_~a~0) (<= main_~a~0 2))} is VALID [2022-04-08 02:14:02,390 INFO L290 TraceCheckUtils]: 11: Hoare triple {820#(and (<= 0 main_~a~0) (<= main_~a~0 2))} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {820#(and (<= 0 main_~a~0) (<= main_~a~0 2))} is VALID [2022-04-08 02:14:02,390 INFO L272 TraceCheckUtils]: 12: Hoare triple {820#(and (<= 0 main_~a~0) (<= main_~a~0 2))} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {783#true} is VALID [2022-04-08 02:14:02,390 INFO L290 TraceCheckUtils]: 13: Hoare triple {783#true} [82] 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] {809#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 02:14:02,391 INFO L290 TraceCheckUtils]: 14: Hoare triple {809#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] 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[] {813#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:02,391 INFO L290 TraceCheckUtils]: 15: Hoare triple {813#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {813#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:02,392 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {813#(not (= |assume_abort_if_not_#in~cond| 0))} {820#(and (<= 0 main_~a~0) (<= main_~a~0 2))} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {839#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} is VALID [2022-04-08 02:14:02,392 INFO L272 TraceCheckUtils]: 17: Hoare triple {839#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {783#true} is VALID [2022-04-08 02:14:02,392 INFO L290 TraceCheckUtils]: 18: Hoare triple {783#true} [82] 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] {783#true} is VALID [2022-04-08 02:14:02,392 INFO L290 TraceCheckUtils]: 19: Hoare triple {783#true} [85] 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[] {783#true} is VALID [2022-04-08 02:14:02,392 INFO L290 TraceCheckUtils]: 20: Hoare triple {783#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:02,393 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {783#true} {839#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {839#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} is VALID [2022-04-08 02:14:02,393 INFO L290 TraceCheckUtils]: 22: Hoare triple {839#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {858#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:02,394 INFO L290 TraceCheckUtils]: 23: Hoare triple {858#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {858#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:02,394 INFO L272 TraceCheckUtils]: 24: Hoare triple {858#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {783#true} is VALID [2022-04-08 02:14:02,394 INFO L290 TraceCheckUtils]: 25: Hoare triple {783#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {868#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:14:02,394 INFO L290 TraceCheckUtils]: 26: Hoare triple {868#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {872#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:14:02,395 INFO L290 TraceCheckUtils]: 27: Hoare triple {872#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {872#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:14:02,395 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {872#(not (= |__VERIFIER_assert_#in~cond| 0))} {858#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {858#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:02,396 INFO L290 TraceCheckUtils]: 29: Hoare triple {858#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {882#(and (= main_~z~0 0) (not (= main_~y~0 0)) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 02:14:02,397 INFO L290 TraceCheckUtils]: 30: Hoare triple {882#(and (= main_~z~0 0) (not (= main_~y~0 0)) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {886#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 02:14:02,398 INFO L290 TraceCheckUtils]: 31: Hoare triple {886#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {890#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 02:14:02,398 INFO L290 TraceCheckUtils]: 32: Hoare triple {890#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {890#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 02:14:02,400 INFO L272 TraceCheckUtils]: 33: Hoare triple {890#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {897#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:14:02,401 INFO L290 TraceCheckUtils]: 34: Hoare triple {897#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {901#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:14:02,401 INFO L290 TraceCheckUtils]: 35: Hoare triple {901#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= 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[] {784#false} is VALID [2022-04-08 02:14:02,401 INFO L290 TraceCheckUtils]: 36: Hoare triple {784#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {784#false} is VALID [2022-04-08 02:14:02,402 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 1 proven. 9 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-08 02:14:02,402 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 02:14:51,095 INFO L290 TraceCheckUtils]: 36: Hoare triple {784#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {784#false} is VALID [2022-04-08 02:14:51,096 INFO L290 TraceCheckUtils]: 35: Hoare triple {901#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= 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[] {784#false} is VALID [2022-04-08 02:14:51,096 INFO L290 TraceCheckUtils]: 34: Hoare triple {897#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {901#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:14:51,097 INFO L272 TraceCheckUtils]: 33: Hoare triple {917#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {897#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:14:51,098 INFO L290 TraceCheckUtils]: 32: Hoare triple {917#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {917#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:14:51,102 INFO L290 TraceCheckUtils]: 31: Hoare triple {924#(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))))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {917#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:14:51,104 INFO L290 TraceCheckUtils]: 30: Hoare triple {928#(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))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {924#(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:51,105 INFO L290 TraceCheckUtils]: 29: Hoare triple {928#(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))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {928#(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:14:51,328 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {872#(not (= |__VERIFIER_assert_#in~cond| 0))} {783#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {928#(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:14:51,329 INFO L290 TraceCheckUtils]: 27: Hoare triple {872#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {872#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:14:51,329 INFO L290 TraceCheckUtils]: 26: Hoare triple {944#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {872#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:14:51,330 INFO L290 TraceCheckUtils]: 25: Hoare triple {783#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {944#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 02:14:51,330 INFO L272 TraceCheckUtils]: 24: Hoare triple {783#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {783#true} is VALID [2022-04-08 02:14:51,330 INFO L290 TraceCheckUtils]: 23: Hoare triple {783#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:51,330 INFO L290 TraceCheckUtils]: 22: Hoare triple {783#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {783#true} is VALID [2022-04-08 02:14:51,330 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {783#true} {783#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {783#true} is VALID [2022-04-08 02:14:51,330 INFO L290 TraceCheckUtils]: 20: Hoare triple {783#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:51,330 INFO L290 TraceCheckUtils]: 19: Hoare triple {783#true} [85] 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[] {783#true} is VALID [2022-04-08 02:14:51,330 INFO L290 TraceCheckUtils]: 18: Hoare triple {783#true} [82] 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] {783#true} is VALID [2022-04-08 02:14:51,330 INFO L272 TraceCheckUtils]: 17: Hoare triple {783#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {783#true} is VALID [2022-04-08 02:14:51,331 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {783#true} {783#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {783#true} is VALID [2022-04-08 02:14:51,331 INFO L290 TraceCheckUtils]: 15: Hoare triple {783#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:51,331 INFO L290 TraceCheckUtils]: 14: Hoare triple {783#true} [85] 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[] {783#true} is VALID [2022-04-08 02:14:51,331 INFO L290 TraceCheckUtils]: 13: Hoare triple {783#true} [82] 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] {783#true} is VALID [2022-04-08 02:14:51,331 INFO L272 TraceCheckUtils]: 12: Hoare triple {783#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {783#true} is VALID [2022-04-08 02:14:51,331 INFO L290 TraceCheckUtils]: 11: Hoare triple {783#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {783#true} is VALID [2022-04-08 02:14:51,331 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {783#true} {783#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {783#true} is VALID [2022-04-08 02:14:51,331 INFO L290 TraceCheckUtils]: 9: Hoare triple {783#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:51,331 INFO L290 TraceCheckUtils]: 8: Hoare triple {783#true} [85] 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[] {783#true} is VALID [2022-04-08 02:14:51,332 INFO L290 TraceCheckUtils]: 7: Hoare triple {783#true} [82] 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] {783#true} is VALID [2022-04-08 02:14:51,332 INFO L272 TraceCheckUtils]: 6: Hoare triple {783#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {783#true} is VALID [2022-04-08 02:14:51,332 INFO L290 TraceCheckUtils]: 5: Hoare triple {783#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {783#true} is VALID [2022-04-08 02:14:51,332 INFO L272 TraceCheckUtils]: 4: Hoare triple {783#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:51,332 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {783#true} {783#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:51,332 INFO L290 TraceCheckUtils]: 2: Hoare triple {783#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:51,332 INFO L290 TraceCheckUtils]: 1: Hoare triple {783#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {783#true} is VALID [2022-04-08 02:14:51,332 INFO L272 TraceCheckUtils]: 0: Hoare triple {783#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-08 02:14:51,333 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 02:14:51,333 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:14:51,333 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [450695324] [2022-04-08 02:14:51,333 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:14:51,333 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [721166776] [2022-04-08 02:14:51,333 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [721166776] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 02:14:51,333 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 02:14:51,333 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 9] total 18 [2022-04-08 02:14:51,333 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [348291399] [2022-04-08 02:14:51,333 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 02:14:51,334 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) Word has length 37 [2022-04-08 02:14:51,334 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:14:51,334 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 02:14:51,622 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:51,622 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-08 02:14:51,622 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:14:51,622 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-08 02:14:51,623 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2022-04-08 02:14:51,623 INFO L87 Difference]: Start difference. First operand 34 states and 38 transitions. Second operand has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 02:14:54,223 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.10s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 02:14:54,367 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:54,367 INFO L93 Difference]: Finished difference Result 60 states and 70 transitions. [2022-04-08 02:14:54,367 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-08 02:14:54,367 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) Word has length 37 [2022-04-08 02:14:54,368 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:14:54,368 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 02:14:54,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 67 transitions. [2022-04-08 02:14:54,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 02:14:54,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 67 transitions. [2022-04-08 02:14:54,372 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 67 transitions. [2022-04-08 02:14:54,431 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:54,432 INFO L225 Difference]: With dead ends: 60 [2022-04-08 02:14:54,432 INFO L226 Difference]: Without dead ends: 43 [2022-04-08 02:14:54,432 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 55 SyntacticMatches, 3 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 99 ImplicationChecksByTransitivity, 4.4s TimeCoverageRelationStatistics Valid=106, Invalid=446, Unknown=0, NotChecked=0, Total=552 [2022-04-08 02:14:54,433 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 36 mSDsluCounter, 135 mSDsCounter, 0 mSdLazyCounter, 275 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 155 SdHoareTripleChecker+Invalid, 307 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 275 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-08 02:14:54,433 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 155 Invalid, 307 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 275 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-08 02:14:54,433 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-08 02:14:54,454 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 42. [2022-04-08 02:14:54,455 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:14:54,455 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 02:14:54,455 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 02:14:54,455 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 02:14:54,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:54,457 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-04-08 02:14:54,458 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-08 02:14:54,458 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:54,458 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:54,458 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 43 states. [2022-04-08 02:14:54,458 INFO L87 Difference]: Start difference. First operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 43 states. [2022-04-08 02:14:54,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:54,460 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-04-08 02:14:54,460 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-08 02:14:54,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:54,460 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:54,460 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:14:54,460 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:14:54,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 02:14:54,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 46 transitions. [2022-04-08 02:14:54,461 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 46 transitions. Word has length 37 [2022-04-08 02:14:54,462 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:14:54,462 INFO L478 AbstractCegarLoop]: Abstraction has 42 states and 46 transitions. [2022-04-08 02:14:54,462 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-08 02:14:54,462 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2022-04-08 02:14:54,463 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-08 02:14:54,463 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:14:54,463 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 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:14:54,481 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:14:54,682 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:14:54,682 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:14:54,682 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:14:54,682 INFO L85 PathProgramCache]: Analyzing trace with hash -559664565, now seen corresponding path program 1 times [2022-04-08 02:14:54,682 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:14:54,682 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1878713769] [2022-04-08 02:14:54,683 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:54,683 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:14:54,695 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:14:54,696 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1999529772] [2022-04-08 02:14:54,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:54,696 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:14:54,696 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:14:54,696 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:14:54,698 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:14:54,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:54,743 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-08 02:14:54,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:54,752 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:14:55,101 INFO L272 TraceCheckUtils]: 0: Hoare triple {1266#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1266#true} is VALID [2022-04-08 02:14:55,102 INFO L290 TraceCheckUtils]: 1: Hoare triple {1266#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {1266#true} is VALID [2022-04-08 02:14:55,102 INFO L290 TraceCheckUtils]: 2: Hoare triple {1266#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1266#true} is VALID [2022-04-08 02:14:55,102 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1266#true} {1266#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1266#true} is VALID [2022-04-08 02:14:55,102 INFO L272 TraceCheckUtils]: 4: Hoare triple {1266#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1266#true} is VALID [2022-04-08 02:14:55,103 INFO L290 TraceCheckUtils]: 5: Hoare triple {1266#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1266#true} is VALID [2022-04-08 02:14:55,103 INFO L272 TraceCheckUtils]: 6: Hoare triple {1266#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1266#true} is VALID [2022-04-08 02:14:55,103 INFO L290 TraceCheckUtils]: 7: Hoare triple {1266#true} [82] 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] {1266#true} is VALID [2022-04-08 02:14:55,106 INFO L290 TraceCheckUtils]: 8: Hoare triple {1266#true} [85] 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[] {1266#true} is VALID [2022-04-08 02:14:55,106 INFO L290 TraceCheckUtils]: 9: Hoare triple {1266#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1266#true} is VALID [2022-04-08 02:14:55,106 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1266#true} {1266#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1266#true} is VALID [2022-04-08 02:14:55,106 INFO L290 TraceCheckUtils]: 11: Hoare triple {1266#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1266#true} is VALID [2022-04-08 02:14:55,106 INFO L272 TraceCheckUtils]: 12: Hoare triple {1266#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1266#true} is VALID [2022-04-08 02:14:55,106 INFO L290 TraceCheckUtils]: 13: Hoare triple {1266#true} [82] 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] {1266#true} is VALID [2022-04-08 02:14:55,106 INFO L290 TraceCheckUtils]: 14: Hoare triple {1266#true} [85] 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[] {1266#true} is VALID [2022-04-08 02:14:55,106 INFO L290 TraceCheckUtils]: 15: Hoare triple {1266#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1266#true} is VALID [2022-04-08 02:14:55,106 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1266#true} {1266#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1266#true} is VALID [2022-04-08 02:14:55,107 INFO L272 TraceCheckUtils]: 17: Hoare triple {1266#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1266#true} is VALID [2022-04-08 02:14:55,108 INFO L290 TraceCheckUtils]: 18: Hoare triple {1266#true} [82] 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] {1325#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 02:14:55,111 INFO L290 TraceCheckUtils]: 19: Hoare triple {1325#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] 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[] {1329#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:55,111 INFO L290 TraceCheckUtils]: 20: Hoare triple {1329#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1329#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:55,112 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1329#(not (= |assume_abort_if_not_#in~cond| 0))} {1266#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1336#(<= 1 main_~b~0)} is VALID [2022-04-08 02:14:55,112 INFO L290 TraceCheckUtils]: 22: Hoare triple {1336#(<= 1 main_~b~0)} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1340#(<= 1 main_~y~0)} is VALID [2022-04-08 02:14:55,113 INFO L290 TraceCheckUtils]: 23: Hoare triple {1340#(<= 1 main_~y~0)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1340#(<= 1 main_~y~0)} is VALID [2022-04-08 02:14:55,113 INFO L272 TraceCheckUtils]: 24: Hoare triple {1340#(<= 1 main_~y~0)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1266#true} is VALID [2022-04-08 02:14:55,113 INFO L290 TraceCheckUtils]: 25: Hoare triple {1266#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1266#true} is VALID [2022-04-08 02:14:55,113 INFO L290 TraceCheckUtils]: 26: Hoare triple {1266#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1266#true} is VALID [2022-04-08 02:14:55,113 INFO L290 TraceCheckUtils]: 27: Hoare triple {1266#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1266#true} is VALID [2022-04-08 02:14:55,113 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1266#true} {1340#(<= 1 main_~y~0)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1340#(<= 1 main_~y~0)} is VALID [2022-04-08 02:14:55,114 INFO L290 TraceCheckUtils]: 29: Hoare triple {1340#(<= 1 main_~y~0)} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1340#(<= 1 main_~y~0)} is VALID [2022-04-08 02:14:55,114 INFO L290 TraceCheckUtils]: 30: Hoare triple {1340#(<= 1 main_~y~0)} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1365#(and (not (= (mod main_~y~0 2) 1)) (<= 1 main_~y~0))} is VALID [2022-04-08 02:14:55,115 INFO L290 TraceCheckUtils]: 31: Hoare triple {1365#(and (not (= (mod main_~y~0 2) 1)) (<= 1 main_~y~0))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1340#(<= 1 main_~y~0)} is VALID [2022-04-08 02:14:55,115 INFO L290 TraceCheckUtils]: 32: Hoare triple {1340#(<= 1 main_~y~0)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1340#(<= 1 main_~y~0)} is VALID [2022-04-08 02:14:55,115 INFO L272 TraceCheckUtils]: 33: Hoare triple {1340#(<= 1 main_~y~0)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1266#true} is VALID [2022-04-08 02:14:55,115 INFO L290 TraceCheckUtils]: 34: Hoare triple {1266#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1266#true} is VALID [2022-04-08 02:14:55,116 INFO L290 TraceCheckUtils]: 35: Hoare triple {1266#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1266#true} is VALID [2022-04-08 02:14:55,116 INFO L290 TraceCheckUtils]: 36: Hoare triple {1266#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1266#true} is VALID [2022-04-08 02:14:55,116 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1266#true} {1340#(<= 1 main_~y~0)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1340#(<= 1 main_~y~0)} is VALID [2022-04-08 02:14:55,117 INFO L290 TraceCheckUtils]: 38: Hoare triple {1340#(<= 1 main_~y~0)} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {1267#false} is VALID [2022-04-08 02:14:55,117 INFO L272 TraceCheckUtils]: 39: Hoare triple {1267#false} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} 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] {1267#false} is VALID [2022-04-08 02:14:55,117 INFO L290 TraceCheckUtils]: 40: Hoare triple {1267#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1267#false} is VALID [2022-04-08 02:14:55,117 INFO L290 TraceCheckUtils]: 41: Hoare triple {1267#false} [99] L13-->L14: Formula: (= 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[] {1267#false} is VALID [2022-04-08 02:14:55,117 INFO L290 TraceCheckUtils]: 42: Hoare triple {1267#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1267#false} is VALID [2022-04-08 02:14:55,118 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-08 02:14:55,118 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 02:14:55,119 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:14:55,119 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1878713769] [2022-04-08 02:14:55,119 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:14:55,119 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1999529772] [2022-04-08 02:14:55,119 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1999529772] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 02:14:55,119 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 02:14:55,119 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 02:14:55,119 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [880517976] [2022-04-08 02:14:55,119 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 02:14:55,120 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 43 [2022-04-08 02:14:55,120 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:14:55,120 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 02:14:55,141 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:55,141 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 02:14:55,141 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:14:55,142 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 02:14:55,142 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-04-08 02:14:55,142 INFO L87 Difference]: Start difference. First operand 42 states and 46 transitions. Second operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 02:14:55,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:55,334 INFO L93 Difference]: Finished difference Result 57 states and 64 transitions. [2022-04-08 02:14:55,334 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 02:14:55,334 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 43 [2022-04-08 02:14:55,334 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:14:55,334 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 02:14:55,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 45 transitions. [2022-04-08 02:14:55,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 02:14:55,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 45 transitions. [2022-04-08 02:14:55,336 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 45 transitions. [2022-04-08 02:14:55,364 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:55,365 INFO L225 Difference]: With dead ends: 57 [2022-04-08 02:14:55,365 INFO L226 Difference]: Without dead ends: 50 [2022-04-08 02:14:55,365 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 36 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-04-08 02:14:55,365 INFO L913 BasicCegarLoop]: 23 mSDtfsCounter, 13 mSDsluCounter, 64 mSDsCounter, 0 mSdLazyCounter, 61 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 64 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 61 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 02:14:55,366 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 87 Invalid, 64 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 61 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 02:14:55,367 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-08 02:14:55,398 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2022-04-08 02:14:55,398 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:14:55,398 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 02:14:55,399 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 02:14:55,399 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 02:14:55,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:55,400 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-08 02:14:55,400 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-08 02:14:55,401 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:55,401 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:55,401 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 50 states. [2022-04-08 02:14:55,401 INFO L87 Difference]: Start difference. First operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 50 states. [2022-04-08 02:14:55,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:55,402 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-08 02:14:55,403 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-08 02:14:55,403 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:55,403 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:55,403 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:14:55,403 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:14:55,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 02:14:55,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 57 transitions. [2022-04-08 02:14:55,404 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 57 transitions. Word has length 43 [2022-04-08 02:14:55,405 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:14:55,405 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 57 transitions. [2022-04-08 02:14:55,405 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 02:14:55,405 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-08 02:14:55,405 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-08 02:14:55,405 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:14:55,405 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 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:14:55,442 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:14:55,640 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:14:55,640 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:14:55,640 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:14:55,640 INFO L85 PathProgramCache]: Analyzing trace with hash -1863738536, now seen corresponding path program 1 times [2022-04-08 02:14:55,640 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:14:55,640 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [613761824] [2022-04-08 02:14:55,641 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:55,641 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:14:55,652 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:14:55,652 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [272211305] [2022-04-08 02:14:55,652 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:55,652 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:14:55,652 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:14:55,658 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:14:55,658 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:14:55,695 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:55,696 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-08 02:14:55,703 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:55,704 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:14:56,316 INFO L272 TraceCheckUtils]: 0: Hoare triple {1660#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,316 INFO L290 TraceCheckUtils]: 1: Hoare triple {1660#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {1660#true} is VALID [2022-04-08 02:14:56,316 INFO L290 TraceCheckUtils]: 2: Hoare triple {1660#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,316 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1660#true} {1660#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,317 INFO L272 TraceCheckUtils]: 4: Hoare triple {1660#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,317 INFO L290 TraceCheckUtils]: 5: Hoare triple {1660#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1660#true} is VALID [2022-04-08 02:14:56,317 INFO L272 TraceCheckUtils]: 6: Hoare triple {1660#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1660#true} is VALID [2022-04-08 02:14:56,317 INFO L290 TraceCheckUtils]: 7: Hoare triple {1660#true} [82] 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] {1660#true} is VALID [2022-04-08 02:14:56,317 INFO L290 TraceCheckUtils]: 8: Hoare triple {1660#true} [85] 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[] {1660#true} is VALID [2022-04-08 02:14:56,317 INFO L290 TraceCheckUtils]: 9: Hoare triple {1660#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,318 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1660#true} {1660#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1660#true} is VALID [2022-04-08 02:14:56,318 INFO L290 TraceCheckUtils]: 11: Hoare triple {1660#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1660#true} is VALID [2022-04-08 02:14:56,318 INFO L272 TraceCheckUtils]: 12: Hoare triple {1660#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1660#true} is VALID [2022-04-08 02:14:56,318 INFO L290 TraceCheckUtils]: 13: Hoare triple {1660#true} [82] 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] {1704#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 02:14:56,319 INFO L290 TraceCheckUtils]: 14: Hoare triple {1704#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] 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[] {1708#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:56,319 INFO L290 TraceCheckUtils]: 15: Hoare triple {1708#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1708#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:56,320 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1708#(not (= |assume_abort_if_not_#in~cond| 0))} {1660#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1715#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-08 02:14:56,320 INFO L272 TraceCheckUtils]: 17: Hoare triple {1715#(and (<= main_~b~0 2) (<= 0 main_~b~0))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1660#true} is VALID [2022-04-08 02:14:56,320 INFO L290 TraceCheckUtils]: 18: Hoare triple {1660#true} [82] 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] {1660#true} is VALID [2022-04-08 02:14:56,320 INFO L290 TraceCheckUtils]: 19: Hoare triple {1660#true} [85] 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[] {1660#true} is VALID [2022-04-08 02:14:56,320 INFO L290 TraceCheckUtils]: 20: Hoare triple {1660#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,320 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1660#true} {1715#(and (<= main_~b~0 2) (<= 0 main_~b~0))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1715#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-08 02:14:56,321 INFO L290 TraceCheckUtils]: 22: Hoare triple {1715#(and (<= main_~b~0 2) (<= 0 main_~b~0))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1734#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-08 02:14:56,322 INFO L290 TraceCheckUtils]: 23: Hoare triple {1734#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1734#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-08 02:14:56,322 INFO L272 TraceCheckUtils]: 24: Hoare triple {1734#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1660#true} is VALID [2022-04-08 02:14:56,322 INFO L290 TraceCheckUtils]: 25: Hoare triple {1660#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1660#true} is VALID [2022-04-08 02:14:56,322 INFO L290 TraceCheckUtils]: 26: Hoare triple {1660#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,325 INFO L290 TraceCheckUtils]: 27: Hoare triple {1660#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,326 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1660#true} {1734#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1734#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-08 02:14:56,327 INFO L290 TraceCheckUtils]: 29: Hoare triple {1734#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1756#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (<= main_~y~0 2))} is VALID [2022-04-08 02:14:56,328 INFO L290 TraceCheckUtils]: 30: Hoare triple {1756#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (<= main_~y~0 2))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1760#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (not (= (mod main_~y~0 2) 1)) (<= main_~y~0 2))} is VALID [2022-04-08 02:14:56,329 INFO L290 TraceCheckUtils]: 31: Hoare triple {1760#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (not (= (mod main_~y~0 2) 1)) (<= main_~y~0 2))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1764#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} is VALID [2022-04-08 02:14:56,330 INFO L290 TraceCheckUtils]: 32: Hoare triple {1764#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1764#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} is VALID [2022-04-08 02:14:56,330 INFO L272 TraceCheckUtils]: 33: Hoare triple {1764#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1660#true} is VALID [2022-04-08 02:14:56,330 INFO L290 TraceCheckUtils]: 34: Hoare triple {1660#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1660#true} is VALID [2022-04-08 02:14:56,330 INFO L290 TraceCheckUtils]: 35: Hoare triple {1660#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,330 INFO L290 TraceCheckUtils]: 36: Hoare triple {1660#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,333 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1660#true} {1764#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1764#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} is VALID [2022-04-08 02:14:56,334 INFO L290 TraceCheckUtils]: 38: Hoare triple {1764#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1764#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} is VALID [2022-04-08 02:14:56,334 INFO L290 TraceCheckUtils]: 39: Hoare triple {1764#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1661#false} is VALID [2022-04-08 02:14:56,334 INFO L290 TraceCheckUtils]: 40: Hoare triple {1661#false} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1661#false} is VALID [2022-04-08 02:14:56,334 INFO L290 TraceCheckUtils]: 41: Hoare triple {1661#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1661#false} is VALID [2022-04-08 02:14:56,334 INFO L272 TraceCheckUtils]: 42: Hoare triple {1661#false} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1661#false} is VALID [2022-04-08 02:14:56,334 INFO L290 TraceCheckUtils]: 43: Hoare triple {1661#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1661#false} is VALID [2022-04-08 02:14:56,335 INFO L290 TraceCheckUtils]: 44: Hoare triple {1661#false} [99] L13-->L14: Formula: (= 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[] {1661#false} is VALID [2022-04-08 02:14:56,335 INFO L290 TraceCheckUtils]: 45: Hoare triple {1661#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1661#false} is VALID [2022-04-08 02:14:56,335 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 16 proven. 3 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-08 02:14:56,335 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 02:14:56,996 INFO L290 TraceCheckUtils]: 45: Hoare triple {1661#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1661#false} is VALID [2022-04-08 02:14:56,996 INFO L290 TraceCheckUtils]: 44: Hoare triple {1661#false} [99] L13-->L14: Formula: (= 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[] {1661#false} is VALID [2022-04-08 02:14:56,996 INFO L290 TraceCheckUtils]: 43: Hoare triple {1661#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1661#false} is VALID [2022-04-08 02:14:56,996 INFO L272 TraceCheckUtils]: 42: Hoare triple {1661#false} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1661#false} is VALID [2022-04-08 02:14:56,996 INFO L290 TraceCheckUtils]: 41: Hoare triple {1661#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1661#false} is VALID [2022-04-08 02:14:56,996 INFO L290 TraceCheckUtils]: 40: Hoare triple {1661#false} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1661#false} is VALID [2022-04-08 02:14:56,997 INFO L290 TraceCheckUtils]: 39: Hoare triple {1825#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1661#false} is VALID [2022-04-08 02:14:56,997 INFO L290 TraceCheckUtils]: 38: Hoare triple {1825#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1825#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-08 02:14:56,998 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1660#true} {1825#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1825#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-08 02:14:56,998 INFO L290 TraceCheckUtils]: 36: Hoare triple {1660#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,998 INFO L290 TraceCheckUtils]: 35: Hoare triple {1660#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:56,998 INFO L290 TraceCheckUtils]: 34: Hoare triple {1660#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1660#true} is VALID [2022-04-08 02:14:56,998 INFO L272 TraceCheckUtils]: 33: Hoare triple {1825#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1660#true} is VALID [2022-04-08 02:14:56,998 INFO L290 TraceCheckUtils]: 32: Hoare triple {1825#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1825#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-08 02:14:56,999 INFO L290 TraceCheckUtils]: 31: Hoare triple {1850#(and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1825#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-08 02:14:57,000 INFO L290 TraceCheckUtils]: 30: Hoare triple {1854#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1850#(and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2)))} is VALID [2022-04-08 02:14:57,000 INFO L290 TraceCheckUtils]: 29: Hoare triple {1858#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1854#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-08 02:14:57,001 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1660#true} {1858#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1858#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-08 02:14:57,001 INFO L290 TraceCheckUtils]: 27: Hoare triple {1660#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:57,001 INFO L290 TraceCheckUtils]: 26: Hoare triple {1660#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:57,001 INFO L290 TraceCheckUtils]: 25: Hoare triple {1660#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1660#true} is VALID [2022-04-08 02:14:57,001 INFO L272 TraceCheckUtils]: 24: Hoare triple {1858#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {1660#true} is VALID [2022-04-08 02:14:57,001 INFO L290 TraceCheckUtils]: 23: Hoare triple {1858#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1858#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-08 02:14:57,002 INFO L290 TraceCheckUtils]: 22: Hoare triple {1880#(or (and (= (mod main_~b~0 2) 1) (<= 0 main_~b~0)) (= main_~b~0 0) (and (= (mod (div main_~b~0 2) 2) 1) (<= 0 (div main_~b~0 2))))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1858#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-08 02:14:57,002 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1660#true} {1880#(or (and (= (mod main_~b~0 2) 1) (<= 0 main_~b~0)) (= main_~b~0 0) (and (= (mod (div main_~b~0 2) 2) 1) (<= 0 (div main_~b~0 2))))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1880#(or (and (= (mod main_~b~0 2) 1) (<= 0 main_~b~0)) (= main_~b~0 0) (and (= (mod (div main_~b~0 2) 2) 1) (<= 0 (div main_~b~0 2))))} is VALID [2022-04-08 02:14:57,003 INFO L290 TraceCheckUtils]: 20: Hoare triple {1660#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:57,003 INFO L290 TraceCheckUtils]: 19: Hoare triple {1660#true} [85] 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[] {1660#true} is VALID [2022-04-08 02:14:57,003 INFO L290 TraceCheckUtils]: 18: Hoare triple {1660#true} [82] 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] {1660#true} is VALID [2022-04-08 02:14:57,003 INFO L272 TraceCheckUtils]: 17: Hoare triple {1880#(or (and (= (mod main_~b~0 2) 1) (<= 0 main_~b~0)) (= main_~b~0 0) (and (= (mod (div main_~b~0 2) 2) 1) (<= 0 (div main_~b~0 2))))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1660#true} is VALID [2022-04-08 02:14:57,004 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1708#(not (= |assume_abort_if_not_#in~cond| 0))} {1660#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1880#(or (and (= (mod main_~b~0 2) 1) (<= 0 main_~b~0)) (= main_~b~0 0) (and (= (mod (div main_~b~0 2) 2) 1) (<= 0 (div main_~b~0 2))))} is VALID [2022-04-08 02:14:57,004 INFO L290 TraceCheckUtils]: 15: Hoare triple {1708#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1708#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:57,004 INFO L290 TraceCheckUtils]: 14: Hoare triple {1908#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [85] 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[] {1708#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:14:57,005 INFO L290 TraceCheckUtils]: 13: Hoare triple {1660#true} [82] 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] {1908#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 02:14:57,005 INFO L272 TraceCheckUtils]: 12: Hoare triple {1660#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1660#true} is VALID [2022-04-08 02:14:57,005 INFO L290 TraceCheckUtils]: 11: Hoare triple {1660#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1660#true} is VALID [2022-04-08 02:14:57,005 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1660#true} {1660#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1660#true} is VALID [2022-04-08 02:14:57,005 INFO L290 TraceCheckUtils]: 9: Hoare triple {1660#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:57,005 INFO L290 TraceCheckUtils]: 8: Hoare triple {1660#true} [85] 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[] {1660#true} is VALID [2022-04-08 02:14:57,005 INFO L290 TraceCheckUtils]: 7: Hoare triple {1660#true} [82] 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] {1660#true} is VALID [2022-04-08 02:14:57,005 INFO L272 TraceCheckUtils]: 6: Hoare triple {1660#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1660#true} is VALID [2022-04-08 02:14:57,005 INFO L290 TraceCheckUtils]: 5: Hoare triple {1660#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1660#true} is VALID [2022-04-08 02:14:57,005 INFO L272 TraceCheckUtils]: 4: Hoare triple {1660#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:57,005 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1660#true} {1660#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:57,006 INFO L290 TraceCheckUtils]: 2: Hoare triple {1660#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:57,006 INFO L290 TraceCheckUtils]: 1: Hoare triple {1660#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {1660#true} is VALID [2022-04-08 02:14:57,006 INFO L272 TraceCheckUtils]: 0: Hoare triple {1660#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1660#true} is VALID [2022-04-08 02:14:57,006 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 16 proven. 3 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-08 02:14:57,006 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:14:57,006 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [613761824] [2022-04-08 02:14:57,006 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:14:57,006 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [272211305] [2022-04-08 02:14:57,006 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [272211305] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 02:14:57,006 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 02:14:57,006 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 15 [2022-04-08 02:14:57,007 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1766566161] [2022-04-08 02:14:57,007 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 02:14:57,007 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) Word has length 46 [2022-04-08 02:14:57,007 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:14:57,008 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) [2022-04-08 02:14:57,044 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:57,044 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 02:14:57,044 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:14:57,045 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 02:14:57,045 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=161, Unknown=0, NotChecked=0, Total=210 [2022-04-08 02:14:57,045 INFO L87 Difference]: Start difference. First operand 50 states and 57 transitions. Second operand has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) [2022-04-08 02:14:57,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:57,402 INFO L93 Difference]: Finished difference Result 73 states and 85 transitions. [2022-04-08 02:14:57,402 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 02:14:57,402 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) Word has length 46 [2022-04-08 02:14:57,406 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:14:57,406 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) [2022-04-08 02:14:57,407 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 53 transitions. [2022-04-08 02:14:57,407 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) [2022-04-08 02:14:57,409 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 53 transitions. [2022-04-08 02:14:57,409 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 53 transitions. [2022-04-08 02:14:57,440 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:14:57,441 INFO L225 Difference]: With dead ends: 73 [2022-04-08 02:14:57,441 INFO L226 Difference]: Without dead ends: 49 [2022-04-08 02:14:57,441 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 78 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=93, Invalid=287, Unknown=0, NotChecked=0, Total=380 [2022-04-08 02:14:57,442 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 20 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 105 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 02:14:57,442 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 101 Invalid, 105 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 02:14:57,442 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2022-04-08 02:14:57,473 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 47. [2022-04-08 02:14:57,473 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:14:57,474 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:14:57,474 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:14:57,474 INFO L87 Difference]: Start difference. First operand 49 states. Second operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:14:57,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:57,475 INFO L93 Difference]: Finished difference Result 49 states and 54 transitions. [2022-04-08 02:14:57,476 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 54 transitions. [2022-04-08 02:14:57,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:57,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:57,476 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 49 states. [2022-04-08 02:14:57,476 INFO L87 Difference]: Start difference. First operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 49 states. [2022-04-08 02:14:57,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:14:57,477 INFO L93 Difference]: Finished difference Result 49 states and 54 transitions. [2022-04-08 02:14:57,478 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 54 transitions. [2022-04-08 02:14:57,478 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:14:57,478 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:14:57,478 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:14:57,478 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:14:57,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:14:57,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 52 transitions. [2022-04-08 02:14:57,479 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 52 transitions. Word has length 46 [2022-04-08 02:14:57,479 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:14:57,479 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 52 transitions. [2022-04-08 02:14:57,480 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) [2022-04-08 02:14:57,480 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 52 transitions. [2022-04-08 02:14:57,480 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-08 02:14:57,480 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:14:57,480 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 3, 3, 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:57,508 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:57,695 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:57,696 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:14:57,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:14:57,696 INFO L85 PathProgramCache]: Analyzing trace with hash -1158992049, now seen corresponding path program 1 times [2022-04-08 02:14:57,696 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:14:57,696 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [601958163] [2022-04-08 02:14:57,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:57,696 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:14:57,708 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:14:57,708 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [226080613] [2022-04-08 02:14:57,708 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:14:57,708 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:14:57,709 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:14:57,732 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:57,733 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:57,767 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:57,768 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-08 02:14:57,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:14:57,775 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:15:06,164 INFO L272 TraceCheckUtils]: 0: Hoare triple {2227#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,164 INFO L290 TraceCheckUtils]: 1: Hoare triple {2227#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {2227#true} is VALID [2022-04-08 02:15:06,164 INFO L290 TraceCheckUtils]: 2: Hoare triple {2227#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,164 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2227#true} {2227#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,164 INFO L272 TraceCheckUtils]: 4: Hoare triple {2227#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L290 TraceCheckUtils]: 5: Hoare triple {2227#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L272 TraceCheckUtils]: 6: Hoare triple {2227#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L290 TraceCheckUtils]: 7: Hoare triple {2227#true} [82] 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] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L290 TraceCheckUtils]: 8: Hoare triple {2227#true} [85] 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[] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L290 TraceCheckUtils]: 9: Hoare triple {2227#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2227#true} {2227#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L290 TraceCheckUtils]: 11: Hoare triple {2227#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L272 TraceCheckUtils]: 12: Hoare triple {2227#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L290 TraceCheckUtils]: 13: Hoare triple {2227#true} [82] 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] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L290 TraceCheckUtils]: 14: Hoare triple {2227#true} [85] 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[] {2227#true} is VALID [2022-04-08 02:15:06,165 INFO L290 TraceCheckUtils]: 15: Hoare triple {2227#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2227#true} {2227#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L272 TraceCheckUtils]: 17: Hoare triple {2227#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L290 TraceCheckUtils]: 18: Hoare triple {2227#true} [82] 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] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L290 TraceCheckUtils]: 19: Hoare triple {2227#true} [85] 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[] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L290 TraceCheckUtils]: 20: Hoare triple {2227#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2227#true} {2227#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L290 TraceCheckUtils]: 22: Hoare triple {2227#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L290 TraceCheckUtils]: 23: Hoare triple {2227#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L272 TraceCheckUtils]: 24: Hoare triple {2227#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L290 TraceCheckUtils]: 25: Hoare triple {2227#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L290 TraceCheckUtils]: 26: Hoare triple {2227#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,166 INFO L290 TraceCheckUtils]: 27: Hoare triple {2227#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2227#true} {2227#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L290 TraceCheckUtils]: 29: Hoare triple {2227#true} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L290 TraceCheckUtils]: 30: Hoare triple {2227#true} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L290 TraceCheckUtils]: 31: Hoare triple {2227#true} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L290 TraceCheckUtils]: 32: Hoare triple {2227#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L272 TraceCheckUtils]: 33: Hoare triple {2227#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L290 TraceCheckUtils]: 34: Hoare triple {2227#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L290 TraceCheckUtils]: 35: Hoare triple {2227#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L290 TraceCheckUtils]: 36: Hoare triple {2227#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2227#true} {2227#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2227#true} is VALID [2022-04-08 02:15:06,167 INFO L290 TraceCheckUtils]: 38: Hoare triple {2227#true} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,168 INFO L290 TraceCheckUtils]: 39: Hoare triple {2227#true} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2227#true} is VALID [2022-04-08 02:15:06,168 INFO L290 TraceCheckUtils]: 40: Hoare triple {2227#true} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2227#true} is VALID [2022-04-08 02:15:06,168 INFO L290 TraceCheckUtils]: 41: Hoare triple {2227#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:06,168 INFO L272 TraceCheckUtils]: 42: Hoare triple {2227#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2227#true} is VALID [2022-04-08 02:15:06,172 INFO L290 TraceCheckUtils]: 43: Hoare triple {2227#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2361#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:15:06,172 INFO L290 TraceCheckUtils]: 44: Hoare triple {2361#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2365#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:15:06,172 INFO L290 TraceCheckUtils]: 45: Hoare triple {2365#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2365#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:15:08,175 WARN L284 TraceCheckUtils]: 46: Hoare quadruple {2365#(not (= |__VERIFIER_assert_#in~cond| 0))} {2227#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2372#(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:15:08,192 INFO L290 TraceCheckUtils]: 47: Hoare triple {2372#(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))} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {2376#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:15:08,198 INFO L272 TraceCheckUtils]: 48: Hoare triple {2376#(= main_~z~0 (* main_~b~0 main_~a~0))} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} 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] {2380#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:15:08,199 INFO L290 TraceCheckUtils]: 49: Hoare triple {2380#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2384#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:15:08,199 INFO L290 TraceCheckUtils]: 50: Hoare triple {2384#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= 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[] {2228#false} is VALID [2022-04-08 02:15:08,199 INFO L290 TraceCheckUtils]: 51: Hoare triple {2228#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2228#false} is VALID [2022-04-08 02:15:08,199 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 13 proven. 1 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-04-08 02:15:08,199 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 02:15:16,464 INFO L290 TraceCheckUtils]: 51: Hoare triple {2228#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2228#false} is VALID [2022-04-08 02:15:16,465 INFO L290 TraceCheckUtils]: 50: Hoare triple {2384#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= 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[] {2228#false} is VALID [2022-04-08 02:15:16,465 INFO L290 TraceCheckUtils]: 49: Hoare triple {2380#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2384#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 02:15:16,466 INFO L272 TraceCheckUtils]: 48: Hoare triple {2376#(= main_~z~0 (* main_~b~0 main_~a~0))} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} 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] {2380#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 02:15:16,466 INFO L290 TraceCheckUtils]: 47: Hoare triple {2403#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {2376#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-08 02:15:16,467 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2365#(not (= |__VERIFIER_assert_#in~cond| 0))} {2227#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2403#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-08 02:15:16,467 INFO L290 TraceCheckUtils]: 45: Hoare triple {2365#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2365#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:15:16,468 INFO L290 TraceCheckUtils]: 44: Hoare triple {2416#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2365#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 02:15:16,468 INFO L290 TraceCheckUtils]: 43: Hoare triple {2227#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2416#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 02:15:16,468 INFO L272 TraceCheckUtils]: 42: Hoare triple {2227#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2227#true} is VALID [2022-04-08 02:15:16,468 INFO L290 TraceCheckUtils]: 41: Hoare triple {2227#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,468 INFO L290 TraceCheckUtils]: 40: Hoare triple {2227#true} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2227#true} is VALID [2022-04-08 02:15:16,468 INFO L290 TraceCheckUtils]: 39: Hoare triple {2227#true} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2227#true} is VALID [2022-04-08 02:15:16,468 INFO L290 TraceCheckUtils]: 38: Hoare triple {2227#true} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,468 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2227#true} {2227#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L290 TraceCheckUtils]: 36: Hoare triple {2227#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L290 TraceCheckUtils]: 35: Hoare triple {2227#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L290 TraceCheckUtils]: 34: Hoare triple {2227#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L272 TraceCheckUtils]: 33: Hoare triple {2227#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L290 TraceCheckUtils]: 32: Hoare triple {2227#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L290 TraceCheckUtils]: 31: Hoare triple {2227#true} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L290 TraceCheckUtils]: 30: Hoare triple {2227#true} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L290 TraceCheckUtils]: 29: Hoare triple {2227#true} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2227#true} {2227#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L290 TraceCheckUtils]: 27: Hoare triple {2227#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,469 INFO L290 TraceCheckUtils]: 26: Hoare triple {2227#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L290 TraceCheckUtils]: 25: Hoare triple {2227#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L272 TraceCheckUtils]: 24: Hoare triple {2227#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L290 TraceCheckUtils]: 23: Hoare triple {2227#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L290 TraceCheckUtils]: 22: Hoare triple {2227#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2227#true} {2227#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L290 TraceCheckUtils]: 20: Hoare triple {2227#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L290 TraceCheckUtils]: 19: Hoare triple {2227#true} [85] 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[] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L290 TraceCheckUtils]: 18: Hoare triple {2227#true} [82] 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] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L272 TraceCheckUtils]: 17: Hoare triple {2227#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2227#true} {2227#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L290 TraceCheckUtils]: 15: Hoare triple {2227#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,470 INFO L290 TraceCheckUtils]: 14: Hoare triple {2227#true} [85] 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[] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L290 TraceCheckUtils]: 13: Hoare triple {2227#true} [82] 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] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L272 TraceCheckUtils]: 12: Hoare triple {2227#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L290 TraceCheckUtils]: 11: Hoare triple {2227#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2227#true} {2227#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L290 TraceCheckUtils]: 9: Hoare triple {2227#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L290 TraceCheckUtils]: 8: Hoare triple {2227#true} [85] 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[] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L290 TraceCheckUtils]: 7: Hoare triple {2227#true} [82] 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] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L272 TraceCheckUtils]: 6: Hoare triple {2227#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L290 TraceCheckUtils]: 5: Hoare triple {2227#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L272 TraceCheckUtils]: 4: Hoare triple {2227#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,471 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2227#true} {2227#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {2227#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,472 INFO L290 TraceCheckUtils]: 1: Hoare triple {2227#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {2227#true} is VALID [2022-04-08 02:15:16,472 INFO L272 TraceCheckUtils]: 0: Hoare triple {2227#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2227#true} is VALID [2022-04-08 02:15:16,472 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 13 proven. 1 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-04-08 02:15:16,472 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:15:16,472 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [601958163] [2022-04-08 02:15:16,472 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:15:16,472 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [226080613] [2022-04-08 02:15:16,472 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [226080613] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 02:15:16,472 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 02:15:16,472 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 02:15:16,473 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1280612978] [2022-04-08 02:15:16,473 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 02:15:16,473 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 52 [2022-04-08 02:15:16,473 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:15:16,473 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-08 02:15:18,505 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 39 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 02:15:18,506 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 02:15:18,506 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:15:18,506 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 02:15:18,506 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-08 02:15:18,506 INFO L87 Difference]: Start difference. First operand 47 states and 52 transitions. Second operand has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-08 02:15:20,561 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:21,203 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:15:21,203 INFO L93 Difference]: Finished difference Result 53 states and 57 transitions. [2022-04-08 02:15:21,203 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 02:15:21,203 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 52 [2022-04-08 02:15:21,203 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:15:21,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-08 02:15:21,204 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 40 transitions. [2022-04-08 02:15:21,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-08 02:15:21,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 40 transitions. [2022-04-08 02:15:21,205 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 40 transitions. [2022-04-08 02:15:25,235 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 38 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-08 02:15:25,236 INFO L225 Difference]: With dead ends: 53 [2022-04-08 02:15:25,236 INFO L226 Difference]: Without dead ends: 46 [2022-04-08 02:15:25,236 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 94 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:25,237 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 17 mSDsluCounter, 91 mSDsCounter, 0 mSdLazyCounter, 75 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 75 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-08 02:15:25,237 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 115 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 75 Invalid, 1 Unknown, 0 Unchecked, 2.3s Time] [2022-04-08 02:15:25,237 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-08 02:15:25,268 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2022-04-08 02:15:25,268 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:15:25,268 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:15:25,269 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:15:25,269 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:15:25,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:15:25,271 INFO L93 Difference]: Finished difference Result 46 states and 50 transitions. [2022-04-08 02:15:25,271 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2022-04-08 02:15:25,271 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:15:25,271 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:15:25,271 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 46 states. [2022-04-08 02:15:25,271 INFO L87 Difference]: Start difference. First operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 46 states. [2022-04-08 02:15:25,272 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:15:25,272 INFO L93 Difference]: Finished difference Result 46 states and 50 transitions. [2022-04-08 02:15:25,272 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2022-04-08 02:15:25,273 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:15:25,273 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:15:25,273 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:15:25,273 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:15:25,273 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 02:15:25,274 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 50 transitions. [2022-04-08 02:15:25,274 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 50 transitions. Word has length 52 [2022-04-08 02:15:25,274 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:15:25,274 INFO L478 AbstractCegarLoop]: Abstraction has 46 states and 50 transitions. [2022-04-08 02:15:25,274 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-08 02:15:25,274 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2022-04-08 02:15:25,277 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-08 02:15:25,277 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 02:15:25,277 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:15:25,297 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:15:25,489 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:15:25,490 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 02:15:25,490 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 02:15:25,490 INFO L85 PathProgramCache]: Analyzing trace with hash 2045202388, now seen corresponding path program 1 times [2022-04-08 02:15:25,490 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 02:15:25,490 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1774875784] [2022-04-08 02:15:25,490 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:15:25,490 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 02:15:25,503 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 02:15:25,503 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [618395172] [2022-04-08 02:15:25,503 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 02:15:25,503 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 02:15:25,503 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 02:15:25,504 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:15:25,508 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:15:25,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:15:25,544 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-08 02:15:25,553 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 02:15:25,554 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 02:15:26,353 INFO L272 TraceCheckUtils]: 0: Hoare triple {2783#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,353 INFO L290 TraceCheckUtils]: 1: Hoare triple {2783#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {2783#true} is VALID [2022-04-08 02:15:26,353 INFO L290 TraceCheckUtils]: 2: Hoare triple {2783#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,353 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2783#true} {2783#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,353 INFO L272 TraceCheckUtils]: 4: Hoare triple {2783#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,353 INFO L290 TraceCheckUtils]: 5: Hoare triple {2783#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2783#true} is VALID [2022-04-08 02:15:26,353 INFO L272 TraceCheckUtils]: 6: Hoare triple {2783#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2783#true} is VALID [2022-04-08 02:15:26,354 INFO L290 TraceCheckUtils]: 7: Hoare triple {2783#true} [82] 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] {2783#true} is VALID [2022-04-08 02:15:26,354 INFO L290 TraceCheckUtils]: 8: Hoare triple {2783#true} [85] 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[] {2783#true} is VALID [2022-04-08 02:15:26,354 INFO L290 TraceCheckUtils]: 9: Hoare triple {2783#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,354 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2783#true} {2783#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2783#true} is VALID [2022-04-08 02:15:26,354 INFO L290 TraceCheckUtils]: 11: Hoare triple {2783#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {2783#true} is VALID [2022-04-08 02:15:26,354 INFO L272 TraceCheckUtils]: 12: Hoare triple {2783#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2783#true} is VALID [2022-04-08 02:15:26,354 INFO L290 TraceCheckUtils]: 13: Hoare triple {2783#true} [82] 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] {2827#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 02:15:26,355 INFO L290 TraceCheckUtils]: 14: Hoare triple {2827#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] 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[] {2831#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:15:26,355 INFO L290 TraceCheckUtils]: 15: Hoare triple {2831#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2831#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:15:26,355 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2831#(not (= |assume_abort_if_not_#in~cond| 0))} {2783#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2838#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-08 02:15:26,356 INFO L272 TraceCheckUtils]: 17: Hoare triple {2838#(and (<= main_~b~0 2) (<= 0 main_~b~0))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2783#true} is VALID [2022-04-08 02:15:26,356 INFO L290 TraceCheckUtils]: 18: Hoare triple {2783#true} [82] 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] {2827#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 02:15:26,356 INFO L290 TraceCheckUtils]: 19: Hoare triple {2827#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] 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[] {2831#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:15:26,357 INFO L290 TraceCheckUtils]: 20: Hoare triple {2831#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2831#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:15:26,357 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2831#(not (= |assume_abort_if_not_#in~cond| 0))} {2838#(and (<= main_~b~0 2) (<= 0 main_~b~0))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2854#(and (<= main_~b~0 2) (<= 1 main_~b~0))} is VALID [2022-04-08 02:15:26,357 INFO L290 TraceCheckUtils]: 22: Hoare triple {2854#(and (<= main_~b~0 2) (<= 1 main_~b~0))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 02:15:26,358 INFO L290 TraceCheckUtils]: 23: Hoare triple {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 02:15:26,358 INFO L272 TraceCheckUtils]: 24: Hoare triple {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2783#true} is VALID [2022-04-08 02:15:26,358 INFO L290 TraceCheckUtils]: 25: Hoare triple {2783#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2783#true} is VALID [2022-04-08 02:15:26,358 INFO L290 TraceCheckUtils]: 26: Hoare triple {2783#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,358 INFO L290 TraceCheckUtils]: 27: Hoare triple {2783#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,359 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2783#true} {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 02:15:26,359 INFO L290 TraceCheckUtils]: 29: Hoare triple {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 02:15:26,360 INFO L290 TraceCheckUtils]: 30: Hoare triple {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-08 02:15:26,360 INFO L290 TraceCheckUtils]: 31: Hoare triple {2858#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2886#(<= main_~y~0 1)} is VALID [2022-04-08 02:15:26,361 INFO L290 TraceCheckUtils]: 32: Hoare triple {2886#(<= main_~y~0 1)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2886#(<= main_~y~0 1)} is VALID [2022-04-08 02:15:26,361 INFO L272 TraceCheckUtils]: 33: Hoare triple {2886#(<= main_~y~0 1)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2783#true} is VALID [2022-04-08 02:15:26,361 INFO L290 TraceCheckUtils]: 34: Hoare triple {2783#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2783#true} is VALID [2022-04-08 02:15:26,361 INFO L290 TraceCheckUtils]: 35: Hoare triple {2783#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,361 INFO L290 TraceCheckUtils]: 36: Hoare triple {2783#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,361 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2783#true} {2886#(<= main_~y~0 1)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2886#(<= main_~y~0 1)} is VALID [2022-04-08 02:15:26,362 INFO L290 TraceCheckUtils]: 38: Hoare triple {2886#(<= main_~y~0 1)} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2908#(and (not (= main_~y~0 0)) (<= main_~y~0 1))} is VALID [2022-04-08 02:15:26,362 INFO L290 TraceCheckUtils]: 39: Hoare triple {2908#(and (not (= main_~y~0 0)) (<= main_~y~0 1))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 02:15:26,363 INFO L290 TraceCheckUtils]: 40: Hoare triple {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 02:15:26,364 INFO L290 TraceCheckUtils]: 41: Hoare triple {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 02:15:26,364 INFO L272 TraceCheckUtils]: 42: Hoare triple {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2783#true} is VALID [2022-04-08 02:15:26,364 INFO L290 TraceCheckUtils]: 43: Hoare triple {2783#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2783#true} is VALID [2022-04-08 02:15:26,364 INFO L290 TraceCheckUtils]: 44: Hoare triple {2783#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,364 INFO L290 TraceCheckUtils]: 45: Hoare triple {2783#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:26,364 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2783#true} {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 02:15:26,365 INFO L290 TraceCheckUtils]: 47: Hoare triple {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2784#false} is VALID [2022-04-08 02:15:26,365 INFO L290 TraceCheckUtils]: 48: Hoare triple {2784#false} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2784#false} is VALID [2022-04-08 02:15:26,365 INFO L290 TraceCheckUtils]: 49: Hoare triple {2784#false} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2784#false} is VALID [2022-04-08 02:15:26,365 INFO L290 TraceCheckUtils]: 50: Hoare triple {2784#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2784#false} is VALID [2022-04-08 02:15:26,365 INFO L272 TraceCheckUtils]: 51: Hoare triple {2784#false} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2784#false} is VALID [2022-04-08 02:15:26,365 INFO L290 TraceCheckUtils]: 52: Hoare triple {2784#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2784#false} is VALID [2022-04-08 02:15:26,365 INFO L290 TraceCheckUtils]: 53: Hoare triple {2784#false} [99] L13-->L14: Formula: (= 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[] {2784#false} is VALID [2022-04-08 02:15:26,365 INFO L290 TraceCheckUtils]: 54: Hoare triple {2784#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2784#false} is VALID [2022-04-08 02:15:26,366 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 25 proven. 8 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-08 02:15:26,366 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 02:15:27,664 INFO L290 TraceCheckUtils]: 54: Hoare triple {2784#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2784#false} is VALID [2022-04-08 02:15:27,665 INFO L290 TraceCheckUtils]: 53: Hoare triple {2784#false} [99] L13-->L14: Formula: (= 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[] {2784#false} is VALID [2022-04-08 02:15:27,665 INFO L290 TraceCheckUtils]: 52: Hoare triple {2784#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2784#false} is VALID [2022-04-08 02:15:27,665 INFO L272 TraceCheckUtils]: 51: Hoare triple {2784#false} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2784#false} is VALID [2022-04-08 02:15:27,665 INFO L290 TraceCheckUtils]: 50: Hoare triple {2784#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2784#false} is VALID [2022-04-08 02:15:27,665 INFO L290 TraceCheckUtils]: 49: Hoare triple {2784#false} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2784#false} is VALID [2022-04-08 02:15:27,665 INFO L290 TraceCheckUtils]: 48: Hoare triple {2784#false} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2784#false} is VALID [2022-04-08 02:15:27,666 INFO L290 TraceCheckUtils]: 47: Hoare triple {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2784#false} is VALID [2022-04-08 02:15:27,666 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2783#true} {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 02:15:27,666 INFO L290 TraceCheckUtils]: 45: Hoare triple {2783#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,667 INFO L290 TraceCheckUtils]: 44: Hoare triple {2783#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,667 INFO L290 TraceCheckUtils]: 43: Hoare triple {2783#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2783#true} is VALID [2022-04-08 02:15:27,667 INFO L272 TraceCheckUtils]: 42: Hoare triple {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2783#true} is VALID [2022-04-08 02:15:27,667 INFO L290 TraceCheckUtils]: 41: Hoare triple {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 02:15:27,668 INFO L290 TraceCheckUtils]: 40: Hoare triple {3000#(and (<= 0 (+ (div main_~y~0 2) 2)) (or (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0)) (and (<= (div main_~y~0 2) 0) (not (= (+ (div main_~y~0 2) 1) 0)))) (not (= (+ (div main_~y~0 2) 2) 0)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2912#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 02:15:27,669 INFO L290 TraceCheckUtils]: 39: Hoare triple {3004#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {3000#(and (<= 0 (+ (div main_~y~0 2) 2)) (or (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0)) (and (<= (div main_~y~0 2) 0) (not (= (+ (div main_~y~0 2) 1) 0)))) (not (= (+ (div main_~y~0 2) 2) 0)))} is VALID [2022-04-08 02:15:27,670 INFO L290 TraceCheckUtils]: 38: Hoare triple {3004#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {3004#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} is VALID [2022-04-08 02:15:27,670 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2783#true} {3004#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {3004#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} is VALID [2022-04-08 02:15:27,670 INFO L290 TraceCheckUtils]: 36: Hoare triple {2783#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,670 INFO L290 TraceCheckUtils]: 35: Hoare triple {2783#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,670 INFO L290 TraceCheckUtils]: 34: Hoare triple {2783#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2783#true} is VALID [2022-04-08 02:15:27,671 INFO L272 TraceCheckUtils]: 33: Hoare triple {3004#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2783#true} is VALID [2022-04-08 02:15:27,671 INFO L290 TraceCheckUtils]: 32: Hoare triple {3004#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3004#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} is VALID [2022-04-08 02:15:27,672 INFO L290 TraceCheckUtils]: 31: Hoare triple {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3004#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} is VALID [2022-04-08 02:15:27,672 INFO L290 TraceCheckUtils]: 30: Hoare triple {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} is VALID [2022-04-08 02:15:27,672 INFO L290 TraceCheckUtils]: 29: Hoare triple {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} is VALID [2022-04-08 02:15:27,673 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2783#true} {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} is VALID [2022-04-08 02:15:27,673 INFO L290 TraceCheckUtils]: 27: Hoare triple {2783#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,673 INFO L290 TraceCheckUtils]: 26: Hoare triple {2783#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,673 INFO L290 TraceCheckUtils]: 25: Hoare triple {2783#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |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_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2783#true} is VALID [2022-04-08 02:15:27,673 INFO L272 TraceCheckUtils]: 24: Hoare triple {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} 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] {2783#true} is VALID [2022-04-08 02:15:27,674 INFO L290 TraceCheckUtils]: 23: Hoare triple {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} is VALID [2022-04-08 02:15:27,674 INFO L290 TraceCheckUtils]: 22: Hoare triple {3057#(<= (div (* (- 1) (div main_~b~0 2)) (- 2)) 1)} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {3029#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} is VALID [2022-04-08 02:15:27,676 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2783#true} {3057#(<= (div (* (- 1) (div main_~b~0 2)) (- 2)) 1)} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3057#(<= (div (* (- 1) (div main_~b~0 2)) (- 2)) 1)} is VALID [2022-04-08 02:15:27,676 INFO L290 TraceCheckUtils]: 20: Hoare triple {2783#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,676 INFO L290 TraceCheckUtils]: 19: Hoare triple {2783#true} [85] 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[] {2783#true} is VALID [2022-04-08 02:15:27,676 INFO L290 TraceCheckUtils]: 18: Hoare triple {2783#true} [82] 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] {2783#true} is VALID [2022-04-08 02:15:27,676 INFO L272 TraceCheckUtils]: 17: Hoare triple {3057#(<= (div (* (- 1) (div main_~b~0 2)) (- 2)) 1)} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2783#true} is VALID [2022-04-08 02:15:27,679 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2831#(not (= |assume_abort_if_not_#in~cond| 0))} {2783#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3057#(<= (div (* (- 1) (div main_~b~0 2)) (- 2)) 1)} is VALID [2022-04-08 02:15:27,679 INFO L290 TraceCheckUtils]: 15: Hoare triple {2831#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2831#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:15:27,680 INFO L290 TraceCheckUtils]: 14: Hoare triple {3085#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [85] 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[] {2831#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 02:15:27,680 INFO L290 TraceCheckUtils]: 13: Hoare triple {2783#true} [82] 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] {3085#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 02:15:27,680 INFO L272 TraceCheckUtils]: 12: Hoare triple {2783#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 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_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2783#true} is VALID [2022-04-08 02:15:27,680 INFO L290 TraceCheckUtils]: 11: Hoare triple {2783#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {2783#true} is VALID [2022-04-08 02:15:27,680 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2783#true} {2783#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2783#true} is VALID [2022-04-08 02:15:27,680 INFO L290 TraceCheckUtils]: 9: Hoare triple {2783#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,680 INFO L290 TraceCheckUtils]: 8: Hoare triple {2783#true} [85] 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[] {2783#true} is VALID [2022-04-08 02:15:27,680 INFO L290 TraceCheckUtils]: 7: Hoare triple {2783#true} [82] 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] {2783#true} is VALID [2022-04-08 02:15:27,681 INFO L272 TraceCheckUtils]: 6: Hoare triple {2783#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2783#true} is VALID [2022-04-08 02:15:27,681 INFO L290 TraceCheckUtils]: 5: Hoare triple {2783#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2783#true} is VALID [2022-04-08 02:15:27,681 INFO L272 TraceCheckUtils]: 4: Hoare triple {2783#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,681 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2783#true} {2783#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,681 INFO L290 TraceCheckUtils]: 2: Hoare triple {2783#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,681 INFO L290 TraceCheckUtils]: 1: Hoare triple {2783#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#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[#NULL.offset, #NULL.base] {2783#true} is VALID [2022-04-08 02:15:27,681 INFO L272 TraceCheckUtils]: 0: Hoare triple {2783#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2783#true} is VALID [2022-04-08 02:15:27,681 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 26 proven. 7 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-08 02:15:27,681 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 02:15:27,681 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1774875784] [2022-04-08 02:15:27,681 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 02:15:27,682 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [618395172] [2022-04-08 02:15:27,682 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [618395172] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 02:15:27,682 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 02:15:27,682 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9] total 15 [2022-04-08 02:15:27,682 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1195141106] [2022-04-08 02:15:27,682 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 02:15:27,683 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) Word has length 55 [2022-04-08 02:15:27,683 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 02:15:27,683 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-08 02:15:27,731 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 02:15:27,731 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 02:15:27,731 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 02:15:27,732 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 02:15:27,732 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=164, Unknown=0, NotChecked=0, Total=210 [2022-04-08 02:15:27,732 INFO L87 Difference]: Start difference. First operand 46 states and 50 transitions. Second operand has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-08 02:15:28,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:15:28,082 INFO L93 Difference]: Finished difference Result 56 states and 60 transitions. [2022-04-08 02:15:28,082 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 02:15:28,082 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) Word has length 55 [2022-04-08 02:15:28,082 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 02:15:28,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-08 02:15:28,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 48 transitions. [2022-04-08 02:15:28,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-08 02:15:28,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 48 transitions. [2022-04-08 02:15:28,085 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 48 transitions. [2022-04-08 02:15:28,120 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:15:28,120 INFO L225 Difference]: With dead ends: 56 [2022-04-08 02:15:28,120 INFO L226 Difference]: Without dead ends: 0 [2022-04-08 02:15:28,121 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 93 SyntacticMatches, 3 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=90, Invalid=290, Unknown=0, NotChecked=0, Total=380 [2022-04-08 02:15:28,121 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 19 mSDsluCounter, 86 mSDsCounter, 0 mSdLazyCounter, 104 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 124 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 104 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 02:15:28,121 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 110 Invalid, 124 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 104 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 02:15:28,121 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-08 02:15:28,122 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-08 02:15:28,122 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 02:15:28,122 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 02:15:28,122 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 02:15:28,122 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 02:15:28,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:15:28,122 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 02:15:28,122 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 02:15:28,122 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:15:28,122 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:15:28,122 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-08 02:15:28,122 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-08 02:15:28,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 02:15:28,122 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 02:15:28,122 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 02:15:28,122 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:15:28,123 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 02:15:28,123 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 02:15:28,123 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 02:15:28,123 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 02:15:28,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-08 02:15:28,123 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 55 [2022-04-08 02:15:28,123 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 02:15:28,123 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-08 02:15:28,123 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-08 02:15:28,123 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 02:15:28,123 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 02:15:28,125 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 02:15:28,144 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:28,335 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:28,337 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-08 02:15:28,717 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-08 02:15:28,717 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-08 02:15:28,717 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-08 02:15:28,717 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-08 02:15:28,717 INFO L885 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-08 02:15:28,718 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-08 02:15:28,718 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-08 02:15:28,718 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 9 11) the Hoare annotation is: true [2022-04-08 02:15:28,718 INFO L882 garLoopResultBuilder]: For program point L10(line 10) no Hoare annotation was computed. [2022-04-08 02:15:28,718 INFO L882 garLoopResultBuilder]: For program point L10-2(lines 9 11) no Hoare annotation was computed. [2022-04-08 02:15:28,718 INFO L882 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 9 11) no Hoare annotation was computed. [2022-04-08 02:15:28,718 INFO L885 garLoopResultBuilder]: At program point mainENTRY(lines 20 49) the Hoare annotation is: true [2022-04-08 02:15:28,718 INFO L885 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: true [2022-04-08 02:15:28,718 INFO L882 garLoopResultBuilder]: For program point L25-1(line 25) no Hoare annotation was computed. [2022-04-08 02:15:28,718 INFO L878 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: (and (<= 0 main_~a~0) (<= main_~a~0 2)) [2022-04-08 02:15:28,718 INFO L878 garLoopResultBuilder]: At program point L27-1(line 27) the Hoare annotation is: (and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0)) [2022-04-08 02:15:28,718 INFO L882 garLoopResultBuilder]: For program point L28(line 28) no Hoare annotation was computed. [2022-04-08 02:15:28,718 INFO L878 garLoopResultBuilder]: At program point L34-2(lines 34 45) the Hoare annotation is: (let ((.cse0 (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (.cse1 (<= main_~b~0 2)) (.cse4 (<= 1 main_~b~0)) (.cse2 (<= 0 main_~a~0)) (.cse3 (<= main_~a~0 2)) (.cse5 (<= 1 main_~y~0))) (or (and (<= 0 main_~y~0) .cse0 .cse1 .cse2 (<= main_~y~0 0) .cse3 .cse4) (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 (<= (* main_~y~0 2) 2)) (and (= main_~z~0 0) (<= main_~y~0 2) (= main_~b~0 main_~y~0) .cse2 .cse3 .cse5 (= main_~a~0 main_~x~0)))) [2022-04-08 02:15:28,718 INFO L878 garLoopResultBuilder]: At program point L34-3(lines 34 45) the Hoare annotation is: (let ((.cse0 (* main_~b~0 main_~a~0))) (and (<= 0 main_~y~0) (= main_~z~0 .cse0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) .cse0) (<= main_~b~0 2) (<= main_~y~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 1 main_~b~0))) [2022-04-08 02:15:28,718 INFO L878 garLoopResultBuilder]: At program point L35(line 35) the Hoare annotation is: (let ((.cse0 (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (.cse1 (<= main_~b~0 2)) (.cse4 (<= 1 main_~b~0)) (.cse2 (<= 0 main_~a~0)) (.cse3 (<= main_~a~0 2)) (.cse5 (<= 1 main_~y~0))) (or (and (<= 0 main_~y~0) .cse0 .cse1 .cse2 (<= main_~y~0 0) .cse3 .cse4) (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 (<= (* main_~y~0 2) 2)) (and (= main_~z~0 0) (<= main_~y~0 2) (= main_~b~0 main_~y~0) .cse2 .cse3 .cse5 (= main_~a~0 main_~x~0)))) [2022-04-08 02:15:28,718 INFO L882 garLoopResultBuilder]: For program point L46(line 46) no Hoare annotation was computed. [2022-04-08 02:15:28,719 INFO L882 garLoopResultBuilder]: For program point L35-1(lines 34 45) no Hoare annotation was computed. [2022-04-08 02:15:28,719 INFO L882 garLoopResultBuilder]: For program point mainFINAL(lines 20 49) no Hoare annotation was computed. [2022-04-08 02:15:28,719 INFO L882 garLoopResultBuilder]: For program point L39(lines 39 42) no Hoare annotation was computed. [2022-04-08 02:15:28,719 INFO L882 garLoopResultBuilder]: For program point mainEXIT(lines 20 49) no Hoare annotation was computed. [2022-04-08 02:15:28,719 INFO L882 garLoopResultBuilder]: For program point L39-2(lines 39 42) no Hoare annotation was computed. [2022-04-08 02:15:28,719 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 12 18) the Hoare annotation is: true [2022-04-08 02:15:28,719 INFO L882 garLoopResultBuilder]: For program point L13(lines 13 16) no Hoare annotation was computed. [2022-04-08 02:15:28,719 INFO L882 garLoopResultBuilder]: For program point L14(lines 14 15) no Hoare annotation was computed. [2022-04-08 02:15:28,719 INFO L882 garLoopResultBuilder]: For program point L13-2(lines 12 18) no Hoare annotation was computed. [2022-04-08 02:15:28,719 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 15) no Hoare annotation was computed. [2022-04-08 02:15:28,719 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 12 18) no Hoare annotation was computed. [2022-04-08 02:15:28,721 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 02:15:28,722 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L10-2 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L13-2 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L25-1 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-08 02:15:28,725 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-04-08 02:15:28,732 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-08 02:15:28,732 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-08 02:15:28,732 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-08 02:15:28,732 WARN L170 areAnnotationChecker]: L39-2 has no Hoare annotation [2022-04-08 02:15:28,733 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-08 02:15:28,733 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-08 02:15:28,733 INFO L163 areAnnotationChecker]: CFG has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-08 02:15:28,757 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 02:15:28 BasicIcfg [2022-04-08 02:15:28,757 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 02:15:28,758 INFO L158 Benchmark]: Toolchain (without parser) took 89710.24ms. Allocated memory was 180.4MB in the beginning and 233.8MB in the end (delta: 53.5MB). Free memory was 126.2MB in the beginning and 81.8MB in the end (delta: 44.4MB). Peak memory consumption was 98.9MB. Max. memory is 8.0GB. [2022-04-08 02:15:28,758 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 180.4MB. Free memory is still 141.9MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 02:15:28,758 INFO L158 Benchmark]: CACSL2BoogieTranslator took 224.93ms. Allocated memory was 180.4MB in the beginning and 233.8MB in the end (delta: 53.5MB). Free memory was 125.9MB in the beginning and 206.9MB in the end (delta: -81.0MB). Peak memory consumption was 7.5MB. Max. memory is 8.0GB. [2022-04-08 02:15:28,758 INFO L158 Benchmark]: Boogie Preprocessor took 32.39ms. Allocated memory is still 233.8MB. Free memory was 206.9MB in the beginning and 205.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-08 02:15:28,758 INFO L158 Benchmark]: RCFGBuilder took 226.74ms. Allocated memory is still 233.8MB. Free memory was 205.3MB in the beginning and 193.3MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-08 02:15:28,758 INFO L158 Benchmark]: IcfgTransformer took 23.12ms. Allocated memory is still 233.8MB. Free memory was 193.3MB in the beginning and 191.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-08 02:15:28,759 INFO L158 Benchmark]: TraceAbstraction took 89198.99ms. Allocated memory is still 233.8MB. Free memory was 190.7MB in the beginning and 81.8MB in the end (delta: 108.8MB). Peak memory consumption was 109.4MB. Max. memory is 8.0GB. [2022-04-08 02:15:28,759 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.08ms. Allocated memory is still 180.4MB. Free memory is still 141.9MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 224.93ms. Allocated memory was 180.4MB in the beginning and 233.8MB in the end (delta: 53.5MB). Free memory was 125.9MB in the beginning and 206.9MB in the end (delta: -81.0MB). Peak memory consumption was 7.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 32.39ms. Allocated memory is still 233.8MB. Free memory was 206.9MB in the beginning and 205.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 226.74ms. Allocated memory is still 233.8MB. Free memory was 205.3MB in the beginning and 193.3MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 23.12ms. Allocated memory is still 233.8MB. Free memory was 193.3MB in the beginning and 191.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 89198.99ms. Allocated memory is still 233.8MB. Free memory was 190.7MB in the beginning and 81.8MB in the end (delta: 108.8MB). Peak memory consumption was 109.4MB. 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 - PositiveResult [Line: 15]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 32 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 89.1s, OverallIterations: 8, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 11.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.4s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 1 mSolverCounterUnknown, 158 SdHoareTripleChecker+Valid, 4.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 146 mSDsluCounter, 778 SdHoareTripleChecker+Invalid, 4.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 583 mSDsCounter, 89 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 705 IncrementalHoareTripleChecker+Invalid, 795 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 89 mSolverCounterUnsat, 195 mSDtfsCounter, 705 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 516 GetRequests, 421 SyntacticMatches, 8 SemanticMatches, 87 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 220 ImplicationChecksByTransitivity, 4.9s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=50occurred in iteration=5, InterpolantAutomatonStates: 66, 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, 9 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 12 LocationsWithAnnotation, 33 PreInvPairs, 45 NumberOfFragments, 228 HoareAnnotationTreeSize, 33 FomulaSimplifications, 90 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 12 FomulaSimplificationsInter, 214 FormulaSimplificationTreeSizeReductionInter, 0.3s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 72.8s InterpolantComputationTime, 323 NumberOfCodeBlocks, 323 NumberOfCodeBlocksAsserted, 8 NumberOfCheckSat, 501 ConstructedInterpolants, 0 QuantifiedInterpolants, 1659 SizeOfPredicates, 27 NumberOfNonLiveVariables, 822 ConjunctsInSsa, 108 ConjunctsInUnsatCore, 12 InterpolantComputations, 4 PerfectInterpolantSequences, 302/335 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 - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 34]: Loop Invariant Derived loop invariant: (((((((0 <= y && z + y * x == b * a) && b <= 2) && 0 <= a) && y <= 0) && a <= 2) && 1 <= b) || ((((((z + y * x == b * a && b <= 2) && 0 <= a) && a <= 2) && 1 <= b) && 1 <= y) && y * 2 <= 2)) || ((((((z == 0 && y <= 2) && b == y) && 0 <= a) && a <= 2) && 1 <= y) && a == x) RESULT: Ultimate proved your program to be correct! [2022-04-08 02:15:28,788 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...