/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_valuebound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 01:19:25,475 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 01:19:25,477 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 01:19:25,511 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 01:19:25,511 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 01:19:25,512 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 01:19:25,514 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 01:19:25,516 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 01:19:25,517 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 01:19:25,520 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 01:19:25,520 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 01:19:25,521 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 01:19:25,521 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 01:19:25,523 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 01:19:25,524 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 01:19:25,525 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 01:19:25,526 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 01:19:25,526 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 01:19:25,528 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 01:19:25,534 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 01:19:25,535 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 01:19:25,536 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 01:19:25,536 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 01:19:25,537 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 01:19:25,538 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 01:19:25,543 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 01:19:25,543 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 01:19:25,543 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 01:19:25,544 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 01:19:25,544 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 01:19:25,545 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 01:19:25,545 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 01:19:25,546 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 01:19:25,546 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 01:19:25,547 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 01:19:25,547 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 01:19:25,547 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 01:19:25,548 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 01:19:25,548 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 01:19:25,548 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 01:19:25,548 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 01:19:25,549 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 01:19:25,550 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-28 01:19:25,571 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 01:19:25,572 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 01:19:25,572 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-28 01:19:25,572 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-28 01:19:25,573 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-28 01:19:25,573 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-28 01:19:25,573 INFO L138 SettingsManager]: * Use SBE=true [2022-04-28 01:19:25,573 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 01:19:25,573 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 01:19:25,574 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 01:19:25,574 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 01:19:25,574 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 01:19:25,574 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 01:19:25,574 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 01:19:25,574 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 01:19:25,574 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 01:19:25,575 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 01:19:25,575 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 01:19:25,575 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 01:19:25,575 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 01:19:25,575 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 01:19:25,575 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-28 01:19:25,575 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-28 01:19:25,575 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-28 01:19:25,575 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-28 01:19:25,576 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 01:19:25,576 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-28 01:19:25,576 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-28 01:19:25,577 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-28 01:19:25,577 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-28 01:19:25,759 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 01:19:25,771 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 01:19:25,773 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 01:19:25,774 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 01:19:25,776 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 01:19:25,777 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound20.c [2022-04-28 01:19:25,825 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9da90a546/63cc19c36c734159afab1d91a96aadb4/FLAG89605cd9a [2022-04-28 01:19:26,155 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 01:19:26,155 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound20.c [2022-04-28 01:19:26,159 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9da90a546/63cc19c36c734159afab1d91a96aadb4/FLAG89605cd9a [2022-04-28 01:19:26,167 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9da90a546/63cc19c36c734159afab1d91a96aadb4 [2022-04-28 01:19:26,168 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 01:19:26,169 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-28 01:19:26,171 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 01:19:26,172 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 01:19:26,174 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 01:19:26,174 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,175 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@18cc845f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26, skipping insertion in model container [2022-04-28 01:19:26,175 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,180 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 01:19:26,190 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 01:19:26,308 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_valuebound20.c[537,550] [2022-04-28 01:19:26,330 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 01:19:26,336 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 01:19:26,343 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_valuebound20.c[537,550] [2022-04-28 01:19:26,347 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 01:19:26,355 INFO L208 MainTranslator]: Completed translation [2022-04-28 01:19:26,355 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26 WrapperNode [2022-04-28 01:19:26,356 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 01:19:26,356 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 01:19:26,356 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 01:19:26,356 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 01:19:26,363 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,363 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,366 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,366 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,370 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,372 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,373 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,374 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 01:19:26,375 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 01:19:26,375 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 01:19:26,375 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 01:19:26,375 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,391 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 01:19:26,397 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:19:26,405 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-28 01:19:26,414 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-28 01:19:26,435 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 01:19:26,435 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 01:19:26,435 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 01:19:26,435 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 01:19:26,435 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 01:19:26,436 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 01:19:26,436 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 01:19:26,437 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 01:19:26,437 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 01:19:26,489 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 01:19:26,491 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 01:19:26,639 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 01:19:26,644 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 01:19:26,644 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 01:19:26,645 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:19:26 BoogieIcfgContainer [2022-04-28 01:19:26,645 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 01:19:26,646 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-28 01:19:26,646 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-28 01:19:26,654 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-28 01:19:26,657 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:19:26" (1/1) ... [2022-04-28 01:19:26,658 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-28 01:19:26,676 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 28.04 01:19:26 BasicIcfg [2022-04-28 01:19:26,677 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-28 01:19:26,678 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 01:19:26,678 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 01:19:26,680 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 01:19:26,680 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 01:19:26" (1/4) ... [2022-04-28 01:19:26,680 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@425b421b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 01:19:26, skipping insertion in model container [2022-04-28 01:19:26,680 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:19:26" (2/4) ... [2022-04-28 01:19:26,680 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@425b421b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 01:19:26, skipping insertion in model container [2022-04-28 01:19:26,681 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:19:26" (3/4) ... [2022-04-28 01:19:26,681 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@425b421b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 01:19:26, skipping insertion in model container [2022-04-28 01:19:26,681 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 28.04 01:19:26" (4/4) ... [2022-04-28 01:19:26,682 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_valuebound20.cqvasr [2022-04-28 01:19:26,690 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-28 01:19:26,691 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 01:19:26,735 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 01:19:26,742 INFO L357 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@7194b93, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@58a9877f [2022-04-28 01:19:26,742 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 01:19:26,753 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-28 01:19:26,758 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 01:19:26,758 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:19:26,760 INFO L195 NwaCegarLoop]: 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-28 01:19:26,760 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:19:26,766 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:19:26,767 INFO L85 PathProgramCache]: Analyzing trace with hash 1656134296, now seen corresponding path program 1 times [2022-04-28 01:19:26,773 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:19:26,774 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1809965249] [2022-04-28 01:19:26,774 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:19:26,774 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:19:26,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:26,917 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 01:19:26,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:26,937 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-28 01:19:26,938 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-28 01:19:26,938 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-28 01:19:26,938 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 01:19:26,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:26,944 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-28 01:19:26,944 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:19:26,945 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-28 01:19:26,945 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:19:26,945 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 01:19:26,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:26,950 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-28 01:19:26,951 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:19:26,952 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-28 01:19:26,952 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-28 01:19:26,952 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 01:19:26,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:26,960 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-28 01:19:26,961 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:19:26,961 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-28 01:19:26,961 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-28 01:19:26,962 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-28 01:19:26,963 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-28 01:19:26,963 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-28 01:19:26,963 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-28 01:19:26,963 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-28 01:19:26,963 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-28 01:19:26,964 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:19:26,964 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-28 01:19:26,964 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:19:26,964 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-28 01:19:26,965 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:19:26,965 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-28 01:19:26,965 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-28 01:19:26,965 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-28 01:19:26,966 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:19:26,966 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-28 01:19:26,966 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-28 01:19:26,966 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-28 01:19:26,966 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-28 01:19:26,967 INFO L290 TraceCheckUtils]: 19: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-28 01:19:26,967 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-28 01:19:26,968 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-28 01:19:26,968 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-28 01:19:26,968 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-28 01:19:26,968 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-28 01:19:26,968 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-28 01:19:26,968 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-28 01:19:26,969 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-28 01:19:26,969 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-28 01:19:26,969 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:19:26,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1809965249] [2022-04-28 01:19:26,970 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1809965249] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:19:26,970 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:19:26,970 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 01:19:26,971 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [154297025] [2022-04-28 01:19:26,972 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:19:26,975 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-28 01:19:26,982 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:19:26,984 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-28 01:19:27,007 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-28 01:19:27,007 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 01:19:27,007 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:19:27,021 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 01:19:27,021 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 01:19:27,023 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-28 01:19:27,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:27,132 INFO L93 Difference]: Finished difference Result 57 states and 77 transitions. [2022-04-28 01:19:27,133 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 01:19:27,133 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-28 01:19:27,136 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:19:27,137 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-28 01:19:27,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 01:19:27,148 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-28 01:19:27,151 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 01:19:27,151 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-28 01:19:27,231 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-28 01:19:27,242 INFO L225 Difference]: With dead ends: 57 [2022-04-28 01:19:27,242 INFO L226 Difference]: Without dead ends: 27 [2022-04-28 01:19:27,245 INFO L412 NwaCegarLoop]: 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-28 01:19:27,250 INFO L413 NwaCegarLoop]: 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-28 01:19:27,252 INFO L414 NwaCegarLoop]: 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-28 01:19:27,264 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-28 01:19:27,279 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-28 01:19:27,280 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:19:27,280 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-28 01:19:27,281 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-28 01:19:27,281 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-28 01:19:27,284 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:27,284 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-28 01:19:27,284 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-28 01:19:27,285 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:19:27,285 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:19:27,285 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-28 01:19:27,286 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-28 01:19:27,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:27,291 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-28 01:19:27,291 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-28 01:19:27,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:19:27,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:19:27,291 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:19:27,292 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:19:27,292 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-28 01:19:27,300 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-28 01:19:27,301 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 28 [2022-04-28 01:19:27,302 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:19:27,302 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-28 01:19:27,303 INFO L496 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-28 01:19:27,303 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-28 01:19:27,304 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 01:19:27,304 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:19:27,304 INFO L195 NwaCegarLoop]: 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-28 01:19:27,304 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 01:19:27,304 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:19:27,305 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:19:27,305 INFO L85 PathProgramCache]: Analyzing trace with hash -1063826184, now seen corresponding path program 1 times [2022-04-28 01:19:27,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:19:27,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1412062127] [2022-04-28 01:19:27,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:19:27,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:19:27,323 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:19:27,324 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [623164647] [2022-04-28 01:19:27,324 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:19:27,324 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:19:27,324 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:19:27,325 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-28 01:19:27,341 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-28 01:19:27,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:27,400 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 01:19:27,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:27,414 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:19:27,573 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-28 01:19:27,573 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-28 01:19:27,573 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-28 01:19:27,574 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-28 01:19:27,574 INFO L272 TraceCheckUtils]: 4: Hoare triple {224#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {224#true} is VALID [2022-04-28 01:19:27,574 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-28 01:19:27,574 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:19:27,574 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-28 01:19:27,574 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-28 01:19:27,575 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-28 01:19:27,575 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:19:27,575 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-28 01:19:27,575 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {224#true} is VALID [2022-04-28 01:19:27,575 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-28 01:19:27,575 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-28 01:19:27,576 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-28 01:19:27,576 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {224#true} is VALID [2022-04-28 01:19:27,576 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-28 01:19:27,576 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-28 01:19:27,576 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-28 01:19:27,576 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-28 01:19:27,576 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-28 01:19:27,578 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-28 01:19:27,578 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-28 01:19:27,579 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-28 01:19:27,580 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-28 01:19:27,580 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-28 01:19:27,580 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-28 01:19:27,581 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-28 01:19:27,581 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 01:19:27,581 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:19:27,581 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1412062127] [2022-04-28 01:19:27,581 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:19:27,581 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [623164647] [2022-04-28 01:19:27,581 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [623164647] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:19:27,582 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:19:27,582 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 01:19:27,582 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1313082454] [2022-04-28 01:19:27,582 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:19:27,583 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-28 01:19:27,583 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:19:27,583 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-28 01:19:27,598 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-28 01:19:27,598 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 01:19:27,599 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:19:27,599 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 01:19:27,599 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 01:19:27,599 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-28 01:19:27,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:27,722 INFO L93 Difference]: Finished difference Result 39 states and 45 transitions. [2022-04-28 01:19:27,722 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 01:19:27,722 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-28 01:19:27,723 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:19:27,723 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-28 01:19:27,724 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-28 01:19:27,724 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-28 01:19:27,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-28 01:19:27,726 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 45 transitions. [2022-04-28 01:19:27,755 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-28 01:19:27,757 INFO L225 Difference]: With dead ends: 39 [2022-04-28 01:19:27,757 INFO L226 Difference]: Without dead ends: 37 [2022-04-28 01:19:27,757 INFO L412 NwaCegarLoop]: 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-28 01:19:27,758 INFO L413 NwaCegarLoop]: 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-28 01:19:27,758 INFO L414 NwaCegarLoop]: 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-28 01:19:27,759 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-28 01:19:27,763 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 33. [2022-04-28 01:19:27,763 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:19:27,763 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-28 01:19:27,763 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-28 01:19:27,764 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-28 01:19:27,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:27,765 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-28 01:19:27,766 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-28 01:19:27,766 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:19:27,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:19:27,766 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-28 01:19:27,767 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-28 01:19:27,768 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:27,768 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-28 01:19:27,768 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-28 01:19:27,769 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:19:27,769 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:19:27,769 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:19:27,769 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:19:27,769 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-28 01:19:27,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2022-04-28 01:19:27,771 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 28 [2022-04-28 01:19:27,771 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:19:27,771 INFO L495 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2022-04-28 01:19:27,771 INFO L496 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-28 01:19:27,771 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2022-04-28 01:19:27,772 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 01:19:27,772 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:19:27,772 INFO L195 NwaCegarLoop]: 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-28 01:19:27,791 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-28 01:19:27,989 WARN L477 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-28 01:19:27,989 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:19:27,989 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:19:27,990 INFO L85 PathProgramCache]: Analyzing trace with hash -499634320, now seen corresponding path program 1 times [2022-04-28 01:19:27,990 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:19:27,990 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1454351689] [2022-04-28 01:19:27,990 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:19:27,990 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:19:28,004 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:19:28,005 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [390936958] [2022-04-28 01:19:28,005 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:19:28,005 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:19:28,005 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:19:28,006 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-28 01:19:28,007 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-28 01:19:28,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:28,042 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 01:19:28,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:28,051 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:19:28,150 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-28 01:19:28,151 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-28 01:19:28,151 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-28 01:19:28,151 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-28 01:19:28,151 INFO L272 TraceCheckUtils]: 4: Hoare triple {491#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {491#true} is VALID [2022-04-28 01:19:28,151 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-28 01:19:28,151 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:19:28,151 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-28 01:19:28,152 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-28 01:19:28,152 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-28 01:19:28,152 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:19:28,152 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-28 01:19:28,152 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {491#true} is VALID [2022-04-28 01:19:28,152 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-28 01:19:28,152 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-28 01:19:28,152 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-28 01:19:28,153 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {491#true} is VALID [2022-04-28 01:19:28,153 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-28 01:19:28,153 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-28 01:19:28,154 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-28 01:19:28,154 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-28 01:19:28,155 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-28 01:19:28,155 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-28 01:19:28,155 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-28 01:19:28,155 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-28 01:19:28,156 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-28 01:19:28,156 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-28 01:19:28,156 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-28 01:19:28,157 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-28 01:19:28,157 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-28 01:19:28,157 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-28 01:19:28,157 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-28 01:19:28,157 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-28 01:19:28,158 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-28 01:19:28,158 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-28 01:19:28,158 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 01:19:28,158 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:19:28,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1454351689] [2022-04-28 01:19:28,158 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:19:28,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [390936958] [2022-04-28 01:19:28,158 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [390936958] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:19:28,158 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:19:28,158 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 01:19:28,159 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [373744069] [2022-04-28 01:19:28,159 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:19:28,159 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-28 01:19:28,159 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:19:28,159 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-28 01:19:28,179 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-28 01:19:28,179 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 01:19:28,179 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:19:28,179 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 01:19:28,180 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 01:19:28,180 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-28 01:19:28,310 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:28,310 INFO L93 Difference]: Finished difference Result 43 states and 48 transitions. [2022-04-28 01:19:28,310 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 01:19:28,310 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-28 01:19:28,310 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:19:28,311 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-28 01:19:28,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 45 transitions. [2022-04-28 01:19:28,312 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-28 01:19:28,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 45 transitions. [2022-04-28 01:19:28,313 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 45 transitions. [2022-04-28 01:19:28,341 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-28 01:19:28,342 INFO L225 Difference]: With dead ends: 43 [2022-04-28 01:19:28,343 INFO L226 Difference]: Without dead ends: 36 [2022-04-28 01:19:28,343 INFO L412 NwaCegarLoop]: 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-28 01:19:28,344 INFO L413 NwaCegarLoop]: 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-28 01:19:28,344 INFO L414 NwaCegarLoop]: 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-28 01:19:28,344 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-28 01:19:28,351 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 34. [2022-04-28 01:19:28,351 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:19:28,352 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-28 01:19:28,352 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-28 01:19:28,352 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-28 01:19:28,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:28,354 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-28 01:19:28,354 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-28 01:19:28,355 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:19:28,355 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:19:28,355 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-28 01:19:28,355 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-28 01:19:28,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:28,357 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-28 01:19:28,357 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-28 01:19:28,357 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:19:28,357 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:19:28,357 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:19:28,357 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:19:28,357 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-28 01:19:28,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 38 transitions. [2022-04-28 01:19:28,359 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 38 transitions. Word has length 34 [2022-04-28 01:19:28,359 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:19:28,359 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 38 transitions. [2022-04-28 01:19:28,359 INFO L496 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-28 01:19:28,359 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-28 01:19:28,360 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 01:19:28,360 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:19:28,360 INFO L195 NwaCegarLoop]: 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-28 01:19:28,379 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 01:19:28,575 WARN L477 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-28 01:19:28,576 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:19:28,576 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:19:28,576 INFO L85 PathProgramCache]: Analyzing trace with hash -1096608558, now seen corresponding path program 1 times [2022-04-28 01:19:28,576 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:19:28,576 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [862470615] [2022-04-28 01:19:28,576 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:19:28,576 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:19:28,589 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:19:28,589 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [663462924] [2022-04-28 01:19:28,589 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:19:28,589 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:19:28,589 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:19:28,590 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-28 01:19:28,595 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-28 01:19:28,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:28,630 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 01:19:28,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:28,646 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:19:29,706 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-28 01:19:29,706 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-28 01:19:29,706 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-28 01:19:29,707 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-28 01:19:29,707 INFO L272 TraceCheckUtils]: 4: Hoare triple {783#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-28 01:19:29,707 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-28 01:19:29,707 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:19:29,707 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-28 01:19:29,707 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-28 01:19:29,707 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-28 01:19:29,708 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:19:29,708 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-28 01:19:29,708 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {783#true} is VALID [2022-04-28 01:19:29,708 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-28 01:19:29,708 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-28 01:19:29,708 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-28 01:19:29,708 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {783#true} is VALID [2022-04-28 01:19:29,709 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-28 01:19:29,709 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-28 01:19:29,709 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-28 01:19:29,709 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-28 01:19:29,709 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-28 01:19:29,719 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] {854#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:19:29,720 INFO L290 TraceCheckUtils]: 23: Hoare triple {854#(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[] {854#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:19:29,720 INFO L272 TraceCheckUtils]: 24: Hoare triple {854#(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] {783#true} is VALID [2022-04-28 01:19:29,720 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] {783#true} is VALID [2022-04-28 01:19:29,720 INFO L290 TraceCheckUtils]: 26: Hoare triple {783#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[] {783#true} is VALID [2022-04-28 01:19:29,720 INFO L290 TraceCheckUtils]: 27: Hoare triple {783#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-28 01:19:29,721 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {783#true} {854#(and (= main_~z~0 0) (= main_~b~0 main_~y~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] {854#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:19:29,722 INFO L290 TraceCheckUtils]: 29: Hoare triple {854#(and (= main_~z~0 0) (= main_~b~0 main_~y~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[] {876#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:19:29,723 INFO L290 TraceCheckUtils]: 30: Hoare triple {876#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~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] {880#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-28 01:19:29,724 INFO L290 TraceCheckUtils]: 31: Hoare triple {880#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= 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] {884#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:19:29,728 INFO L290 TraceCheckUtils]: 32: Hoare triple {884#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {884#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:19:29,852 INFO L272 TraceCheckUtils]: 33: Hoare triple {884#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [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] {891#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:19:29,857 INFO L290 TraceCheckUtils]: 34: Hoare triple {891#(<= 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] {895#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:19:29,861 INFO L290 TraceCheckUtils]: 35: Hoare triple {895#(<= 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-28 01:19:29,862 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-28 01:19:29,862 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 01:19:29,862 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:20:01,447 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-28 01:20:01,448 INFO L290 TraceCheckUtils]: 35: Hoare triple {895#(<= 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-28 01:20:01,448 INFO L290 TraceCheckUtils]: 34: Hoare triple {891#(<= 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] {895#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:20:01,449 INFO L272 TraceCheckUtils]: 33: Hoare triple {911#(= (+ 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] {891#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:20:01,449 INFO L290 TraceCheckUtils]: 32: Hoare triple {911#(= (+ 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[] {911#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:20:01,454 INFO L290 TraceCheckUtils]: 31: Hoare triple {918#(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] {911#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:20:01,456 INFO L290 TraceCheckUtils]: 30: Hoare triple {922#(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] {918#(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-28 01:20:01,457 INFO L290 TraceCheckUtils]: 29: Hoare triple {922#(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[] {922#(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-28 01:20:01,457 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {783#true} {922#(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))} [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] {922#(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-28 01:20:01,457 INFO L290 TraceCheckUtils]: 27: Hoare triple {783#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-28 01:20:01,457 INFO L290 TraceCheckUtils]: 26: Hoare triple {783#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[] {783#true} is VALID [2022-04-28 01:20:01,458 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] {783#true} is VALID [2022-04-28 01:20:01,458 INFO L272 TraceCheckUtils]: 24: Hoare triple {922#(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))} [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-28 01:20:01,458 INFO L290 TraceCheckUtils]: 23: Hoare triple {922#(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))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {922#(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-28 01:20:01,812 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] {922#(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-28 01:20:01,813 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-28 01:20:01,813 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-28 01:20:01,813 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-28 01:20:01,813 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-28 01:20:01,813 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-28 01:20:01,813 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {783#true} is VALID [2022-04-28 01:20:01,813 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-28 01:20:01,813 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-28 01:20:01,813 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-28 01:20:01,813 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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {783#true} is VALID [2022-04-28 01:20:01,814 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-28 01:20:01,814 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:20:01,814 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-28 01:20:01,814 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-28 01:20:01,814 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-28 01:20:01,814 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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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-28 01:20:01,814 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-28 01:20:01,814 INFO L272 TraceCheckUtils]: 4: Hoare triple {783#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {783#true} is VALID [2022-04-28 01:20:01,814 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-28 01:20:01,814 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-28 01:20:01,814 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-28 01:20:01,815 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-28 01:20:01,815 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 01:20:01,815 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:20:01,815 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [862470615] [2022-04-28 01:20:01,815 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:20:01,815 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [663462924] [2022-04-28 01:20:01,815 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [663462924] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 01:20:01,815 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 01:20:01,815 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [8] total 11 [2022-04-28 01:20:01,815 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1751413294] [2022-04-28 01:20:01,816 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:20:01,816 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 37 [2022-04-28 01:20:01,816 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:20:01,816 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 01:20:02,086 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-28 01:20:02,086 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 01:20:02,086 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:20:02,087 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 01:20:02,087 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2022-04-28 01:20:02,087 INFO L87 Difference]: Start difference. First operand 34 states and 38 transitions. Second operand has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 01:20:03,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:03,403 INFO L93 Difference]: Finished difference Result 47 states and 53 transitions. [2022-04-28 01:20:03,403 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 01:20:03,403 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 37 [2022-04-28 01:20:03,403 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:20:03,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 01:20:03,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 46 transitions. [2022-04-28 01:20:03,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 01:20:03,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 46 transitions. [2022-04-28 01:20:03,405 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 46 transitions. [2022-04-28 01:20:03,440 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:20:03,441 INFO L225 Difference]: With dead ends: 47 [2022-04-28 01:20:03,441 INFO L226 Difference]: Without dead ends: 45 [2022-04-28 01:20:03,442 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 62 SyntacticMatches, 2 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 6.3s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-28 01:20:03,442 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 8 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 76 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 01:20:03,442 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 116 Invalid, 76 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 01:20:03,443 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-04-28 01:20:03,452 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 43. [2022-04-28 01:20:03,452 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:20:03,453 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 01:20:03,453 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 01:20:03,453 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 01:20:03,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:03,455 INFO L93 Difference]: Finished difference Result 45 states and 51 transitions. [2022-04-28 01:20:03,455 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 51 transitions. [2022-04-28 01:20:03,455 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:20:03,455 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:20:03,455 INFO L74 IsIncluded]: Start isIncluded. First operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 45 states. [2022-04-28 01:20:03,455 INFO L87 Difference]: Start difference. First operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 45 states. [2022-04-28 01:20:03,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:03,457 INFO L93 Difference]: Finished difference Result 45 states and 51 transitions. [2022-04-28 01:20:03,457 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 51 transitions. [2022-04-28 01:20:03,457 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:20:03,457 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:20:03,457 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:20:03,457 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:20:03,457 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 01:20:03,458 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 49 transitions. [2022-04-28 01:20:03,458 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 49 transitions. Word has length 37 [2022-04-28 01:20:03,459 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:20:03,459 INFO L495 AbstractCegarLoop]: Abstraction has 43 states and 49 transitions. [2022-04-28 01:20:03,459 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 01:20:03,459 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 49 transitions. [2022-04-28 01:20:03,459 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 01:20:03,459 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:20:03,459 INFO L195 NwaCegarLoop]: 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-28 01:20:03,479 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-28 01:20:03,660 WARN L477 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-28 01:20:03,660 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:20:03,660 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:20:03,661 INFO L85 PathProgramCache]: Analyzing trace with hash -209104877, now seen corresponding path program 1 times [2022-04-28 01:20:03,661 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:20:03,661 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1145766207] [2022-04-28 01:20:03,661 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:20:03,661 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:20:03,672 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:20:03,672 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1337174990] [2022-04-28 01:20:03,672 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:20:03,672 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:20:03,673 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:20:03,673 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-28 01:20:03,674 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-28 01:20:03,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:20:03,711 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-28 01:20:03,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:20:03,726 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:20:04,800 INFO L272 TraceCheckUtils]: 0: Hoare triple {1236#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:04,800 INFO L290 TraceCheckUtils]: 1: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:04,800 INFO L290 TraceCheckUtils]: 2: Hoare triple {1236#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:04,800 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1236#true} {1236#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:04,800 INFO L272 TraceCheckUtils]: 4: Hoare triple {1236#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L290 TraceCheckUtils]: 5: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L272 TraceCheckUtils]: 6: Hoare triple {1236#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L290 TraceCheckUtils]: 7: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L290 TraceCheckUtils]: 8: Hoare triple {1236#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[] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L290 TraceCheckUtils]: 9: Hoare triple {1236#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1236#true} {1236#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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L290 TraceCheckUtils]: 11: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L272 TraceCheckUtils]: 12: Hoare triple {1236#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L290 TraceCheckUtils]: 13: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L290 TraceCheckUtils]: 14: Hoare triple {1236#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[] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L290 TraceCheckUtils]: 15: Hoare triple {1236#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:04,801 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1236#true} {1236#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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1236#true} is VALID [2022-04-28 01:20:04,802 INFO L272 TraceCheckUtils]: 17: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:04,802 INFO L290 TraceCheckUtils]: 18: Hoare triple {1236#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] {1295#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 01:20:04,802 INFO L290 TraceCheckUtils]: 19: Hoare triple {1295#(= 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[] {1299#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:20:04,803 INFO L290 TraceCheckUtils]: 20: Hoare triple {1299#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1299#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:20:04,803 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1299#(not (= |assume_abort_if_not_#in~cond| 0))} {1236#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] {1306#(<= 1 main_~b~0)} is VALID [2022-04-28 01:20:04,804 INFO L290 TraceCheckUtils]: 22: Hoare triple {1306#(<= 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] {1310#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:20:04,804 INFO L290 TraceCheckUtils]: 23: Hoare triple {1310#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1310#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:20:04,804 INFO L272 TraceCheckUtils]: 24: Hoare triple {1310#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 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] {1236#true} is VALID [2022-04-28 01:20:04,805 INFO L290 TraceCheckUtils]: 25: Hoare triple {1236#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] {1320#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:20:04,805 INFO L290 TraceCheckUtils]: 26: Hoare triple {1320#(= |__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[] {1324#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:04,805 INFO L290 TraceCheckUtils]: 27: Hoare triple {1324#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1324#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:04,806 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1324#(not (= |__VERIFIER_assert_#in~cond| 0))} {1310#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 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] {1310#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:20:04,806 INFO L290 TraceCheckUtils]: 29: Hoare triple {1310#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 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[] {1310#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:20:04,807 INFO L290 TraceCheckUtils]: 30: Hoare triple {1310#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~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[] {1337#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:20:04,808 INFO L290 TraceCheckUtils]: 31: Hoare triple {1337#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~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] {1341#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-28 01:20:04,808 INFO L290 TraceCheckUtils]: 32: Hoare triple {1341#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1341#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-28 01:20:04,810 INFO L272 TraceCheckUtils]: 33: Hoare triple {1341#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [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] {1348#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:20:04,810 INFO L290 TraceCheckUtils]: 34: Hoare triple {1348#(<= 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] {1352#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:20:04,811 INFO L290 TraceCheckUtils]: 35: Hoare triple {1352#(<= 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[] {1237#false} is VALID [2022-04-28 01:20:04,811 INFO L290 TraceCheckUtils]: 36: Hoare triple {1237#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#false} is VALID [2022-04-28 01:20:04,811 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 7 proven. 3 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 01:20:04,811 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:20:42,168 INFO L290 TraceCheckUtils]: 36: Hoare triple {1237#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#false} is VALID [2022-04-28 01:20:42,169 INFO L290 TraceCheckUtils]: 35: Hoare triple {1352#(<= 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[] {1237#false} is VALID [2022-04-28 01:20:42,169 INFO L290 TraceCheckUtils]: 34: Hoare triple {1348#(<= 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] {1352#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:20:42,170 INFO L272 TraceCheckUtils]: 33: Hoare triple {1368#(= (+ 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] {1348#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:20:42,170 INFO L290 TraceCheckUtils]: 32: Hoare triple {1368#(= (+ 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[] {1368#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:20:42,175 INFO L290 TraceCheckUtils]: 31: Hoare triple {1375#(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] {1368#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:20:42,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {1379#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [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[] {1375#(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-28 01:20:42,176 INFO L290 TraceCheckUtils]: 29: Hoare triple {1379#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] 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[] {1379#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 01:20:42,180 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1324#(not (= |__VERIFIER_assert_#in~cond| 0))} {1386#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~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)))} [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] {1379#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 01:20:42,181 INFO L290 TraceCheckUtils]: 27: Hoare triple {1324#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1324#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:42,181 INFO L290 TraceCheckUtils]: 26: Hoare triple {1396#(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[] {1324#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:42,181 INFO L290 TraceCheckUtils]: 25: Hoare triple {1236#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] {1396#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 01:20:42,181 INFO L272 TraceCheckUtils]: 24: Hoare triple {1386#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~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)))} [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] {1236#true} is VALID [2022-04-28 01:20:42,182 INFO L290 TraceCheckUtils]: 23: Hoare triple {1386#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~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)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1386#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~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)))} is VALID [2022-04-28 01:20:42,183 INFO L290 TraceCheckUtils]: 22: Hoare triple {1406#(or (= (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (= (mod main_~b~0 2) 0) (<= 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] {1386#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~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)))} is VALID [2022-04-28 01:20:42,183 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1299#(not (= |assume_abort_if_not_#in~cond| 0))} {1236#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] {1406#(or (= (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} is VALID [2022-04-28 01:20:42,184 INFO L290 TraceCheckUtils]: 20: Hoare triple {1299#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1299#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:20:42,184 INFO L290 TraceCheckUtils]: 19: Hoare triple {1419#(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[] {1299#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:20:42,184 INFO L290 TraceCheckUtils]: 18: Hoare triple {1236#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] {1419#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 01:20:42,185 INFO L272 TraceCheckUtils]: 17: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1236#true} {1236#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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L290 TraceCheckUtils]: 15: Hoare triple {1236#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L290 TraceCheckUtils]: 14: Hoare triple {1236#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[] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L290 TraceCheckUtils]: 13: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L272 TraceCheckUtils]: 12: Hoare triple {1236#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L290 TraceCheckUtils]: 11: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1236#true} {1236#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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L290 TraceCheckUtils]: 9: Hoare triple {1236#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L290 TraceCheckUtils]: 8: Hoare triple {1236#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[] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L290 TraceCheckUtils]: 7: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:42,185 INFO L272 TraceCheckUtils]: 6: Hoare triple {1236#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {1236#true} is VALID [2022-04-28 01:20:42,186 INFO L290 TraceCheckUtils]: 5: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:42,186 INFO L272 TraceCheckUtils]: 4: Hoare triple {1236#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:42,186 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1236#true} {1236#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:42,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {1236#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:42,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {1236#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] {1236#true} is VALID [2022-04-28 01:20:42,186 INFO L272 TraceCheckUtils]: 0: Hoare triple {1236#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#true} is VALID [2022-04-28 01:20:42,186 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 7 proven. 3 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 01:20:42,186 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:20:42,186 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1145766207] [2022-04-28 01:20:42,186 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:20:42,186 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1337174990] [2022-04-28 01:20:42,187 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1337174990] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:20:42,187 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:20:42,187 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13] total 19 [2022-04-28 01:20:42,187 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1097094812] [2022-04-28 01:20:42,187 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:20:42,187 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) Word has length 37 [2022-04-28 01:20:42,188 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:20:42,188 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 01:20:42,232 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-28 01:20:42,232 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-28 01:20:42,232 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:20:42,232 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-28 01:20:42,242 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=280, Unknown=0, NotChecked=0, Total=342 [2022-04-28 01:20:42,243 INFO L87 Difference]: Start difference. First operand 43 states and 49 transitions. Second operand has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 01:20:44,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:44,437 INFO L93 Difference]: Finished difference Result 68 states and 81 transitions. [2022-04-28 01:20:44,437 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-28 01:20:44,438 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) Word has length 37 [2022-04-28 01:20:44,438 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:20:44,438 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 01:20:44,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 67 transitions. [2022-04-28 01:20:44,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 01:20:44,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 67 transitions. [2022-04-28 01:20:44,441 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 67 transitions. [2022-04-28 01:20:44,510 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-28 01:20:44,511 INFO L225 Difference]: With dead ends: 68 [2022-04-28 01:20:44,511 INFO L226 Difference]: Without dead ends: 61 [2022-04-28 01:20:44,512 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 54 SyntacticMatches, 2 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 102 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=122, Invalid=528, Unknown=0, NotChecked=0, Total=650 [2022-04-28 01:20:44,512 INFO L413 NwaCegarLoop]: 19 mSDtfsCounter, 39 mSDsluCounter, 141 mSDsCounter, 0 mSdLazyCounter, 323 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 352 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 323 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 01:20:44,512 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [41 Valid, 160 Invalid, 352 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 323 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 01:20:44,513 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-04-28 01:20:44,532 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 61. [2022-04-28 01:20:44,532 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:20:44,533 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand has 61 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 44 states have internal predecessors, (51), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 01:20:44,533 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand has 61 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 44 states have internal predecessors, (51), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 01:20:44,533 INFO L87 Difference]: Start difference. First operand 61 states. Second operand has 61 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 44 states have internal predecessors, (51), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 01:20:44,535 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:44,535 INFO L93 Difference]: Finished difference Result 61 states and 73 transitions. [2022-04-28 01:20:44,535 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-28 01:20:44,535 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:20:44,535 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:20:44,536 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 44 states have internal predecessors, (51), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 61 states. [2022-04-28 01:20:44,536 INFO L87 Difference]: Start difference. First operand has 61 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 44 states have internal predecessors, (51), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 61 states. [2022-04-28 01:20:44,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:44,537 INFO L93 Difference]: Finished difference Result 61 states and 73 transitions. [2022-04-28 01:20:44,538 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-28 01:20:44,538 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:20:44,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:20:44,538 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:20:44,538 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:20:44,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 44 states have internal predecessors, (51), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 01:20:44,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 73 transitions. [2022-04-28 01:20:44,540 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 73 transitions. Word has length 37 [2022-04-28 01:20:44,540 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:20:44,540 INFO L495 AbstractCegarLoop]: Abstraction has 61 states and 73 transitions. [2022-04-28 01:20:44,540 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 01:20:44,540 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-28 01:20:44,541 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 01:20:44,541 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:20:44,541 INFO L195 NwaCegarLoop]: 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-28 01:20:44,562 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-28 01:20:44,755 WARN L477 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-28 01:20:44,755 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:20:44,756 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:20:44,756 INFO L85 PathProgramCache]: Analyzing trace with hash -266261558, now seen corresponding path program 1 times [2022-04-28 01:20:44,756 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:20:44,756 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [105708471] [2022-04-28 01:20:44,756 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:20:44,756 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:20:44,781 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:20:44,782 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [56182913] [2022-04-28 01:20:44,782 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:20:44,782 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:20:44,782 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:20:44,792 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-28 01:20:44,792 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-28 01:20:44,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:20:44,834 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 01:20:44,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:20:44,845 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:20:54,997 INFO L272 TraceCheckUtils]: 0: Hoare triple {1793#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:20:54,997 INFO L290 TraceCheckUtils]: 1: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,997 INFO L290 TraceCheckUtils]: 2: Hoare triple {1793#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:20:54,997 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1793#true} {1793#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:20:54,997 INFO L272 TraceCheckUtils]: 4: Hoare triple {1793#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:20:54,997 INFO L290 TraceCheckUtils]: 5: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L272 TraceCheckUtils]: 6: Hoare triple {1793#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L290 TraceCheckUtils]: 7: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L290 TraceCheckUtils]: 8: Hoare triple {1793#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[] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L290 TraceCheckUtils]: 9: Hoare triple {1793#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1793#true} {1793#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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L290 TraceCheckUtils]: 11: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L272 TraceCheckUtils]: 12: Hoare triple {1793#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L290 TraceCheckUtils]: 13: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L290 TraceCheckUtils]: 14: Hoare triple {1793#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[] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L290 TraceCheckUtils]: 15: Hoare triple {1793#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1793#true} {1793#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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L272 TraceCheckUtils]: 17: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L290 TraceCheckUtils]: 18: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,998 INFO L290 TraceCheckUtils]: 19: Hoare triple {1793#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[] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L290 TraceCheckUtils]: 20: Hoare triple {1793#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1793#true} {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L290 TraceCheckUtils]: 22: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L290 TraceCheckUtils]: 23: Hoare triple {1793#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L272 TraceCheckUtils]: 24: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L290 TraceCheckUtils]: 25: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L290 TraceCheckUtils]: 26: Hoare triple {1793#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[] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L290 TraceCheckUtils]: 27: Hoare triple {1793#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1793#true} {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L290 TraceCheckUtils]: 29: Hoare triple {1793#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[] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L290 TraceCheckUtils]: 30: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L290 TraceCheckUtils]: 31: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:54,999 INFO L290 TraceCheckUtils]: 32: Hoare triple {1793#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:20:55,000 INFO L272 TraceCheckUtils]: 33: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:20:55,000 INFO L290 TraceCheckUtils]: 34: Hoare triple {1793#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] {1900#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:20:55,000 INFO L290 TraceCheckUtils]: 35: Hoare triple {1900#(= |__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[] {1904#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:55,001 INFO L290 TraceCheckUtils]: 36: Hoare triple {1904#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1904#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:57,003 WARN L284 TraceCheckUtils]: 37: Hoare quadruple {1904#(not (= |__VERIFIER_assert_#in~cond| 0))} {1793#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] {1911#(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-28 01:20:57,004 INFO L290 TraceCheckUtils]: 38: Hoare triple {1911#(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[] {1915#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:20:57,005 INFO L272 TraceCheckUtils]: 39: Hoare triple {1915#(= 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] {1919#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:20:57,005 INFO L290 TraceCheckUtils]: 40: Hoare triple {1919#(<= 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] {1923#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:20:57,005 INFO L290 TraceCheckUtils]: 41: Hoare triple {1923#(<= 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[] {1794#false} is VALID [2022-04-28 01:20:57,006 INFO L290 TraceCheckUtils]: 42: Hoare triple {1794#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1794#false} is VALID [2022-04-28 01:20:57,006 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 01:20:57,006 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:21:11,470 INFO L290 TraceCheckUtils]: 42: Hoare triple {1794#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1794#false} is VALID [2022-04-28 01:21:11,471 INFO L290 TraceCheckUtils]: 41: Hoare triple {1923#(<= 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[] {1794#false} is VALID [2022-04-28 01:21:11,471 INFO L290 TraceCheckUtils]: 40: Hoare triple {1919#(<= 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] {1923#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:21:11,471 INFO L272 TraceCheckUtils]: 39: Hoare triple {1915#(= 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] {1919#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:21:11,472 INFO L290 TraceCheckUtils]: 38: Hoare triple {1942#(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[] {1915#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:21:11,472 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1904#(not (= |__VERIFIER_assert_#in~cond| 0))} {1793#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] {1942#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-28 01:21:11,473 INFO L290 TraceCheckUtils]: 36: Hoare triple {1904#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1904#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:21:11,473 INFO L290 TraceCheckUtils]: 35: Hoare triple {1955#(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[] {1904#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:21:11,473 INFO L290 TraceCheckUtils]: 34: Hoare triple {1793#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] {1955#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 01:21:11,473 INFO L272 TraceCheckUtils]: 33: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L290 TraceCheckUtils]: 32: Hoare triple {1793#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L290 TraceCheckUtils]: 31: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L290 TraceCheckUtils]: 30: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L290 TraceCheckUtils]: 29: Hoare triple {1793#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[] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1793#true} {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L290 TraceCheckUtils]: 27: Hoare triple {1793#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L290 TraceCheckUtils]: 26: Hoare triple {1793#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[] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L290 TraceCheckUtils]: 25: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L272 TraceCheckUtils]: 24: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L290 TraceCheckUtils]: 23: Hoare triple {1793#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L290 TraceCheckUtils]: 22: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1793#true} {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,474 INFO L290 TraceCheckUtils]: 20: Hoare triple {1793#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L290 TraceCheckUtils]: 19: Hoare triple {1793#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[] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L290 TraceCheckUtils]: 18: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L272 TraceCheckUtils]: 17: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1793#true} {1793#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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L290 TraceCheckUtils]: 15: Hoare triple {1793#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L290 TraceCheckUtils]: 14: Hoare triple {1793#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[] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L290 TraceCheckUtils]: 13: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L272 TraceCheckUtils]: 12: Hoare triple {1793#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L290 TraceCheckUtils]: 11: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1793#true} {1793#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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L290 TraceCheckUtils]: 9: Hoare triple {1793#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L290 TraceCheckUtils]: 8: Hoare triple {1793#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[] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L290 TraceCheckUtils]: 7: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,475 INFO L272 TraceCheckUtils]: 6: Hoare triple {1793#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {1793#true} is VALID [2022-04-28 01:21:11,476 INFO L290 TraceCheckUtils]: 5: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,476 INFO L272 TraceCheckUtils]: 4: Hoare triple {1793#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:21:11,476 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1793#true} {1793#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:21:11,476 INFO L290 TraceCheckUtils]: 2: Hoare triple {1793#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:21:11,476 INFO L290 TraceCheckUtils]: 1: Hoare triple {1793#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] {1793#true} is VALID [2022-04-28 01:21:11,476 INFO L272 TraceCheckUtils]: 0: Hoare triple {1793#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1793#true} is VALID [2022-04-28 01:21:11,476 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 01:21:11,476 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:21:11,476 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [105708471] [2022-04-28 01:21:11,476 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:21:11,476 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [56182913] [2022-04-28 01:21:11,476 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [56182913] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:21:11,476 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:21:11,477 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-28 01:21:11,477 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [499414122] [2022-04-28 01:21:11,477 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:21:11,477 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (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 43 [2022-04-28 01:21:11,477 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:21:11,477 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (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-28 01:21:13,504 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 38 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 01:21:13,504 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 01:21:13,504 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:21:13,504 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 01:21:13,504 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-28 01:21:13,505 INFO L87 Difference]: Start difference. First operand 61 states and 73 transitions. Second operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (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-28 01:21:15,551 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-28 01:21:15,811 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:21:15,812 INFO L93 Difference]: Finished difference Result 68 states and 79 transitions. [2022-04-28 01:21:15,812 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 01:21:15,812 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (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 43 [2022-04-28 01:21:15,812 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:21:15,812 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (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-28 01:21:15,813 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 40 transitions. [2022-04-28 01:21:15,813 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (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-28 01:21:15,814 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 40 transitions. [2022-04-28 01:21:15,814 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 40 transitions. [2022-04-28 01:21:19,847 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-28 01:21:19,848 INFO L225 Difference]: With dead ends: 68 [2022-04-28 01:21:19,848 INFO L226 Difference]: Without dead ends: 61 [2022-04-28 01:21:19,848 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 76 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-28 01:21:19,849 INFO L413 NwaCegarLoop]: 25 mSDtfsCounter, 17 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 72 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-04-28 01:21:19,849 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 122 Invalid, 72 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 69 Invalid, 1 Unknown, 0 Unchecked, 2.1s Time] [2022-04-28 01:21:19,849 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-04-28 01:21:19,871 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 60. [2022-04-28 01:21:19,871 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:21:19,871 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand has 60 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 01:21:19,872 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand has 60 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 01:21:19,872 INFO L87 Difference]: Start difference. First operand 61 states. Second operand has 60 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 01:21:19,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:21:19,873 INFO L93 Difference]: Finished difference Result 61 states and 70 transitions. [2022-04-28 01:21:19,873 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 70 transitions. [2022-04-28 01:21:19,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:21:19,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:21:19,874 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 61 states. [2022-04-28 01:21:19,874 INFO L87 Difference]: Start difference. First operand has 60 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 61 states. [2022-04-28 01:21:19,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:21:19,875 INFO L93 Difference]: Finished difference Result 61 states and 70 transitions. [2022-04-28 01:21:19,876 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 70 transitions. [2022-04-28 01:21:19,876 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:21:19,876 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:21:19,876 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:21:19,876 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:21:19,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 01:21:19,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 69 transitions. [2022-04-28 01:21:19,877 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 69 transitions. Word has length 43 [2022-04-28 01:21:19,877 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:21:19,878 INFO L495 AbstractCegarLoop]: Abstraction has 60 states and 69 transitions. [2022-04-28 01:21:19,878 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (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-28 01:21:19,878 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 69 transitions. [2022-04-28 01:21:19,878 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 01:21:19,878 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:21:19,878 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 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] [2022-04-28 01:21:19,896 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-28 01:21:20,078 WARN L477 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-28 01:21:20,079 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:21:20,079 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:21:20,079 INFO L85 PathProgramCache]: Analyzing trace with hash -1353204359, now seen corresponding path program 1 times [2022-04-28 01:21:20,079 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:21:20,079 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [748116034] [2022-04-28 01:21:20,080 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:21:20,080 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:21:20,092 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:21:20,093 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1511821829] [2022-04-28 01:21:20,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:21:20,093 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:21:20,093 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:21:20,100 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-28 01:21:20,100 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-28 01:21:20,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:21:20,138 INFO L263 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-28 01:21:20,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:21:20,156 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:21:50,159 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 01:22:13,818 INFO L272 TraceCheckUtils]: 0: Hoare triple {2364#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2364#true} is VALID [2022-04-28 01:22:13,818 INFO L290 TraceCheckUtils]: 1: Hoare triple {2364#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] {2364#true} is VALID [2022-04-28 01:22:13,818 INFO L290 TraceCheckUtils]: 2: Hoare triple {2364#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2364#true} is VALID [2022-04-28 01:22:13,818 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2364#true} {2364#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2364#true} is VALID [2022-04-28 01:22:13,818 INFO L272 TraceCheckUtils]: 4: Hoare triple {2364#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2364#true} is VALID [2022-04-28 01:22:13,818 INFO L290 TraceCheckUtils]: 5: Hoare triple {2364#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] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L272 TraceCheckUtils]: 6: Hoare triple {2364#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L290 TraceCheckUtils]: 7: Hoare triple {2364#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] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L290 TraceCheckUtils]: 8: Hoare triple {2364#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[] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L290 TraceCheckUtils]: 9: Hoare triple {2364#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2364#true} {2364#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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L290 TraceCheckUtils]: 11: Hoare triple {2364#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] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L272 TraceCheckUtils]: 12: Hoare triple {2364#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L290 TraceCheckUtils]: 13: Hoare triple {2364#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] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L290 TraceCheckUtils]: 14: Hoare triple {2364#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[] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L290 TraceCheckUtils]: 15: Hoare triple {2364#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2364#true} {2364#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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L272 TraceCheckUtils]: 17: Hoare triple {2364#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] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L290 TraceCheckUtils]: 18: Hoare triple {2364#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] {2364#true} is VALID [2022-04-28 01:22:13,819 INFO L290 TraceCheckUtils]: 19: Hoare triple {2364#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[] {2364#true} is VALID [2022-04-28 01:22:13,820 INFO L290 TraceCheckUtils]: 20: Hoare triple {2364#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2364#true} is VALID [2022-04-28 01:22:13,820 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2364#true} {2364#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] {2364#true} is VALID [2022-04-28 01:22:13,820 INFO L290 TraceCheckUtils]: 22: Hoare triple {2364#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] {2435#(= main_~a~0 main_~x~0)} is VALID [2022-04-28 01:22:13,820 INFO L290 TraceCheckUtils]: 23: Hoare triple {2435#(= main_~a~0 main_~x~0)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2435#(= main_~a~0 main_~x~0)} is VALID [2022-04-28 01:22:13,820 INFO L272 TraceCheckUtils]: 24: Hoare triple {2435#(= 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] {2364#true} is VALID [2022-04-28 01:22:13,820 INFO L290 TraceCheckUtils]: 25: Hoare triple {2364#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] {2364#true} is VALID [2022-04-28 01:22:13,820 INFO L290 TraceCheckUtils]: 26: Hoare triple {2364#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[] {2364#true} is VALID [2022-04-28 01:22:13,820 INFO L290 TraceCheckUtils]: 27: Hoare triple {2364#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2364#true} is VALID [2022-04-28 01:22:13,821 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2364#true} {2435#(= 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] {2435#(= main_~a~0 main_~x~0)} is VALID [2022-04-28 01:22:13,821 INFO L290 TraceCheckUtils]: 29: Hoare triple {2435#(= 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[] {2457#(and (not (= main_~y~0 0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:22:13,822 INFO L290 TraceCheckUtils]: 30: Hoare triple {2457#(and (not (= main_~y~0 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] {2461#(and (< 0 (+ main_~y~0 1)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:22:13,823 INFO L290 TraceCheckUtils]: 31: Hoare triple {2461#(and (< 0 (+ main_~y~0 1)) (= main_~a~0 main_~x~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] {2465#(and (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-28 01:22:13,823 INFO L290 TraceCheckUtils]: 32: Hoare triple {2465#(and (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2465#(and (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-28 01:22:13,823 INFO L272 TraceCheckUtils]: 33: Hoare triple {2465#(and (= (* main_~a~0 2) main_~x~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] {2364#true} is VALID [2022-04-28 01:22:13,823 INFO L290 TraceCheckUtils]: 34: Hoare triple {2364#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] {2475#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:22:13,824 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#(= |__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[] {2479#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:22:13,824 INFO L290 TraceCheckUtils]: 36: Hoare triple {2479#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2479#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:22:13,825 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2479#(not (= |__VERIFIER_assert_#in~cond| 0))} {2465#(and (= (* main_~a~0 2) main_~x~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] {2486#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-28 01:22:13,831 INFO L290 TraceCheckUtils]: 38: Hoare triple {2486#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~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[] {2486#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-28 01:22:13,832 INFO L290 TraceCheckUtils]: 39: Hoare triple {2486#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 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[] {2493#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-28 01:22:13,837 INFO L290 TraceCheckUtils]: 40: Hoare triple {2493#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) 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] {2497#(and (= (* main_~a~0 4) main_~x~0) (exists ((aux_mod_v_main_~y~0_26_22 Int) (aux_div_v_main_~y~0_26_22 Int)) (and (not (= aux_mod_v_main_~y~0_26_22 1)) (< 0 (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22 1)) (<= 0 aux_mod_v_main_~y~0_26_22) (= main_~y~0 (div (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22) 2)) (= (+ (* (* main_~a~0 2) (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22)) main_~z~0) (* main_~b~0 main_~a~0)) (< aux_mod_v_main_~y~0_26_22 2))))} is VALID [2022-04-28 01:22:14,427 INFO L290 TraceCheckUtils]: 41: Hoare triple {2497#(and (= (* main_~a~0 4) main_~x~0) (exists ((aux_mod_v_main_~y~0_26_22 Int) (aux_div_v_main_~y~0_26_22 Int)) (and (not (= aux_mod_v_main_~y~0_26_22 1)) (< 0 (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22 1)) (<= 0 aux_mod_v_main_~y~0_26_22) (= main_~y~0 (div (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22) 2)) (= (+ (* (* main_~a~0 2) (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22)) main_~z~0) (* main_~b~0 main_~a~0)) (< aux_mod_v_main_~y~0_26_22 2))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2501#(and (= (mod (+ main_~z~0 (* main_~a~0 main_~y~0 (- 4)) (* main_~b~0 main_~a~0)) 2) 0) (= (* main_~a~0 4) main_~x~0) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* 2 (* main_~a~0 main_~y~0))) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-28 01:22:16,431 WARN L272 TraceCheckUtils]: 42: Hoare triple {2501#(and (= (mod (+ main_~z~0 (* main_~a~0 main_~y~0 (- 4)) (* main_~b~0 main_~a~0)) 2) 0) (= (* main_~a~0 4) main_~x~0) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* 2 (* main_~a~0 main_~y~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] {2505#(<= 1 |__VERIFIER_assert_#in~cond|)} is UNKNOWN [2022-04-28 01:22:16,433 INFO L290 TraceCheckUtils]: 43: Hoare triple {2505#(<= 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] {2509#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:22:16,433 INFO L290 TraceCheckUtils]: 44: Hoare triple {2509#(<= 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[] {2365#false} is VALID [2022-04-28 01:22:16,433 INFO L290 TraceCheckUtils]: 45: Hoare triple {2365#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2365#false} is VALID [2022-04-28 01:22:16,433 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 6 proven. 10 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-28 01:22:16,433 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:22:44,815 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:22:44,816 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [748116034] [2022-04-28 01:22:44,816 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:22:44,816 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1511821829] [2022-04-28 01:22:44,816 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1511821829] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 01:22:44,816 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 01:22:44,816 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2022-04-28 01:22:44,816 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [367490723] [2022-04-28 01:22:44,816 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-28 01:22:44,816 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 46 [2022-04-28 01:22:44,817 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:22:44,817 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 01:22:47,021 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-28 01:22:47,021 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 01:22:47,021 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:22:47,021 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 01:22:47,021 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=249, Unknown=0, NotChecked=0, Total=306 [2022-04-28 01:22:47,022 INFO L87 Difference]: Start difference. First operand 60 states and 69 transitions. Second operand has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 01:22:56,909 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-28 01:22:58,380 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.47s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:23:01,054 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-28 01:23:05,071 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-28 01:23:07,158 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-28 01:23:07,297 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:23:07,297 INFO L93 Difference]: Finished difference Result 88 states and 101 transitions. [2022-04-28 01:23:07,297 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 01:23:07,297 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 46 [2022-04-28 01:23:07,297 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:23:07,297 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 01:23:07,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 56 transitions. [2022-04-28 01:23:07,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 01:23:07,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 56 transitions. [2022-04-28 01:23:07,299 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 56 transitions. [2022-04-28 01:23:09,515 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 55 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 01:23:09,516 INFO L225 Difference]: With dead ends: 88 [2022-04-28 01:23:09,516 INFO L226 Difference]: Without dead ends: 86 [2022-04-28 01:23:09,516 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 37 SyntacticMatches, 2 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 2.7s TimeCoverageRelationStatistics Valid=68, Invalid=312, Unknown=0, NotChecked=0, Total=380 [2022-04-28 01:23:09,517 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 17 mSDsluCounter, 186 mSDsCounter, 0 mSdLazyCounter, 225 mSolverCounterSat, 5 mSolverCounterUnsat, 4 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 13.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 214 SdHoareTripleChecker+Invalid, 234 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 225 IncrementalHoareTripleChecker+Invalid, 4 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 13.2s IncrementalHoareTripleChecker+Time [2022-04-28 01:23:09,518 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [19 Valid, 214 Invalid, 234 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 225 Invalid, 4 Unknown, 0 Unchecked, 13.2s Time] [2022-04-28 01:23:09,518 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-28 01:23:09,538 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 79. [2022-04-28 01:23:09,539 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:23:09,539 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 79 states, 56 states have (on average 1.125) internal successors, (63), 59 states have internal predecessors, (63), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:23:09,539 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 79 states, 56 states have (on average 1.125) internal successors, (63), 59 states have internal predecessors, (63), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:23:09,539 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 79 states, 56 states have (on average 1.125) internal successors, (63), 59 states have internal predecessors, (63), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:23:09,541 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:23:09,541 INFO L93 Difference]: Finished difference Result 86 states and 99 transitions. [2022-04-28 01:23:09,541 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 99 transitions. [2022-04-28 01:23:09,542 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:23:09,542 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:23:09,542 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 56 states have (on average 1.125) internal successors, (63), 59 states have internal predecessors, (63), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 86 states. [2022-04-28 01:23:09,542 INFO L87 Difference]: Start difference. First operand has 79 states, 56 states have (on average 1.125) internal successors, (63), 59 states have internal predecessors, (63), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 86 states. [2022-04-28 01:23:09,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:23:09,544 INFO L93 Difference]: Finished difference Result 86 states and 99 transitions. [2022-04-28 01:23:09,544 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 99 transitions. [2022-04-28 01:23:09,544 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:23:09,544 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:23:09,544 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:23:09,544 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:23:09,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 56 states have (on average 1.125) internal successors, (63), 59 states have internal predecessors, (63), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:23:09,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 90 transitions. [2022-04-28 01:23:09,546 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 90 transitions. Word has length 46 [2022-04-28 01:23:09,546 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:23:09,546 INFO L495 AbstractCegarLoop]: Abstraction has 79 states and 90 transitions. [2022-04-28 01:23:09,546 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 01:23:09,546 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 90 transitions. [2022-04-28 01:23:09,547 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 01:23:09,547 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:23:09,547 INFO L195 NwaCegarLoop]: 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-28 01:23:09,564 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-28 01:23:09,763 WARN L477 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-28 01:23:09,764 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:23:09,764 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:23:09,764 INFO L85 PathProgramCache]: Analyzing trace with hash -172555565, now seen corresponding path program 2 times [2022-04-28 01:23:09,764 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:23:09,764 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [543534984] [2022-04-28 01:23:09,764 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:23:09,764 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:23:09,783 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:23:09,784 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [961186980] [2022-04-28 01:23:09,784 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 01:23:09,784 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:23:09,784 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:23:09,787 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-28 01:23:09,788 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-28 01:23:09,856 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 01:23:09,856 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 01:23:09,858 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-28 01:23:09,873 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:23:09,875 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:26:37,937 INFO L272 TraceCheckUtils]: 0: Hoare triple {2954#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:26:37,937 INFO L290 TraceCheckUtils]: 1: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:26:37,937 INFO L290 TraceCheckUtils]: 2: Hoare triple {2954#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2954#true} {2954#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L272 TraceCheckUtils]: 4: Hoare triple {2954#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L290 TraceCheckUtils]: 5: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L272 TraceCheckUtils]: 6: Hoare triple {2954#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L290 TraceCheckUtils]: 7: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L290 TraceCheckUtils]: 8: Hoare triple {2954#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[] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L290 TraceCheckUtils]: 9: Hoare triple {2954#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2954#true} {2954#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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L290 TraceCheckUtils]: 11: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L272 TraceCheckUtils]: 12: Hoare triple {2954#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L290 TraceCheckUtils]: 13: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L290 TraceCheckUtils]: 14: Hoare triple {2954#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[] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L290 TraceCheckUtils]: 15: Hoare triple {2954#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2954#true} {2954#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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2954#true} is VALID [2022-04-28 01:26:37,938 INFO L272 TraceCheckUtils]: 17: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:26:37,939 INFO L290 TraceCheckUtils]: 18: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:26:37,939 INFO L290 TraceCheckUtils]: 19: Hoare triple {2954#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[] {2954#true} is VALID [2022-04-28 01:26:37,939 INFO L290 TraceCheckUtils]: 20: Hoare triple {2954#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:26:37,939 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2954#true} {2954#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] {2954#true} is VALID [2022-04-28 01:26:37,939 INFO L290 TraceCheckUtils]: 22: Hoare triple {2954#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] {3025#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:26:37,939 INFO L290 TraceCheckUtils]: 23: Hoare triple {3025#(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[] {3025#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:26:37,940 INFO L272 TraceCheckUtils]: 24: Hoare triple {3025#(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] {2954#true} is VALID [2022-04-28 01:26:37,940 INFO L290 TraceCheckUtils]: 25: Hoare triple {2954#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] {3035#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:26:37,940 INFO L290 TraceCheckUtils]: 26: Hoare triple {3035#(= |__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[] {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:26:37,941 INFO L290 TraceCheckUtils]: 27: Hoare triple {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:26:37,941 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} {3025#(and (= main_~z~0 0) (= main_~b~0 main_~y~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] {3025#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:26:37,942 INFO L290 TraceCheckUtils]: 29: Hoare triple {3025#(and (= main_~z~0 0) (= main_~b~0 main_~y~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[] {3049#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:26:37,943 INFO L290 TraceCheckUtils]: 30: Hoare triple {3049#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~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] {3053#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-28 01:26:37,944 INFO L290 TraceCheckUtils]: 31: Hoare triple {3053#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= 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] {3057#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:26:37,945 INFO L290 TraceCheckUtils]: 32: Hoare triple {3057#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~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[] {3057#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:26:37,945 INFO L272 TraceCheckUtils]: 33: Hoare triple {3057#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~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] {2954#true} is VALID [2022-04-28 01:26:37,945 INFO L290 TraceCheckUtils]: 34: Hoare triple {2954#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] {3035#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:26:37,946 INFO L290 TraceCheckUtils]: 35: Hoare triple {3035#(= |__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[] {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:26:37,946 INFO L290 TraceCheckUtils]: 36: Hoare triple {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:26:37,947 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} {3057#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) 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] {3076#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:26:37,947 INFO L290 TraceCheckUtils]: 38: Hoare triple {3076#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) 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[] {3080#(and (not (= main_~y~0 0)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:26:37,949 INFO L290 TraceCheckUtils]: 39: Hoare triple {3080#(and (not (= main_~y~0 0)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~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] {3084#(and (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ main_~x~0 (* 2 (* (div (+ (- 1) main_~b~0) 2) main_~x~0)))) (= (div (+ (- 1) main_~b~0) 2) (+ main_~y~0 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:26:38,099 INFO L290 TraceCheckUtils]: 40: Hoare triple {3084#(and (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ main_~x~0 (* 2 (* (div (+ (- 1) main_~b~0) 2) main_~x~0)))) (= (div (+ (- 1) main_~b~0) 2) (+ main_~y~0 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~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] {3088#(and (<= 1 (mod main_~b~0 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (- main_~x~0) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))))) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))) (+ (div (- main_~x~0) (- 2)) (* main_~b~0 main_~a~0))))} is VALID [2022-04-28 01:26:38,100 INFO L290 TraceCheckUtils]: 41: Hoare triple {3088#(and (<= 1 (mod main_~b~0 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (- main_~x~0) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))))) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))) (+ (div (- main_~x~0) (- 2)) (* main_~b~0 main_~a~0))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3088#(and (<= 1 (mod main_~b~0 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (- main_~x~0) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))))) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))) (+ (div (- main_~x~0) (- 2)) (* main_~b~0 main_~a~0))))} is VALID [2022-04-28 01:26:38,100 INFO L272 TraceCheckUtils]: 42: Hoare triple {3088#(and (<= 1 (mod main_~b~0 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (- main_~x~0) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))))) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))) (+ (div (- main_~x~0) (- 2)) (* 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] {2954#true} is VALID [2022-04-28 01:26:38,100 INFO L290 TraceCheckUtils]: 43: Hoare triple {2954#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] {3035#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:26:38,100 INFO L290 TraceCheckUtils]: 44: Hoare triple {3035#(= |__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[] {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:26:38,101 INFO L290 TraceCheckUtils]: 45: Hoare triple {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:26:38,101 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} {3088#(and (<= 1 (mod main_~b~0 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (- main_~x~0) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))))) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))) (+ (div (- main_~x~0) (- 2)) (* main_~b~0 main_~a~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] {3088#(and (<= 1 (mod main_~b~0 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (- main_~x~0) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))))) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))) (+ (div (- main_~x~0) (- 2)) (* main_~b~0 main_~a~0))))} is VALID [2022-04-28 01:26:38,102 INFO L290 TraceCheckUtils]: 47: Hoare triple {3088#(and (<= 1 (mod main_~b~0 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (- main_~x~0) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))))) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))) (+ (div (- main_~x~0) (- 2)) (* main_~b~0 main_~a~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[] {3088#(and (<= 1 (mod main_~b~0 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (- main_~x~0) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))))) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))) (+ (div (- main_~x~0) (- 2)) (* main_~b~0 main_~a~0))))} is VALID [2022-04-28 01:26:38,104 INFO L290 TraceCheckUtils]: 48: Hoare triple {3088#(and (<= 1 (mod main_~b~0 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (- main_~x~0) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))))) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (- main_~x~0) (- 2)))) (+ (div (- main_~x~0) (- 2)) (* main_~b~0 main_~a~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[] {3113#(and (<= 1 (mod main_~b~0 2)) (not (= (mod main_~y~0 2) 1)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (= (+ (div (* (- 1) main_~x~0) (- 2)) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (* (- 1) main_~x~0) (- 2)) (div (+ (- 1) main_~b~0) 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (* (- 1) main_~x~0) (- 2)) (* 2 (* (div (* (- 1) main_~x~0) (- 2)) (div (+ (- 1) main_~b~0) 2))))) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 01:26:39,102 INFO L290 TraceCheckUtils]: 49: Hoare triple {3113#(and (<= 1 (mod main_~b~0 2)) (not (= (mod main_~y~0 2) 1)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (= (+ (div (* (- 1) main_~x~0) (- 2)) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (* (- 1) main_~x~0) (- 2)) (div (+ (- 1) main_~b~0) 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (* (- 1) main_~x~0) (- 2)) (* 2 (* (div (* (- 1) main_~x~0) (- 2)) (div (+ (- 1) main_~b~0) 2))))) (= (mod main_~x~0 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] {3117#(and (= (+ (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2))))) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)))))) (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (= (mod (div (- main_~x~0) (- 2)) 2) 0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 01:26:39,102 INFO L290 TraceCheckUtils]: 50: Hoare triple {3117#(and (= (+ (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2))))) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)))))) (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (= (mod (div (- main_~x~0) (- 2)) 2) 0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3117#(and (= (+ (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2))))) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)))))) (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (= (mod (div (- main_~x~0) (- 2)) 2) 0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 01:26:41,106 WARN L272 TraceCheckUtils]: 51: Hoare triple {3117#(and (= (+ (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2))))) (= (* 2 (* main_~b~0 main_~a~0)) (+ (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)) (* 2 (* (div (+ (- 1) main_~b~0) 2) (div (* (- 1) (div (- main_~x~0) (- 2))) (- 2)))))) (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (= (mod (div (- main_~x~0) (- 2)) 2) 0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 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] {3124#(<= 1 |__VERIFIER_assert_#in~cond|)} is UNKNOWN [2022-04-28 01:26:41,106 INFO L290 TraceCheckUtils]: 52: Hoare triple {3124#(<= 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] {3128#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:26:41,107 INFO L290 TraceCheckUtils]: 53: Hoare triple {3128#(<= 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[] {2955#false} is VALID [2022-04-28 01:26:41,107 INFO L290 TraceCheckUtils]: 54: Hoare triple {2955#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2955#false} is VALID [2022-04-28 01:26:41,107 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 3 proven. 24 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 01:26:41,107 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:28:57,549 INFO L290 TraceCheckUtils]: 54: Hoare triple {2955#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2955#false} is VALID [2022-04-28 01:28:57,550 INFO L290 TraceCheckUtils]: 53: Hoare triple {3128#(<= 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[] {2955#false} is VALID [2022-04-28 01:28:57,550 INFO L290 TraceCheckUtils]: 52: Hoare triple {3124#(<= 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] {3128#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:28:57,551 INFO L272 TraceCheckUtils]: 51: Hoare triple {3144#(= (+ 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] {3124#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:28:57,551 INFO L290 TraceCheckUtils]: 50: Hoare triple {3144#(= (+ 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[] {3144#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:28:57,556 INFO L290 TraceCheckUtils]: 49: Hoare triple {3151#(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] {3144#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:28:57,557 INFO L290 TraceCheckUtils]: 48: Hoare triple {3155#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [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[] {3151#(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-28 01:28:57,558 INFO L290 TraceCheckUtils]: 47: Hoare triple {3155#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] 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[] {3155#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 01:28:57,560 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} {3162#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~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)))} [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] {3155#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 01:28:57,560 INFO L290 TraceCheckUtils]: 45: Hoare triple {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:28:57,561 INFO L290 TraceCheckUtils]: 44: Hoare triple {3172#(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[] {3039#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:28:57,561 INFO L290 TraceCheckUtils]: 43: Hoare triple {2954#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] {3172#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 01:28:57,561 INFO L272 TraceCheckUtils]: 42: Hoare triple {3162#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~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)))} [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] {2954#true} is VALID [2022-04-28 01:28:57,561 INFO L290 TraceCheckUtils]: 41: Hoare triple {3162#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~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)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3162#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~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)))} is VALID [2022-04-28 01:28:58,752 INFO L290 TraceCheckUtils]: 40: Hoare triple {3182#(forall ((aux_div_aux_mod_v_main_~y~0_38_22_69 Int)) (or (and (or (not (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0))) (< (div main_~y~0 2) (* 2 aux_div_aux_mod_v_main_~y~0_38_22_69)) (not (= (mod main_~y~0 2) 0)) (<= 0 (div main_~y~0 2)) (<= (+ 2 (* 2 aux_div_aux_mod_v_main_~y~0_38_22_69)) (div main_~y~0 2)) (<= (div (- (div main_~y~0 2)) (- 2)) (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))) (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (not (= (* main_~b~0 main_~a~0) (+ (* main_~x~0 2) (* 2 (* (div main_~y~0 2) main_~x~0)) main_~z~0))) (<= (div (+ (- 1) (* (- 1) (div main_~y~0 2))) (- 2)) (+ (div (+ (- 1) (div main_~y~0 2)) 2) 1)) (<= (+ (* 2 aux_div_aux_mod_v_main_~y~0_38_22_69) 1) (div main_~y~0 2)) (< (+ (div main_~y~0 2) 1) (* 2 aux_div_aux_mod_v_main_~y~0_38_22_69)))) (= (+ main_~z~0 (* main_~x~0 4) (* (* main_~x~0 aux_div_aux_mod_v_main_~y~0_38_22_69) 4)) (* main_~b~0 main_~a~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] {3162#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~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)))} is VALID [2022-04-28 01:28:58,754 INFO L290 TraceCheckUtils]: 39: Hoare triple {2954#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] {3182#(forall ((aux_div_aux_mod_v_main_~y~0_38_22_69 Int)) (or (and (or (not (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0))) (< (div main_~y~0 2) (* 2 aux_div_aux_mod_v_main_~y~0_38_22_69)) (not (= (mod main_~y~0 2) 0)) (<= 0 (div main_~y~0 2)) (<= (+ 2 (* 2 aux_div_aux_mod_v_main_~y~0_38_22_69)) (div main_~y~0 2)) (<= (div (- (div main_~y~0 2)) (- 2)) (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))) (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (not (= (* main_~b~0 main_~a~0) (+ (* main_~x~0 2) (* 2 (* (div main_~y~0 2) main_~x~0)) main_~z~0))) (<= (div (+ (- 1) (* (- 1) (div main_~y~0 2))) (- 2)) (+ (div (+ (- 1) (div main_~y~0 2)) 2) 1)) (<= (+ (* 2 aux_div_aux_mod_v_main_~y~0_38_22_69) 1) (div main_~y~0 2)) (< (+ (div main_~y~0 2) 1) (* 2 aux_div_aux_mod_v_main_~y~0_38_22_69)))) (= (+ main_~z~0 (* main_~x~0 4) (* (* main_~x~0 aux_div_aux_mod_v_main_~y~0_38_22_69) 4)) (* main_~b~0 main_~a~0))))} is VALID [2022-04-28 01:28:58,754 INFO L290 TraceCheckUtils]: 38: Hoare triple {2954#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[] {2954#true} is VALID [2022-04-28 01:28:58,754 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2954#true} {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,754 INFO L290 TraceCheckUtils]: 36: Hoare triple {2954#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,754 INFO L290 TraceCheckUtils]: 35: Hoare triple {2954#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[] {2954#true} is VALID [2022-04-28 01:28:58,754 INFO L290 TraceCheckUtils]: 34: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,754 INFO L272 TraceCheckUtils]: 33: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,754 INFO L290 TraceCheckUtils]: 32: Hoare triple {2954#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,754 INFO L290 TraceCheckUtils]: 31: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,754 INFO L290 TraceCheckUtils]: 30: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,754 INFO L290 TraceCheckUtils]: 29: Hoare triple {2954#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[] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2954#true} {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 27: Hoare triple {2954#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 26: Hoare triple {2954#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[] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 25: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L272 TraceCheckUtils]: 24: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 23: Hoare triple {2954#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 22: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2954#true} {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 20: Hoare triple {2954#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 19: Hoare triple {2954#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[] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 18: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L272 TraceCheckUtils]: 17: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2954#true} {2954#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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 15: Hoare triple {2954#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 14: Hoare triple {2954#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[] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L290 TraceCheckUtils]: 13: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,755 INFO L272 TraceCheckUtils]: 12: Hoare triple {2954#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L290 TraceCheckUtils]: 11: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2954#true} {2954#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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {2954#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L290 TraceCheckUtils]: 8: Hoare triple {2954#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[] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L290 TraceCheckUtils]: 7: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L272 TraceCheckUtils]: 6: Hoare triple {2954#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L290 TraceCheckUtils]: 5: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L272 TraceCheckUtils]: 4: Hoare triple {2954#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2954#true} {2954#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L290 TraceCheckUtils]: 2: Hoare triple {2954#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L290 TraceCheckUtils]: 1: Hoare triple {2954#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] {2954#true} is VALID [2022-04-28 01:28:58,756 INFO L272 TraceCheckUtils]: 0: Hoare triple {2954#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2954#true} is VALID [2022-04-28 01:28:58,757 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 25 proven. 4 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-28 01:28:58,757 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:28:58,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [543534984] [2022-04-28 01:28:58,757 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:28:58,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [961186980] [2022-04-28 01:28:58,757 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [961186980] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:28:58,757 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:28:58,757 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 11] total 22 [2022-04-28 01:28:58,757 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1005756371] [2022-04-28 01:28:58,757 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:28:58,758 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 7 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 55 [2022-04-28 01:28:58,758 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:28:58,758 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 7 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-28 01:29:01,236 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 64 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 01:29:01,236 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-28 01:29:01,236 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:29:01,237 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-28 01:29:01,237 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=371, Unknown=5, NotChecked=0, Total=462 [2022-04-28 01:29:01,237 INFO L87 Difference]: Start difference. First operand 79 states and 90 transitions. Second operand has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 7 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-28 01:29:04,392 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-28 01:29:23,764 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.53s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:29:25,766 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-28 01:29:26,850 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.08s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:29:28,682 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.39s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:29:30,684 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-28 01:29:32,689 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-28 01:29:46,778 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-28 01:29:49,969 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-28 01:29:53,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:29:53,861 INFO L93 Difference]: Finished difference Result 107 states and 123 transitions. [2022-04-28 01:29:53,861 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 01:29:53,861 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 7 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 55 [2022-04-28 01:29:53,862 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:29:53,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 7 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-28 01:29:53,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 75 transitions. [2022-04-28 01:29:53,863 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 7 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-28 01:29:53,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 75 transitions. [2022-04-28 01:29:53,864 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 75 transitions. [2022-04-28 01:30:00,962 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 74 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 01:30:00,964 INFO L225 Difference]: With dead ends: 107 [2022-04-28 01:30:00,964 INFO L226 Difference]: Without dead ends: 105 [2022-04-28 01:30:00,964 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 87 SyntacticMatches, 5 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 188 ImplicationChecksByTransitivity, 39.0s TimeCoverageRelationStatistics Valid=172, Invalid=752, Unknown=6, NotChecked=0, Total=930 [2022-04-28 01:30:00,965 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 43 mSDsluCounter, 190 mSDsCounter, 0 mSdLazyCounter, 349 mSolverCounterSat, 32 mSolverCounterUnsat, 6 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 21.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 217 SdHoareTripleChecker+Invalid, 421 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 349 IncrementalHoareTripleChecker+Invalid, 6 IncrementalHoareTripleChecker+Unknown, 34 IncrementalHoareTripleChecker+Unchecked, 21.0s IncrementalHoareTripleChecker+Time [2022-04-28 01:30:00,965 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [44 Valid, 217 Invalid, 421 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 349 Invalid, 6 Unknown, 34 Unchecked, 21.0s Time] [2022-04-28 01:30:00,965 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 105 states. [2022-04-28 01:30:00,994 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 105 to 81. [2022-04-28 01:30:00,994 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:30:00,995 INFO L82 GeneralOperation]: Start isEquivalent. First operand 105 states. Second operand has 81 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:30:00,995 INFO L74 IsIncluded]: Start isIncluded. First operand 105 states. Second operand has 81 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:30:00,995 INFO L87 Difference]: Start difference. First operand 105 states. Second operand has 81 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:30:00,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:30:00,997 INFO L93 Difference]: Finished difference Result 105 states and 121 transitions. [2022-04-28 01:30:00,997 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 121 transitions. [2022-04-28 01:30:00,998 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:30:00,998 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:30:00,998 INFO L74 IsIncluded]: Start isIncluded. First operand has 81 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) Second operand 105 states. [2022-04-28 01:30:00,998 INFO L87 Difference]: Start difference. First operand has 81 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) Second operand 105 states. [2022-04-28 01:30:01,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:30:01,000 INFO L93 Difference]: Finished difference Result 105 states and 121 transitions. [2022-04-28 01:30:01,000 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 121 transitions. [2022-04-28 01:30:01,001 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:30:01,001 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:30:01,001 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:30:01,001 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:30:01,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 81 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:30:01,002 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 93 transitions. [2022-04-28 01:30:01,002 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 93 transitions. Word has length 55 [2022-04-28 01:30:01,003 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:30:01,003 INFO L495 AbstractCegarLoop]: Abstraction has 81 states and 93 transitions. [2022-04-28 01:30:01,003 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 7 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-28 01:30:01,003 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 93 transitions. [2022-04-28 01:30:01,003 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-28 01:30:01,003 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:30:01,003 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 5, 4, 4, 4, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:30:01,020 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-28 01:30:01,212 WARN L477 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-28 01:30:01,212 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:30:01,212 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:30:01,212 INFO L85 PathProgramCache]: Analyzing trace with hash 2101955993, now seen corresponding path program 3 times [2022-04-28 01:30:01,212 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:30:01,213 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1803689956] [2022-04-28 01:30:01,213 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:30:01,213 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:30:01,225 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:30:01,226 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1272028206] [2022-04-28 01:30:01,226 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-28 01:30:01,226 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:30:01,226 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:30:01,235 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 01:30:01,236 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 01:30:01,299 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2022-04-28 01:30:01,299 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 01:30:01,300 INFO L263 TraceCheckSpWp]: Trace formula consists of 159 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-28 01:30:01,319 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:30:01,321 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:30:30,956 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 01:30:38,467 INFO L272 TraceCheckUtils]: 0: Hoare triple {3798#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:30:38,467 INFO L290 TraceCheckUtils]: 1: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:30:38,467 INFO L290 TraceCheckUtils]: 2: Hoare triple {3798#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:30:38,467 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3798#true} {3798#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:30:38,467 INFO L272 TraceCheckUtils]: 4: Hoare triple {3798#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:30:38,467 INFO L290 TraceCheckUtils]: 5: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:30:38,467 INFO L272 TraceCheckUtils]: 6: Hoare triple {3798#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {3798#true} is VALID [2022-04-28 01:30:38,467 INFO L290 TraceCheckUtils]: 7: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:30:38,467 INFO L290 TraceCheckUtils]: 8: Hoare triple {3798#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[] {3798#true} is VALID [2022-04-28 01:30:38,467 INFO L290 TraceCheckUtils]: 9: Hoare triple {3798#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:30:38,468 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3798#true} {3798#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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {3798#true} is VALID [2022-04-28 01:30:38,468 INFO L290 TraceCheckUtils]: 11: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:30:38,468 INFO L272 TraceCheckUtils]: 12: Hoare triple {3798#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3798#true} is VALID [2022-04-28 01:30:38,471 INFO L290 TraceCheckUtils]: 13: Hoare triple {3798#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] {3842#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 01:30:38,472 INFO L290 TraceCheckUtils]: 14: Hoare triple {3842#(= 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[] {3846#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:30:38,472 INFO L290 TraceCheckUtils]: 15: Hoare triple {3846#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3846#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:30:38,473 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3846#(not (= |assume_abort_if_not_#in~cond| 0))} {3798#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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3853#(and (<= main_~b~0 20) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,473 INFO L272 TraceCheckUtils]: 17: Hoare triple {3853#(and (<= main_~b~0 20) (<= 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] {3798#true} is VALID [2022-04-28 01:30:38,473 INFO L290 TraceCheckUtils]: 18: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:30:38,473 INFO L290 TraceCheckUtils]: 19: Hoare triple {3798#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[] {3798#true} is VALID [2022-04-28 01:30:38,473 INFO L290 TraceCheckUtils]: 20: Hoare triple {3798#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:30:38,473 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3798#true} {3853#(and (<= main_~b~0 20) (<= 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] {3853#(and (<= main_~b~0 20) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,474 INFO L290 TraceCheckUtils]: 22: Hoare triple {3853#(and (<= main_~b~0 20) (<= 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] {3872#(and (<= main_~b~0 20) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,474 INFO L290 TraceCheckUtils]: 23: Hoare triple {3872#(and (<= main_~b~0 20) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3872#(and (<= main_~b~0 20) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,474 INFO L272 TraceCheckUtils]: 24: Hoare triple {3872#(and (<= main_~b~0 20) (= main_~b~0 main_~y~0) (<= 0 main_~b~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] {3798#true} is VALID [2022-04-28 01:30:38,474 INFO L290 TraceCheckUtils]: 25: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:30:38,474 INFO L290 TraceCheckUtils]: 26: Hoare triple {3798#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[] {3798#true} is VALID [2022-04-28 01:30:38,474 INFO L290 TraceCheckUtils]: 27: Hoare triple {3798#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:30:38,475 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3798#true} {3872#(and (<= main_~b~0 20) (= main_~b~0 main_~y~0) (<= 0 main_~b~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] {3872#(and (<= main_~b~0 20) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,475 INFO L290 TraceCheckUtils]: 29: Hoare triple {3872#(and (<= main_~b~0 20) (= main_~b~0 main_~y~0) (<= 0 main_~b~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[] {3894#(and (not (= main_~y~0 0)) (<= main_~b~0 20) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,476 INFO L290 TraceCheckUtils]: 30: Hoare triple {3894#(and (not (= main_~y~0 0)) (<= main_~b~0 20) (= main_~b~0 main_~y~0) (<= 0 main_~b~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] {3898#(and (<= main_~b~0 20) (<= main_~b~0 (+ main_~y~0 1)) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,477 INFO L290 TraceCheckUtils]: 31: Hoare triple {3898#(and (<= main_~b~0 20) (<= main_~b~0 (+ main_~y~0 1)) (not (= main_~b~0 0)) (<= 0 main_~b~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] {3902#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:30:38,477 INFO L290 TraceCheckUtils]: 32: Hoare triple {3902#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3902#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:30:38,477 INFO L272 TraceCheckUtils]: 33: Hoare triple {3902#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ 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] {3798#true} is VALID [2022-04-28 01:30:38,477 INFO L290 TraceCheckUtils]: 34: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:30:38,477 INFO L290 TraceCheckUtils]: 35: Hoare triple {3798#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[] {3798#true} is VALID [2022-04-28 01:30:38,477 INFO L290 TraceCheckUtils]: 36: Hoare triple {3798#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:30:38,478 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3798#true} {3902#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ 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] {3902#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:30:38,478 INFO L290 TraceCheckUtils]: 38: Hoare triple {3902#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ 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[] {3924#(and (not (= main_~y~0 0)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:30:38,479 INFO L290 TraceCheckUtils]: 39: Hoare triple {3924#(and (not (= main_~y~0 0)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 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[] {3928#(and (not (= main_~y~0 0)) (not (= (mod main_~y~0 2) 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:30:38,486 INFO L290 TraceCheckUtils]: 40: Hoare triple {3928#(and (not (= main_~y~0 0)) (not (= (mod main_~y~0 2) 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ 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] {3932#(and (exists ((aux_div_v_main_~y~0_46_22 Int) (aux_mod_v_main_~y~0_46_22 Int)) (and (<= 0 aux_mod_v_main_~y~0_46_22) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ (* aux_div_v_main_~y~0_46_22 2) aux_mod_v_main_~y~0_46_22 1)) (< aux_mod_v_main_~y~0_46_22 2) (<= (div (+ (* aux_div_v_main_~y~0_46_22 2) aux_mod_v_main_~y~0_46_22) 2) main_~y~0) (not (= aux_mod_v_main_~y~0_46_22 1)) (not (= (+ (* aux_div_v_main_~y~0_46_22 2) aux_mod_v_main_~y~0_46_22) 0)))) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,488 INFO L290 TraceCheckUtils]: 41: Hoare triple {3932#(and (exists ((aux_div_v_main_~y~0_46_22 Int) (aux_mod_v_main_~y~0_46_22 Int)) (and (<= 0 aux_mod_v_main_~y~0_46_22) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ (* aux_div_v_main_~y~0_46_22 2) aux_mod_v_main_~y~0_46_22 1)) (< aux_mod_v_main_~y~0_46_22 2) (<= (div (+ (* aux_div_v_main_~y~0_46_22 2) aux_mod_v_main_~y~0_46_22) 2) main_~y~0) (not (= aux_mod_v_main_~y~0_46_22 1)) (not (= (+ (* aux_div_v_main_~y~0_46_22 2) aux_mod_v_main_~y~0_46_22) 0)))) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3936#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (< 0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,488 INFO L272 TraceCheckUtils]: 42: Hoare triple {3936#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (< 0 main_~y~0) (<= 0 main_~b~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] {3798#true} is VALID [2022-04-28 01:30:38,488 INFO L290 TraceCheckUtils]: 43: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:30:38,488 INFO L290 TraceCheckUtils]: 44: Hoare triple {3798#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[] {3798#true} is VALID [2022-04-28 01:30:38,488 INFO L290 TraceCheckUtils]: 45: Hoare triple {3798#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:30:38,488 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3798#true} {3936#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (< 0 main_~y~0) (<= 0 main_~b~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] {3936#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (< 0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,489 INFO L290 TraceCheckUtils]: 47: Hoare triple {3936#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (< 0 main_~y~0) (<= 0 main_~b~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[] {3936#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (< 0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,489 INFO L290 TraceCheckUtils]: 48: Hoare triple {3936#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (< 0 main_~y~0) (<= 0 main_~b~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[] {3936#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (< 0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-28 01:30:38,490 INFO L290 TraceCheckUtils]: 49: Hoare triple {3936#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (< 0 main_~y~0) (<= 0 main_~b~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] {3961#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:30:38,491 INFO L290 TraceCheckUtils]: 50: Hoare triple {3961#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ main_~y~0 1)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3961#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:30:38,491 INFO L272 TraceCheckUtils]: 51: Hoare triple {3961#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ 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] {3798#true} is VALID [2022-04-28 01:30:38,491 INFO L290 TraceCheckUtils]: 52: Hoare triple {3798#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] {3971#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:30:38,492 INFO L290 TraceCheckUtils]: 53: Hoare triple {3971#(= |__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[] {3975#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:30:38,492 INFO L290 TraceCheckUtils]: 54: Hoare triple {3975#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3975#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:30:38,492 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3975#(not (= |__VERIFIER_assert_#in~cond| 0))} {3961#(and (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ 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] {3982#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:30:38,493 INFO L290 TraceCheckUtils]: 56: Hoare triple {3982#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ 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[] {3982#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:30:38,494 INFO L290 TraceCheckUtils]: 57: Hoare triple {3982#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ main_~y~0 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[] {3989#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:30:39,051 INFO L290 TraceCheckUtils]: 58: Hoare triple {3989#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ 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] {3993#(and (exists ((aux_div_v_main_~y~0_48_22 Int) (aux_mod_v_main_~y~0_48_22 Int)) (and (not (= aux_mod_v_main_~y~0_48_22 1)) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ (* aux_div_v_main_~y~0_48_22 2) aux_mod_v_main_~y~0_48_22 1)) (< aux_mod_v_main_~y~0_48_22 2) (= (+ main_~z~0 (* (div (- main_~x~0) (- 2)) (+ (* aux_div_v_main_~y~0_48_22 2) aux_mod_v_main_~y~0_48_22))) (* main_~b~0 main_~a~0)) (= main_~y~0 (div (+ (* aux_div_v_main_~y~0_48_22 2) aux_mod_v_main_~y~0_48_22) 2)) (<= 0 aux_mod_v_main_~y~0_48_22))) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 01:30:39,317 INFO L290 TraceCheckUtils]: 59: Hoare triple {3993#(and (exists ((aux_div_v_main_~y~0_48_22 Int) (aux_mod_v_main_~y~0_48_22 Int)) (and (not (= aux_mod_v_main_~y~0_48_22 1)) (< (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2)) (+ (* aux_div_v_main_~y~0_48_22 2) aux_mod_v_main_~y~0_48_22 1)) (< aux_mod_v_main_~y~0_48_22 2) (= (+ main_~z~0 (* (div (- main_~x~0) (- 2)) (+ (* aux_div_v_main_~y~0_48_22 2) aux_mod_v_main_~y~0_48_22))) (* main_~b~0 main_~a~0)) (= main_~y~0 (div (+ (* aux_div_v_main_~y~0_48_22 2) aux_mod_v_main_~y~0_48_22) 2)) (<= 0 aux_mod_v_main_~y~0_48_22))) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3997#(and (< (div (* (- 1) (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2))) (- 2)) (+ main_~y~0 1)) (= (+ main_~z~0 (* 2 (* (div (* (- 1) main_~x~0) (- 2)) main_~y~0))) (* main_~b~0 main_~a~0)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 01:30:40,309 INFO L272 TraceCheckUtils]: 60: Hoare triple {3997#(and (< (div (* (- 1) (div (+ (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) 1) (- 2))) (- 2)) (+ main_~y~0 1)) (= (+ main_~z~0 (* 2 (* (div (* (- 1) main_~x~0) (- 2)) main_~y~0))) (* main_~b~0 main_~a~0)) (<= main_~b~0 20) (not (= main_~b~0 0)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 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] {4001#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:30:40,310 INFO L290 TraceCheckUtils]: 61: Hoare triple {4001#(<= 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] {4005#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:30:40,310 INFO L290 TraceCheckUtils]: 62: Hoare triple {4005#(<= 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[] {3799#false} is VALID [2022-04-28 01:30:40,310 INFO L290 TraceCheckUtils]: 63: Hoare triple {3799#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3799#false} is VALID [2022-04-28 01:30:40,311 INFO L134 CoverageAnalysis]: Checked inductivity of 82 backedges. 19 proven. 42 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-04-28 01:30:40,311 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:31:07,480 INFO L290 TraceCheckUtils]: 63: Hoare triple {3799#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3799#false} is VALID [2022-04-28 01:31:07,481 INFO L290 TraceCheckUtils]: 62: Hoare triple {4005#(<= 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[] {3799#false} is VALID [2022-04-28 01:31:07,481 INFO L290 TraceCheckUtils]: 61: Hoare triple {4001#(<= 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] {4005#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:31:07,482 INFO L272 TraceCheckUtils]: 60: Hoare triple {4021#(= (+ 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] {4001#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:31:07,482 INFO L290 TraceCheckUtils]: 59: Hoare triple {4021#(= (+ 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[] {4021#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:31:07,487 INFO L290 TraceCheckUtils]: 58: Hoare triple {4028#(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] {4021#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:31:07,488 INFO L290 TraceCheckUtils]: 57: Hoare triple {4032#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [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[] {4028#(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-28 01:31:07,488 INFO L290 TraceCheckUtils]: 56: Hoare triple {4032#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] 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[] {4032#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 01:31:07,491 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3975#(not (= |__VERIFIER_assert_#in~cond| 0))} {4039#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 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] {4032#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 01:31:07,491 INFO L290 TraceCheckUtils]: 54: Hoare triple {3975#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3975#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:31:07,492 INFO L290 TraceCheckUtils]: 53: Hoare triple {4049#(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[] {3975#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:31:07,492 INFO L290 TraceCheckUtils]: 52: Hoare triple {3798#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] {4049#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 01:31:07,492 INFO L272 TraceCheckUtils]: 51: Hoare triple {4039#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 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] {3798#true} is VALID [2022-04-28 01:31:07,492 INFO L290 TraceCheckUtils]: 50: Hoare triple {4039#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4039#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} is VALID [2022-04-28 01:31:07,494 INFO L290 TraceCheckUtils]: 49: Hoare triple {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (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] {4039#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} is VALID [2022-04-28 01:31:07,494 INFO L290 TraceCheckUtils]: 48: Hoare triple {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (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[] {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-28 01:31:07,494 INFO L290 TraceCheckUtils]: 47: Hoare triple {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (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[] {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-28 01:31:07,495 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3798#true} {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (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] {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-28 01:31:07,495 INFO L290 TraceCheckUtils]: 45: Hoare triple {3798#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:31:07,495 INFO L290 TraceCheckUtils]: 44: Hoare triple {3798#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[] {3798#true} is VALID [2022-04-28 01:31:07,495 INFO L290 TraceCheckUtils]: 43: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:31:07,495 INFO L272 TraceCheckUtils]: 42: Hoare triple {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (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] {3798#true} is VALID [2022-04-28 01:31:07,496 INFO L290 TraceCheckUtils]: 41: Hoare triple {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-28 01:31:07,497 INFO L290 TraceCheckUtils]: 40: Hoare triple {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 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] {4059#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-28 01:31:07,498 INFO L290 TraceCheckUtils]: 39: Hoare triple {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 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[] {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-28 01:31:07,498 INFO L290 TraceCheckUtils]: 38: Hoare triple {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 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[] {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-28 01:31:07,499 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3798#true} {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 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] {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-28 01:31:07,499 INFO L290 TraceCheckUtils]: 36: Hoare triple {3798#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:31:07,500 INFO L290 TraceCheckUtils]: 35: Hoare triple {3798#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[] {3798#true} is VALID [2022-04-28 01:31:07,500 INFO L290 TraceCheckUtils]: 34: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:31:07,500 INFO L272 TraceCheckUtils]: 33: Hoare triple {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 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] {3798#true} is VALID [2022-04-28 01:31:07,500 INFO L290 TraceCheckUtils]: 32: Hoare triple {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-28 01:31:07,503 INFO L290 TraceCheckUtils]: 31: Hoare triple {4115#(and (<= 0 (+ 3 (div (+ (- 1) (div (+ (- 3) (div (+ (div main_~y~0 2) (- 10)) 2)) 2)) 2))) (or (<= 0 (+ (div (+ (- 1) (div (+ (div (+ (- 11) (div main_~y~0 2)) 2) (- 3)) 2)) 2) 3)) (not (= (mod main_~y~0 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] {4087#(and (or (<= 0 (+ 2 (div (+ (- 1) (div (+ (div main_~y~0 2) (- 5)) 2)) 2))) (not (= (mod main_~y~0 2) 0))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-28 01:31:07,505 INFO L290 TraceCheckUtils]: 30: Hoare triple {4119#(<= 0 (+ (div (+ (div (+ (div (+ (- 7) (div (+ main_~y~0 (- 24)) 2)) 2) (- 3)) 2) (- 1)) 2) 4))} [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] {4115#(and (<= 0 (+ 3 (div (+ (- 1) (div (+ (- 3) (div (+ (div main_~y~0 2) (- 10)) 2)) 2)) 2))) (or (<= 0 (+ (div (+ (- 1) (div (+ (div (+ (- 11) (div main_~y~0 2)) 2) (- 3)) 2)) 2) 3)) (not (= (mod main_~y~0 2) 0))))} is VALID [2022-04-28 01:31:07,505 INFO L290 TraceCheckUtils]: 29: Hoare triple {4119#(<= 0 (+ (div (+ (div (+ (div (+ (- 7) (div (+ main_~y~0 (- 24)) 2)) 2) (- 3)) 2) (- 1)) 2) 4))} [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[] {4119#(<= 0 (+ (div (+ (div (+ (div (+ (- 7) (div (+ main_~y~0 (- 24)) 2)) 2) (- 3)) 2) (- 1)) 2) 4))} is VALID [2022-04-28 01:31:07,506 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3798#true} {4119#(<= 0 (+ (div (+ (div (+ (div (+ (- 7) (div (+ main_~y~0 (- 24)) 2)) 2) (- 3)) 2) (- 1)) 2) 4))} [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] {4119#(<= 0 (+ (div (+ (div (+ (div (+ (- 7) (div (+ main_~y~0 (- 24)) 2)) 2) (- 3)) 2) (- 1)) 2) 4))} is VALID [2022-04-28 01:31:07,506 INFO L290 TraceCheckUtils]: 27: Hoare triple {3798#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:31:07,506 INFO L290 TraceCheckUtils]: 26: Hoare triple {3798#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[] {3798#true} is VALID [2022-04-28 01:31:07,506 INFO L290 TraceCheckUtils]: 25: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:31:07,506 INFO L272 TraceCheckUtils]: 24: Hoare triple {4119#(<= 0 (+ (div (+ (div (+ (div (+ (- 7) (div (+ main_~y~0 (- 24)) 2)) 2) (- 3)) 2) (- 1)) 2) 4))} [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] {3798#true} is VALID [2022-04-28 01:31:07,506 INFO L290 TraceCheckUtils]: 23: Hoare triple {4119#(<= 0 (+ (div (+ (div (+ (div (+ (- 7) (div (+ main_~y~0 (- 24)) 2)) 2) (- 3)) 2) (- 1)) 2) 4))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4119#(<= 0 (+ (div (+ (div (+ (div (+ (- 7) (div (+ main_~y~0 (- 24)) 2)) 2) (- 3)) 2) (- 1)) 2) 4))} is VALID [2022-04-28 01:31:07,507 INFO L290 TraceCheckUtils]: 22: Hoare triple {4144#(<= 0 (+ 4 (div (+ (div (+ (div (+ (div (+ main_~b~0 (- 24)) 2) (- 7)) 2) (- 3)) 2) (- 1)) 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] {4119#(<= 0 (+ (div (+ (div (+ (div (+ (- 7) (div (+ main_~y~0 (- 24)) 2)) 2) (- 3)) 2) (- 1)) 2) 4))} is VALID [2022-04-28 01:31:07,507 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3798#true} {4144#(<= 0 (+ 4 (div (+ (div (+ (div (+ (div (+ main_~b~0 (- 24)) 2) (- 7)) 2) (- 3)) 2) (- 1)) 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] {4144#(<= 0 (+ 4 (div (+ (div (+ (div (+ (div (+ main_~b~0 (- 24)) 2) (- 7)) 2) (- 3)) 2) (- 1)) 2)))} is VALID [2022-04-28 01:31:07,507 INFO L290 TraceCheckUtils]: 20: Hoare triple {3798#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:31:07,507 INFO L290 TraceCheckUtils]: 19: Hoare triple {3798#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[] {3798#true} is VALID [2022-04-28 01:31:07,507 INFO L290 TraceCheckUtils]: 18: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:31:07,507 INFO L272 TraceCheckUtils]: 17: Hoare triple {4144#(<= 0 (+ 4 (div (+ (div (+ (div (+ (div (+ main_~b~0 (- 24)) 2) (- 7)) 2) (- 3)) 2) (- 1)) 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] {3798#true} is VALID [2022-04-28 01:31:07,508 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3846#(not (= |assume_abort_if_not_#in~cond| 0))} {3798#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 (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {4144#(<= 0 (+ 4 (div (+ (div (+ (div (+ (div (+ main_~b~0 (- 24)) 2) (- 7)) 2) (- 3)) 2) (- 1)) 2)))} is VALID [2022-04-28 01:31:07,509 INFO L290 TraceCheckUtils]: 15: Hoare triple {3846#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3846#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:31:07,509 INFO L290 TraceCheckUtils]: 14: Hoare triple {4172#(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[] {3846#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:31:07,509 INFO L290 TraceCheckUtils]: 13: Hoare triple {3798#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] {4172#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 01:31:07,509 INFO L272 TraceCheckUtils]: 12: Hoare triple {3798#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 20) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3798#true} is VALID [2022-04-28 01:31:07,509 INFO L290 TraceCheckUtils]: 11: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3798#true} {3798#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 (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L290 TraceCheckUtils]: 9: Hoare triple {3798#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L290 TraceCheckUtils]: 8: Hoare triple {3798#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[] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L290 TraceCheckUtils]: 7: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L272 TraceCheckUtils]: 6: Hoare triple {3798#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 20)) 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] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L290 TraceCheckUtils]: 5: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L272 TraceCheckUtils]: 4: Hoare triple {3798#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3798#true} {3798#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L290 TraceCheckUtils]: 2: Hoare triple {3798#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L290 TraceCheckUtils]: 1: Hoare triple {3798#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] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L272 TraceCheckUtils]: 0: Hoare triple {3798#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3798#true} is VALID [2022-04-28 01:31:07,510 INFO L134 CoverageAnalysis]: Checked inductivity of 82 backedges. 34 proven. 27 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-04-28 01:31:07,511 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:31:07,511 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1803689956] [2022-04-28 01:31:07,511 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:31:07,511 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1272028206] [2022-04-28 01:31:07,511 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1272028206] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:31:07,511 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:31:07,511 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 17] total 33 [2022-04-28 01:31:07,511 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [177000164] [2022-04-28 01:31:07,511 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:31:07,511 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 32 states have (on average 1.84375) internal successors, (59), 30 states have internal predecessors, (59), 13 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 11 states have call predecessors, (14), 11 states have call successors, (14) Word has length 64 [2022-04-28 01:31:07,512 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:31:07,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 33 states, 32 states have (on average 1.84375) internal successors, (59), 30 states have internal predecessors, (59), 13 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 11 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-28 01:31:09,296 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:31:09,296 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-04-28 01:31:09,296 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:31:09,297 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-04-28 01:31:09,297 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=205, Invalid=851, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 01:31:09,297 INFO L87 Difference]: Start difference. First operand 81 states and 93 transitions. Second operand has 33 states, 32 states have (on average 1.84375) internal successors, (59), 30 states have internal predecessors, (59), 13 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 11 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-28 01:31:11,505 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.52s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:31:15,655 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:31:34,127 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.04s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:31:44,178 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.72s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:31:49,397 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.18s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:31:51,535 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.35s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:31:53,365 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.45s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:32:04,711 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-28 01:32:06,597 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:32:06,597 INFO L93 Difference]: Finished difference Result 116 states and 141 transitions. [2022-04-28 01:32:06,597 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-28 01:32:06,598 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 32 states have (on average 1.84375) internal successors, (59), 30 states have internal predecessors, (59), 13 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 11 states have call predecessors, (14), 11 states have call successors, (14) Word has length 64 [2022-04-28 01:32:06,598 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:32:06,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 32 states have (on average 1.84375) internal successors, (59), 30 states have internal predecessors, (59), 13 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 11 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-28 01:32:06,599 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 73 transitions. [2022-04-28 01:32:06,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 32 states have (on average 1.84375) internal successors, (59), 30 states have internal predecessors, (59), 13 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 11 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-28 01:32:06,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 73 transitions. [2022-04-28 01:32:06,603 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 73 transitions. [2022-04-28 01:32:23,671 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 68 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-28 01:32:23,671 INFO L225 Difference]: With dead ends: 116 [2022-04-28 01:32:23,671 INFO L226 Difference]: Without dead ends: 0 [2022-04-28 01:32:23,673 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 151 GetRequests, 95 SyntacticMatches, 5 SemanticMatches, 51 ConstructedPredicates, 0 IntricatePredicates, 2 DeprecatedPredicates, 848 ImplicationChecksByTransitivity, 35.9s TimeCoverageRelationStatistics Valid=582, Invalid=2172, Unknown=2, NotChecked=0, Total=2756 [2022-04-28 01:32:23,673 INFO L413 NwaCegarLoop]: 19 mSDtfsCounter, 76 mSDsluCounter, 185 mSDsCounter, 0 mSdLazyCounter, 370 mSolverCounterSat, 60 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 15.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 204 SdHoareTripleChecker+Invalid, 504 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 60 IncrementalHoareTripleChecker+Valid, 370 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 73 IncrementalHoareTripleChecker+Unchecked, 15.2s IncrementalHoareTripleChecker+Time [2022-04-28 01:32:23,673 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [77 Valid, 204 Invalid, 504 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [60 Valid, 370 Invalid, 1 Unknown, 73 Unchecked, 15.2s Time] [2022-04-28 01:32:23,673 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-28 01:32:23,673 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-28 01:32:23,673 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:32:23,674 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-28 01:32:23,674 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-28 01:32:23,674 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-28 01:32:23,674 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:32:23,674 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 01:32:23,674 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 01:32:23,674 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:32:23,674 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:32:23,674 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-28 01:32:23,674 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-28 01:32:23,674 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:32:23,674 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 01:32:23,674 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 01:32:23,674 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:32:23,674 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:32:23,674 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:32:23,674 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:32:23,674 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-28 01:32:23,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-28 01:32:23,674 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 64 [2022-04-28 01:32:23,674 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:32:23,675 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-28 01:32:23,675 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 33 states, 32 states have (on average 1.84375) internal successors, (59), 30 states have internal predecessors, (59), 13 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 11 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-28 01:32:23,675 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 01:32:23,675 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:32:23,676 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-28 01:32:23,694 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 01:32:23,893 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-28 01:32:23,894 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-28 01:32:30,639 WARN L232 SmtUtils]: Spent 6.59s on a formula simplification. DAG size of input: 187 DAG size of output: 15 (called from [L 149] de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.HoareAnnotationComposer.combineInter) [2022-04-28 01:32:35,432 INFO L895 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-28 01:32:35,432 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-28 01:32:35,432 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-28 01:32:35,432 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-28 01:32:35,432 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-28 01:32:35,432 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-28 01:32:35,432 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 9 11) the Hoare annotation is: true [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point L10(line 10) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point L10-2(lines 9 11) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 9 11) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 20 49) the Hoare annotation is: true [2022-04-28 01:32:35,433 INFO L902 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: true [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point L25-1(line 25) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L902 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: true [2022-04-28 01:32:35,433 INFO L895 garLoopResultBuilder]: At program point L27-1(line 27) the Hoare annotation is: (and (<= main_~b~0 20) (<= 0 main_~b~0)) [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point L28(line 28) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L895 garLoopResultBuilder]: At program point L34-2(lines 34 45) the Hoare annotation is: (and (<= 0 main_~y~0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (<= 1 main_~b~0)) [2022-04-28 01:32:35,433 INFO L895 garLoopResultBuilder]: At program point L34-3(lines 34 45) the Hoare annotation is: (let ((.cse0 (* main_~b~0 main_~a~0))) (and (= main_~z~0 .cse0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) .cse0) (<= 1 main_~b~0))) [2022-04-28 01:32:35,433 INFO L895 garLoopResultBuilder]: At program point L35(line 35) the Hoare annotation is: (and (<= 0 main_~y~0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (<= 1 main_~b~0)) [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point L46(line 46) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point L35-1(lines 34 45) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point mainFINAL(lines 20 49) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point L39(lines 39 42) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point mainEXIT(lines 20 49) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point L39-2(lines 39 42) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 12 18) the Hoare annotation is: true [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point L13(lines 13 16) no Hoare annotation was computed. [2022-04-28 01:32:35,433 INFO L899 garLoopResultBuilder]: For program point L14(lines 14 15) no Hoare annotation was computed. [2022-04-28 01:32:35,434 INFO L899 garLoopResultBuilder]: For program point L13-2(lines 12 18) no Hoare annotation was computed. [2022-04-28 01:32:35,434 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 15) no Hoare annotation was computed. [2022-04-28 01:32:35,434 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 12 18) no Hoare annotation was computed. [2022-04-28 01:32:35,436 INFO L356 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1, 1, 1] [2022-04-28 01:32:35,437 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-28 01:32:35,439 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L10-2 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L13-2 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L25-1 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-28 01:32:35,440 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-04-28 01:32:35,442 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-28 01:32:35,442 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-28 01:32:35,442 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-28 01:32:35,442 WARN L170 areAnnotationChecker]: L39-2 has no Hoare annotation [2022-04-28 01:32:35,443 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-28 01:32:35,443 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-28 01:32:35,443 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-28 01:32:35,449 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 01:32:35 BasicIcfg [2022-04-28 01:32:35,449 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-28 01:32:35,450 INFO L158 Benchmark]: Toolchain (without parser) took 789280.87ms. Allocated memory was 194.0MB in the beginning and 240.1MB in the end (delta: 46.1MB). Free memory was 141.3MB in the beginning and 134.3MB in the end (delta: 7.0MB). Peak memory consumption was 114.9MB. Max. memory is 8.0GB. [2022-04-28 01:32:35,450 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 194.0MB. Free memory is still 157.6MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 01:32:35,450 INFO L158 Benchmark]: CACSL2BoogieTranslator took 184.27ms. Allocated memory is still 194.0MB. Free memory was 141.2MB in the beginning and 169.2MB in the end (delta: -28.0MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-28 01:32:35,451 INFO L158 Benchmark]: Boogie Preprocessor took 17.79ms. Allocated memory is still 194.0MB. Free memory was 169.2MB in the beginning and 167.9MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-28 01:32:35,451 INFO L158 Benchmark]: RCFGBuilder took 270.62ms. Allocated memory is still 194.0MB. Free memory was 167.9MB in the beginning and 156.3MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-28 01:32:35,451 INFO L158 Benchmark]: IcfgTransformer took 31.14ms. Allocated memory is still 194.0MB. Free memory was 156.3MB in the beginning and 154.6MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-28 01:32:35,451 INFO L158 Benchmark]: TraceAbstraction took 788771.67ms. Allocated memory was 194.0MB in the beginning and 240.1MB in the end (delta: 46.1MB). Free memory was 154.2MB in the beginning and 134.3MB in the end (delta: 19.9MB). Peak memory consumption was 127.6MB. Max. memory is 8.0GB. [2022-04-28 01:32:35,452 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.11ms. Allocated memory is still 194.0MB. Free memory is still 157.6MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 184.27ms. Allocated memory is still 194.0MB. Free memory was 141.2MB in the beginning and 169.2MB in the end (delta: -28.0MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 17.79ms. Allocated memory is still 194.0MB. Free memory was 169.2MB in the beginning and 167.9MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 270.62ms. Allocated memory is still 194.0MB. Free memory was 167.9MB in the beginning and 156.3MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 31.14ms. Allocated memory is still 194.0MB. Free memory was 156.3MB in the beginning and 154.6MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 788771.67ms. Allocated memory was 194.0MB in the beginning and 240.1MB in the end (delta: 46.1MB). Free memory was 154.2MB in the beginning and 134.3MB in the end (delta: 19.9MB). Peak memory consumption was 127.6MB. 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: 788.7s, OverallIterations: 9, TraceHistogramMax: 5, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 167.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 11.5s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 12 mSolverCounterUnknown, 255 SdHoareTripleChecker+Valid, 52.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 241 mSDsluCounter, 1243 SdHoareTripleChecker+Invalid, 52.8s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 107 IncrementalHoareTripleChecker+Unchecked, 1021 mSDsCounter, 143 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1513 IncrementalHoareTripleChecker+Invalid, 1775 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 143 mSolverCounterUnsat, 222 mSDtfsCounter, 1513 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 647 GetRequests, 476 SyntacticMatches, 17 SemanticMatches, 154 ConstructedPredicates, 0 IntricatePredicates, 3 DeprecatedPredicates, 1259 ImplicationChecksByTransitivity, 84.9s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=81occurred in iteration=8, InterpolantAutomatonStates: 109, 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, 9 MinimizatonAttempts, 40 StatesRemovedByMinimization, 6 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 12 LocationsWithAnnotation, 37 PreInvPairs, 72 NumberOfFragments, 71 HoareAnnotationTreeSize, 37 FomulaSimplifications, 294 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 12 FomulaSimplificationsInter, 3994 FormulaSimplificationTreeSizeReductionInter, 11.4s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 598.5s InterpolantComputationTime, 372 NumberOfCodeBlocks, 372 NumberOfCodeBlocksAsserted, 14 NumberOfCheckSat, 594 ConstructedInterpolants, 4 QuantifiedInterpolants, 4262 SizeOfPredicates, 29 NumberOfNonLiveVariables, 964 ConjunctsInSsa, 181 ConjunctsInUnsatCore, 14 InterpolantComputations, 4 PerfectInterpolantSequences, 326/443 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) && 1 <= b RESULT: Ultimate proved your program to be correct! [2022-04-28 01:32:35,644 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...