./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/nla-digbench-scaling/egcd2-ll_valuebound5.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/nla-digbench-scaling/egcd2-ll_valuebound5.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash ab50d4c44616d850baf388e04d7eb1063c3cea27d21c9cbb628b158ef2bdff42 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 17:22:17,330 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 17:22:17,339 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 17:22:17,366 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 17:22:17,366 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 17:22:17,368 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 17:22:17,370 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 17:22:17,374 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 17:22:17,376 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 17:22:17,379 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 17:22:17,380 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 17:22:17,381 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 17:22:17,381 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 17:22:17,383 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 17:22:17,385 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 17:22:17,386 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 17:22:17,387 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 17:22:17,387 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 17:22:17,391 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 17:22:17,396 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 17:22:17,397 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 17:22:17,398 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 17:22:17,400 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 17:22:17,400 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 17:22:17,405 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 17:22:17,405 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 17:22:17,406 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 17:22:17,407 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 17:22:17,407 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 17:22:17,408 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 17:22:17,408 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 17:22:17,409 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 17:22:17,410 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 17:22:17,411 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 17:22:17,412 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 17:22:17,412 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 17:22:17,412 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 17:22:17,413 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 17:22:17,413 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 17:22:17,413 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 17:22:17,414 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 17:22:17,415 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 17:22:17,433 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 17:22:17,433 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 17:22:17,433 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 17:22:17,435 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 17:22:17,435 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 17:22:17,436 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 17:22:17,436 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 17:22:17,436 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 17:22:17,437 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 17:22:17,437 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 17:22:17,437 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 17:22:17,438 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 17:22:17,438 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 17:22:17,438 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 17:22:17,438 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 17:22:17,438 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 17:22:17,438 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 17:22:17,439 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 17:22:17,439 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 17:22:17,439 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 17:22:17,439 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 17:22:17,439 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 17:22:17,439 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 17:22:17,440 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 17:22:17,440 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:22:17,440 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 17:22:17,440 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 17:22:17,441 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 17:22:17,442 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 17:22:17,442 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 17:22:17,442 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 17:22:17,442 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 17:22:17,442 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 17:22:17,443 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> ab50d4c44616d850baf388e04d7eb1063c3cea27d21c9cbb628b158ef2bdff42 [2022-02-20 17:22:17,617 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 17:22:17,632 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 17:22:17,634 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 17:22:17,634 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 17:22:17,635 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 17:22:17,636 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/nla-digbench-scaling/egcd2-ll_valuebound5.c [2022-02-20 17:22:17,680 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/53b1437cd/3d25dfc1a04443a8a3b75cf3bb421e0d/FLAGcc908430a [2022-02-20 17:22:18,008 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 17:22:18,009 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/egcd2-ll_valuebound5.c [2022-02-20 17:22:18,013 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/53b1437cd/3d25dfc1a04443a8a3b75cf3bb421e0d/FLAGcc908430a [2022-02-20 17:22:18,024 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/53b1437cd/3d25dfc1a04443a8a3b75cf3bb421e0d [2022-02-20 17:22:18,026 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 17:22:18,027 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 17:22:18,033 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 17:22:18,033 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 17:22:18,039 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 17:22:18,044 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,045 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@44fdcfd8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18, skipping insertion in model container [2022-02-20 17:22:18,045 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,050 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 17:22:18,064 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 17:22:18,182 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/egcd2-ll_valuebound5.c[490,503] [2022-02-20 17:22:18,197 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:22:18,206 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 17:22:18,224 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/egcd2-ll_valuebound5.c[490,503] [2022-02-20 17:22:18,233 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:22:18,242 INFO L208 MainTranslator]: Completed translation [2022-02-20 17:22:18,242 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18 WrapperNode [2022-02-20 17:22:18,243 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 17:22:18,243 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 17:22:18,243 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 17:22:18,244 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 17:22:18,248 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,253 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,267 INFO L137 Inliner]: procedures = 14, calls = 19, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 77 [2022-02-20 17:22:18,269 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 17:22:18,270 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 17:22:18,271 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 17:22:18,271 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 17:22:18,276 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,276 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,285 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,286 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,290 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,295 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,296 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,297 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 17:22:18,298 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 17:22:18,298 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 17:22:18,298 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 17:22:18,299 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (1/1) ... [2022-02-20 17:22:18,304 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:22:18,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:22:18,323 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-02-20 17:22:18,331 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-02-20 17:22:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 17:22:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 17:22:18,348 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 17:22:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 17:22:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 17:22:18,349 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 17:22:18,349 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 17:22:18,349 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 17:22:18,391 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 17:22:18,392 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 17:22:18,518 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 17:22:18,523 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 17:22:18,523 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 17:22:18,525 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:22:18 BoogieIcfgContainer [2022-02-20 17:22:18,525 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 17:22:18,526 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 17:22:18,526 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 17:22:18,528 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 17:22:18,528 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 05:22:18" (1/3) ... [2022-02-20 17:22:18,529 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7aea064b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:22:18, skipping insertion in model container [2022-02-20 17:22:18,529 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:22:18" (2/3) ... [2022-02-20 17:22:18,529 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7aea064b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:22:18, skipping insertion in model container [2022-02-20 17:22:18,529 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:22:18" (3/3) ... [2022-02-20 17:22:18,530 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd2-ll_valuebound5.c [2022-02-20 17:22:18,533 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 17:22:18,533 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 17:22:18,560 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 17:22:18,565 INFO L339 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=PETRI_NET, 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, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 17:22:18,565 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 17:22:18,578 INFO L276 IsEmpty]: Start isEmpty. Operand has 35 states, 19 states have (on average 1.4736842105263157) internal successors, (28), 21 states have internal predecessors, (28), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-02-20 17:22:18,582 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 17:22:18,582 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:22:18,583 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:22:18,583 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:22:18,586 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:22:18,587 INFO L85 PathProgramCache]: Analyzing trace with hash -1146169762, now seen corresponding path program 1 times [2022-02-20 17:22:18,593 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:22:18,593 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1145467140] [2022-02-20 17:22:18,593 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:18,594 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:22:18,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:18,743 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 17:22:18,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:18,775 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,779 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,780 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,780 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {38#true} #76#return; {39#false} is VALID [2022-02-20 17:22:18,781 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-02-20 17:22:18,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:18,793 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,793 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,793 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,794 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {39#false} #78#return; {39#false} is VALID [2022-02-20 17:22:18,794 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 13 [2022-02-20 17:22:18,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:18,809 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,809 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,810 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,810 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {39#false} #80#return; {39#false} is VALID [2022-02-20 17:22:18,810 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2022-02-20 17:22:18,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:18,824 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,825 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,825 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,826 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {39#false} #82#return; {39#false} is VALID [2022-02-20 17:22:18,826 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-02-20 17:22:18,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:18,836 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,837 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,837 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,837 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {39#false} #84#return; {39#false} is VALID [2022-02-20 17:22:18,837 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-02-20 17:22:18,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:18,852 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,852 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,853 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,853 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {39#false} #86#return; {39#false} is VALID [2022-02-20 17:22:18,853 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {38#true} is VALID [2022-02-20 17:22:18,853 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {38#true} is VALID [2022-02-20 17:22:18,854 INFO L272 TraceCheckUtils]: 2: Hoare triple {38#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {38#true} is VALID [2022-02-20 17:22:18,854 INFO L290 TraceCheckUtils]: 3: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,856 INFO L290 TraceCheckUtils]: 4: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,856 INFO L290 TraceCheckUtils]: 5: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,856 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {39#false} {38#true} #76#return; {39#false} is VALID [2022-02-20 17:22:18,857 INFO L290 TraceCheckUtils]: 7: Hoare triple {39#false} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {39#false} is VALID [2022-02-20 17:22:18,857 INFO L272 TraceCheckUtils]: 8: Hoare triple {39#false} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {38#true} is VALID [2022-02-20 17:22:18,857 INFO L290 TraceCheckUtils]: 9: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,858 INFO L290 TraceCheckUtils]: 10: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,858 INFO L290 TraceCheckUtils]: 11: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,859 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {39#false} {39#false} #78#return; {39#false} is VALID [2022-02-20 17:22:18,859 INFO L272 TraceCheckUtils]: 13: Hoare triple {39#false} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {38#true} is VALID [2022-02-20 17:22:18,859 INFO L290 TraceCheckUtils]: 14: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,860 INFO L290 TraceCheckUtils]: 15: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,860 INFO L290 TraceCheckUtils]: 16: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,860 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {39#false} {39#false} #80#return; {39#false} is VALID [2022-02-20 17:22:18,860 INFO L272 TraceCheckUtils]: 18: Hoare triple {39#false} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {38#true} is VALID [2022-02-20 17:22:18,860 INFO L290 TraceCheckUtils]: 19: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,862 INFO L290 TraceCheckUtils]: 20: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,862 INFO L290 TraceCheckUtils]: 21: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,862 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {39#false} {39#false} #82#return; {39#false} is VALID [2022-02-20 17:22:18,862 INFO L290 TraceCheckUtils]: 23: Hoare triple {39#false} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {39#false} is VALID [2022-02-20 17:22:18,862 INFO L272 TraceCheckUtils]: 24: Hoare triple {39#false} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {38#true} is VALID [2022-02-20 17:22:18,863 INFO L290 TraceCheckUtils]: 25: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,864 INFO L290 TraceCheckUtils]: 26: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,864 INFO L290 TraceCheckUtils]: 27: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,864 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {39#false} {39#false} #84#return; {39#false} is VALID [2022-02-20 17:22:18,864 INFO L272 TraceCheckUtils]: 29: Hoare triple {39#false} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {38#true} is VALID [2022-02-20 17:22:18,866 INFO L290 TraceCheckUtils]: 30: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-02-20 17:22:18,866 INFO L290 TraceCheckUtils]: 31: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-02-20 17:22:18,866 INFO L290 TraceCheckUtils]: 32: Hoare triple {39#false} assume true; {39#false} is VALID [2022-02-20 17:22:18,866 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {39#false} {39#false} #86#return; {39#false} is VALID [2022-02-20 17:22:18,867 INFO L290 TraceCheckUtils]: 34: Hoare triple {39#false} assume !true; {39#false} is VALID [2022-02-20 17:22:18,867 INFO L272 TraceCheckUtils]: 35: Hoare triple {39#false} call __VERIFIER_assert((if 0 == main_~q~0#1 * main_~x~0#1 + main_~s~0#1 * main_~y~0#1 then 1 else 0)); {39#false} is VALID [2022-02-20 17:22:18,867 INFO L290 TraceCheckUtils]: 36: Hoare triple {39#false} ~cond := #in~cond; {39#false} is VALID [2022-02-20 17:22:18,867 INFO L290 TraceCheckUtils]: 37: Hoare triple {39#false} assume 0 == ~cond; {39#false} is VALID [2022-02-20 17:22:18,868 INFO L290 TraceCheckUtils]: 38: Hoare triple {39#false} assume !false; {39#false} is VALID [2022-02-20 17:22:18,868 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-02-20 17:22:18,869 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:22:18,869 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1145467140] [2022-02-20 17:22:18,870 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1145467140] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:22:18,871 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:22:18,871 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 17:22:18,872 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1340364318] [2022-02-20 17:22:18,873 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:22:18,877 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 2 states have call successors, (6) Word has length 39 [2022-02-20 17:22:18,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:22:18,884 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 17:22:18,918 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:22:18,919 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 17:22:18,919 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:22:18,945 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 17:22:18,946 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:22:18,949 INFO L87 Difference]: Start difference. First operand has 35 states, 19 states have (on average 1.4736842105263157) internal successors, (28), 21 states have internal predecessors, (28), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 17:22:19,045 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:19,045 INFO L93 Difference]: Finished difference Result 67 states and 112 transitions. [2022-02-20 17:22:19,045 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 17:22:19,046 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 2 states have call successors, (6) Word has length 39 [2022-02-20 17:22:19,046 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:22:19,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 17:22:19,060 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 112 transitions. [2022-02-20 17:22:19,060 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 17:22:19,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 112 transitions. [2022-02-20 17:22:19,071 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 112 transitions. [2022-02-20 17:22:19,187 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:22:19,196 INFO L225 Difference]: With dead ends: 67 [2022-02-20 17:22:19,196 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 17:22:19,200 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:22:19,203 INFO L933 BasicCegarLoop]: 46 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:22:19,204 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:22:19,215 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 17:22:19,233 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-02-20 17:22:19,233 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:22:19,234 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 31 states, 16 states have (on average 1.1875) internal successors, (19), 18 states have internal predecessors, (19), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:19,235 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 31 states, 16 states have (on average 1.1875) internal successors, (19), 18 states have internal predecessors, (19), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:19,236 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 31 states, 16 states have (on average 1.1875) internal successors, (19), 18 states have internal predecessors, (19), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:19,241 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:19,241 INFO L93 Difference]: Finished difference Result 31 states and 42 transitions. [2022-02-20 17:22:19,241 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 42 transitions. [2022-02-20 17:22:19,242 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:22:19,242 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:22:19,244 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 16 states have (on average 1.1875) internal successors, (19), 18 states have internal predecessors, (19), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 31 states. [2022-02-20 17:22:19,244 INFO L87 Difference]: Start difference. First operand has 31 states, 16 states have (on average 1.1875) internal successors, (19), 18 states have internal predecessors, (19), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 31 states. [2022-02-20 17:22:19,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:19,249 INFO L93 Difference]: Finished difference Result 31 states and 42 transitions. [2022-02-20 17:22:19,249 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 42 transitions. [2022-02-20 17:22:19,250 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:22:19,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:22:19,250 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:22:19,251 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:22:19,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 16 states have (on average 1.1875) internal successors, (19), 18 states have internal predecessors, (19), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:19,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 42 transitions. [2022-02-20 17:22:19,256 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 42 transitions. Word has length 39 [2022-02-20 17:22:19,257 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:22:19,257 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 42 transitions. [2022-02-20 17:22:19,257 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 17:22:19,258 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 42 transitions. [2022-02-20 17:22:19,260 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-02-20 17:22:19,260 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:22:19,260 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:22:19,261 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 17:22:19,261 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:22:19,262 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:22:19,262 INFO L85 PathProgramCache]: Analyzing trace with hash 846808023, now seen corresponding path program 1 times [2022-02-20 17:22:19,262 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:22:19,263 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [555545488] [2022-02-20 17:22:19,263 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:19,263 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:22:19,308 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:22:19,312 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1478615549] [2022-02-20 17:22:19,312 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:19,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:22:19,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:22:19,329 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-02-20 17:22:19,331 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-02-20 17:22:19,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:19,388 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 17:22:19,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:19,407 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:22:19,555 INFO L290 TraceCheckUtils]: 0: Hoare triple {275#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {275#true} is VALID [2022-02-20 17:22:19,555 INFO L290 TraceCheckUtils]: 1: Hoare triple {275#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {275#true} is VALID [2022-02-20 17:22:19,555 INFO L272 TraceCheckUtils]: 2: Hoare triple {275#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,555 INFO L290 TraceCheckUtils]: 3: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-02-20 17:22:19,556 INFO L290 TraceCheckUtils]: 4: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-02-20 17:22:19,556 INFO L290 TraceCheckUtils]: 5: Hoare triple {275#true} assume true; {275#true} is VALID [2022-02-20 17:22:19,556 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {275#true} {275#true} #76#return; {275#true} is VALID [2022-02-20 17:22:19,556 INFO L290 TraceCheckUtils]: 7: Hoare triple {275#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {275#true} is VALID [2022-02-20 17:22:19,556 INFO L272 TraceCheckUtils]: 8: Hoare triple {275#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,557 INFO L290 TraceCheckUtils]: 9: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-02-20 17:22:19,557 INFO L290 TraceCheckUtils]: 10: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-02-20 17:22:19,557 INFO L290 TraceCheckUtils]: 11: Hoare triple {275#true} assume true; {275#true} is VALID [2022-02-20 17:22:19,557 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {275#true} {275#true} #78#return; {275#true} is VALID [2022-02-20 17:22:19,557 INFO L272 TraceCheckUtils]: 13: Hoare triple {275#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,557 INFO L290 TraceCheckUtils]: 14: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-02-20 17:22:19,558 INFO L290 TraceCheckUtils]: 15: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-02-20 17:22:19,558 INFO L290 TraceCheckUtils]: 16: Hoare triple {275#true} assume true; {275#true} is VALID [2022-02-20 17:22:19,558 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {275#true} {275#true} #80#return; {275#true} is VALID [2022-02-20 17:22:19,558 INFO L272 TraceCheckUtils]: 18: Hoare triple {275#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,559 INFO L290 TraceCheckUtils]: 19: Hoare triple {275#true} ~cond := #in~cond; {337#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:22:19,559 INFO L290 TraceCheckUtils]: 20: Hoare triple {337#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {341#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:19,560 INFO L290 TraceCheckUtils]: 21: Hoare triple {341#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {341#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:19,560 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {341#(not (= |assume_abort_if_not_#in~cond| 0))} {275#true} #82#return; {348#(<= 1 |ULTIMATE.start_main_~y~0#1|)} is VALID [2022-02-20 17:22:19,561 INFO L290 TraceCheckUtils]: 23: Hoare triple {348#(<= 1 |ULTIMATE.start_main_~y~0#1|)} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:19,561 INFO L272 TraceCheckUtils]: 24: Hoare triple {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,561 INFO L290 TraceCheckUtils]: 25: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-02-20 17:22:19,561 INFO L290 TraceCheckUtils]: 26: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-02-20 17:22:19,562 INFO L290 TraceCheckUtils]: 27: Hoare triple {275#true} assume true; {275#true} is VALID [2022-02-20 17:22:19,562 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {275#true} {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} #84#return; {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:19,562 INFO L272 TraceCheckUtils]: 29: Hoare triple {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,563 INFO L290 TraceCheckUtils]: 30: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-02-20 17:22:19,563 INFO L290 TraceCheckUtils]: 31: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-02-20 17:22:19,563 INFO L290 TraceCheckUtils]: 32: Hoare triple {275#true} assume true; {275#true} is VALID [2022-02-20 17:22:19,564 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {275#true} {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} #86#return; {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:19,564 INFO L290 TraceCheckUtils]: 34: Hoare triple {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} assume !false; {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:19,564 INFO L290 TraceCheckUtils]: 35: Hoare triple {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} assume !(0 != main_~b~0#1); {276#false} is VALID [2022-02-20 17:22:19,565 INFO L272 TraceCheckUtils]: 36: Hoare triple {276#false} call __VERIFIER_assert((if 0 == main_~q~0#1 * main_~x~0#1 + main_~s~0#1 * main_~y~0#1 then 1 else 0)); {276#false} is VALID [2022-02-20 17:22:19,565 INFO L290 TraceCheckUtils]: 37: Hoare triple {276#false} ~cond := #in~cond; {276#false} is VALID [2022-02-20 17:22:19,565 INFO L290 TraceCheckUtils]: 38: Hoare triple {276#false} assume 0 == ~cond; {276#false} is VALID [2022-02-20 17:22:19,565 INFO L290 TraceCheckUtils]: 39: Hoare triple {276#false} assume !false; {276#false} is VALID [2022-02-20 17:22:19,565 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-02-20 17:22:19,566 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:22:19,790 INFO L290 TraceCheckUtils]: 39: Hoare triple {276#false} assume !false; {276#false} is VALID [2022-02-20 17:22:19,790 INFO L290 TraceCheckUtils]: 38: Hoare triple {276#false} assume 0 == ~cond; {276#false} is VALID [2022-02-20 17:22:19,790 INFO L290 TraceCheckUtils]: 37: Hoare triple {276#false} ~cond := #in~cond; {276#false} is VALID [2022-02-20 17:22:19,790 INFO L272 TraceCheckUtils]: 36: Hoare triple {276#false} call __VERIFIER_assert((if 0 == main_~q~0#1 * main_~x~0#1 + main_~s~0#1 * main_~y~0#1 then 1 else 0)); {276#false} is VALID [2022-02-20 17:22:19,791 INFO L290 TraceCheckUtils]: 35: Hoare triple {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} assume !(0 != main_~b~0#1); {276#false} is VALID [2022-02-20 17:22:19,793 INFO L290 TraceCheckUtils]: 34: Hoare triple {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} assume !false; {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:19,794 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {275#true} {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} #86#return; {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:19,794 INFO L290 TraceCheckUtils]: 32: Hoare triple {275#true} assume true; {275#true} is VALID [2022-02-20 17:22:19,794 INFO L290 TraceCheckUtils]: 31: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-02-20 17:22:19,794 INFO L290 TraceCheckUtils]: 30: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-02-20 17:22:19,794 INFO L272 TraceCheckUtils]: 29: Hoare triple {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,795 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {275#true} {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} #84#return; {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:19,795 INFO L290 TraceCheckUtils]: 27: Hoare triple {275#true} assume true; {275#true} is VALID [2022-02-20 17:22:19,795 INFO L290 TraceCheckUtils]: 26: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-02-20 17:22:19,796 INFO L290 TraceCheckUtils]: 25: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-02-20 17:22:19,796 INFO L272 TraceCheckUtils]: 24: Hoare triple {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,797 INFO L290 TraceCheckUtils]: 23: Hoare triple {348#(<= 1 |ULTIMATE.start_main_~y~0#1|)} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {352#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:19,798 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {341#(not (= |assume_abort_if_not_#in~cond| 0))} {275#true} #82#return; {348#(<= 1 |ULTIMATE.start_main_~y~0#1|)} is VALID [2022-02-20 17:22:19,798 INFO L290 TraceCheckUtils]: 21: Hoare triple {341#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {341#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:19,799 INFO L290 TraceCheckUtils]: 20: Hoare triple {461#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {341#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:19,806 INFO L290 TraceCheckUtils]: 19: Hoare triple {275#true} ~cond := #in~cond; {461#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-02-20 17:22:19,806 INFO L272 TraceCheckUtils]: 18: Hoare triple {275#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,806 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {275#true} {275#true} #80#return; {275#true} is VALID [2022-02-20 17:22:19,806 INFO L290 TraceCheckUtils]: 16: Hoare triple {275#true} assume true; {275#true} is VALID [2022-02-20 17:22:19,806 INFO L290 TraceCheckUtils]: 15: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-02-20 17:22:19,806 INFO L290 TraceCheckUtils]: 14: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-02-20 17:22:19,806 INFO L272 TraceCheckUtils]: 13: Hoare triple {275#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,806 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {275#true} {275#true} #78#return; {275#true} is VALID [2022-02-20 17:22:19,806 INFO L290 TraceCheckUtils]: 11: Hoare triple {275#true} assume true; {275#true} is VALID [2022-02-20 17:22:19,807 INFO L290 TraceCheckUtils]: 10: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-02-20 17:22:19,807 INFO L290 TraceCheckUtils]: 9: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-02-20 17:22:19,807 INFO L272 TraceCheckUtils]: 8: Hoare triple {275#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,807 INFO L290 TraceCheckUtils]: 7: Hoare triple {275#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {275#true} is VALID [2022-02-20 17:22:19,807 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {275#true} {275#true} #76#return; {275#true} is VALID [2022-02-20 17:22:19,807 INFO L290 TraceCheckUtils]: 5: Hoare triple {275#true} assume true; {275#true} is VALID [2022-02-20 17:22:19,807 INFO L290 TraceCheckUtils]: 4: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-02-20 17:22:19,807 INFO L290 TraceCheckUtils]: 3: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-02-20 17:22:19,807 INFO L272 TraceCheckUtils]: 2: Hoare triple {275#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {275#true} is VALID [2022-02-20 17:22:19,807 INFO L290 TraceCheckUtils]: 1: Hoare triple {275#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {275#true} is VALID [2022-02-20 17:22:19,807 INFO L290 TraceCheckUtils]: 0: Hoare triple {275#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {275#true} is VALID [2022-02-20 17:22:19,808 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-02-20 17:22:19,808 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:22:19,808 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [555545488] [2022-02-20 17:22:19,808 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:22:19,808 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1478615549] [2022-02-20 17:22:19,808 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1478615549] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:22:19,808 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:22:19,808 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-02-20 17:22:19,809 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1885430629] [2022-02-20 17:22:19,809 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:22:19,810 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) Word has length 40 [2022-02-20 17:22:19,810 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:22:19,810 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 17:22:19,840 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:22:19,840 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 17:22:19,841 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:22:19,841 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 17:22:19,841 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 17:22:19,842 INFO L87 Difference]: Start difference. First operand 31 states and 42 transitions. Second operand has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 17:22:20,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:20,140 INFO L93 Difference]: Finished difference Result 48 states and 65 transitions. [2022-02-20 17:22:20,140 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 17:22:20,141 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) Word has length 40 [2022-02-20 17:22:20,141 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:22:20,141 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 17:22:20,142 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 65 transitions. [2022-02-20 17:22:20,143 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 17:22:20,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 65 transitions. [2022-02-20 17:22:20,144 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 65 transitions. [2022-02-20 17:22:20,207 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:22:20,208 INFO L225 Difference]: With dead ends: 48 [2022-02-20 17:22:20,208 INFO L226 Difference]: Without dead ends: 40 [2022-02-20 17:22:20,209 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 72 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:22:20,209 INFO L933 BasicCegarLoop]: 34 mSDtfsCounter, 19 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 64 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 134 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 64 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:22:20,210 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 134 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 64 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:22:20,210 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-02-20 17:22:20,222 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 33. [2022-02-20 17:22:20,222 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:22:20,223 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 33 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:20,223 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 33 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:20,223 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 33 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:20,225 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:20,225 INFO L93 Difference]: Finished difference Result 40 states and 56 transitions. [2022-02-20 17:22:20,225 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 56 transitions. [2022-02-20 17:22:20,226 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:22:20,226 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:22:20,226 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 40 states. [2022-02-20 17:22:20,227 INFO L87 Difference]: Start difference. First operand has 33 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 40 states. [2022-02-20 17:22:20,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:20,228 INFO L93 Difference]: Finished difference Result 40 states and 56 transitions. [2022-02-20 17:22:20,229 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 56 transitions. [2022-02-20 17:22:20,229 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:22:20,229 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:22:20,229 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:22:20,229 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:22:20,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:20,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 44 transitions. [2022-02-20 17:22:20,231 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 44 transitions. Word has length 40 [2022-02-20 17:22:20,231 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:22:20,231 INFO L470 AbstractCegarLoop]: Abstraction has 33 states and 44 transitions. [2022-02-20 17:22:20,231 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 6 states have internal predecessors, (17), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 17:22:20,231 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 44 transitions. [2022-02-20 17:22:20,232 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-02-20 17:22:20,232 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:22:20,232 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:22:20,252 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-02-20 17:22:20,449 WARN L452 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-02-20 17:22:20,449 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:22:20,450 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:22:20,450 INFO L85 PathProgramCache]: Analyzing trace with hash 481927254, now seen corresponding path program 1 times [2022-02-20 17:22:20,450 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:22:20,450 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [902938670] [2022-02-20 17:22:20,450 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:20,450 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:22:20,469 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:22:20,469 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [97082472] [2022-02-20 17:22:20,470 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:20,470 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:22:20,470 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:22:20,471 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-02-20 17:22:20,472 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-02-20 17:22:20,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:20,510 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 17:22:20,526 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:20,527 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:22:20,741 INFO L290 TraceCheckUtils]: 0: Hoare triple {725#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {725#true} is VALID [2022-02-20 17:22:20,741 INFO L290 TraceCheckUtils]: 1: Hoare triple {725#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {725#true} is VALID [2022-02-20 17:22:20,741 INFO L272 TraceCheckUtils]: 2: Hoare triple {725#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,741 INFO L290 TraceCheckUtils]: 3: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,741 INFO L290 TraceCheckUtils]: 4: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,741 INFO L290 TraceCheckUtils]: 5: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,741 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {725#true} {725#true} #76#return; {725#true} is VALID [2022-02-20 17:22:20,741 INFO L290 TraceCheckUtils]: 7: Hoare triple {725#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {725#true} is VALID [2022-02-20 17:22:20,742 INFO L272 TraceCheckUtils]: 8: Hoare triple {725#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,742 INFO L290 TraceCheckUtils]: 9: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,742 INFO L290 TraceCheckUtils]: 10: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,742 INFO L290 TraceCheckUtils]: 11: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,742 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {725#true} {725#true} #78#return; {725#true} is VALID [2022-02-20 17:22:20,742 INFO L272 TraceCheckUtils]: 13: Hoare triple {725#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,742 INFO L290 TraceCheckUtils]: 14: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,742 INFO L290 TraceCheckUtils]: 15: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,742 INFO L290 TraceCheckUtils]: 16: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,742 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {725#true} {725#true} #80#return; {725#true} is VALID [2022-02-20 17:22:20,742 INFO L272 TraceCheckUtils]: 18: Hoare triple {725#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,745 INFO L290 TraceCheckUtils]: 19: Hoare triple {725#true} ~cond := #in~cond; {787#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:22:20,745 INFO L290 TraceCheckUtils]: 20: Hoare triple {787#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {791#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:20,746 INFO L290 TraceCheckUtils]: 21: Hoare triple {791#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {791#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:20,746 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {791#(not (= |assume_abort_if_not_#in~cond| 0))} {725#true} #82#return; {798#(<= 1 |ULTIMATE.start_main_~y~0#1|)} is VALID [2022-02-20 17:22:20,747 INFO L290 TraceCheckUtils]: 23: Hoare triple {798#(<= 1 |ULTIMATE.start_main_~y~0#1|)} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {802#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:20,747 INFO L272 TraceCheckUtils]: 24: Hoare triple {802#(<= 1 |ULTIMATE.start_main_~b~0#1|)} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,747 INFO L290 TraceCheckUtils]: 25: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,747 INFO L290 TraceCheckUtils]: 26: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,747 INFO L290 TraceCheckUtils]: 27: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,751 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {725#true} {802#(<= 1 |ULTIMATE.start_main_~b~0#1|)} #84#return; {802#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:20,751 INFO L272 TraceCheckUtils]: 29: Hoare triple {802#(<= 1 |ULTIMATE.start_main_~b~0#1|)} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,751 INFO L290 TraceCheckUtils]: 30: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,751 INFO L290 TraceCheckUtils]: 31: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,751 INFO L290 TraceCheckUtils]: 32: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,752 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {725#true} {802#(<= 1 |ULTIMATE.start_main_~b~0#1|)} #86#return; {802#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:20,752 INFO L290 TraceCheckUtils]: 34: Hoare triple {802#(<= 1 |ULTIMATE.start_main_~b~0#1|)} assume !false; {802#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:20,753 INFO L290 TraceCheckUtils]: 35: Hoare triple {802#(<= 1 |ULTIMATE.start_main_~b~0#1|)} assume !!(0 != main_~b~0#1);main_~c~0#1 := main_~a~0#1;main_~k~0#1 := 0; {839#(and (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~c~0#1|) (<= 1 |ULTIMATE.start_main_~b~0#1|) (= |ULTIMATE.start_main_~k~0#1| 0))} is VALID [2022-02-20 17:22:20,753 INFO L290 TraceCheckUtils]: 36: Hoare triple {839#(and (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~c~0#1|) (<= 1 |ULTIMATE.start_main_~b~0#1|) (= |ULTIMATE.start_main_~k~0#1| 0))} assume !false; {839#(and (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~c~0#1|) (<= 1 |ULTIMATE.start_main_~b~0#1|) (= |ULTIMATE.start_main_~k~0#1| 0))} is VALID [2022-02-20 17:22:20,754 INFO L272 TraceCheckUtils]: 37: Hoare triple {839#(and (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~c~0#1|) (<= 1 |ULTIMATE.start_main_~b~0#1|) (= |ULTIMATE.start_main_~k~0#1| 0))} call __VERIFIER_assert((if main_~a~0#1 == main_~k~0#1 * main_~b~0#1 + main_~c~0#1 then 1 else 0)); {846#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:22:20,754 INFO L290 TraceCheckUtils]: 38: Hoare triple {846#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {850#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:22:20,755 INFO L290 TraceCheckUtils]: 39: Hoare triple {850#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {726#false} is VALID [2022-02-20 17:22:20,755 INFO L290 TraceCheckUtils]: 40: Hoare triple {726#false} assume !false; {726#false} is VALID [2022-02-20 17:22:20,755 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-02-20 17:22:20,755 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:22:20,972 INFO L290 TraceCheckUtils]: 40: Hoare triple {726#false} assume !false; {726#false} is VALID [2022-02-20 17:22:20,972 INFO L290 TraceCheckUtils]: 39: Hoare triple {850#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {726#false} is VALID [2022-02-20 17:22:20,973 INFO L290 TraceCheckUtils]: 38: Hoare triple {846#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {850#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:22:20,974 INFO L272 TraceCheckUtils]: 37: Hoare triple {866#(= |ULTIMATE.start_main_~a~0#1| (+ |ULTIMATE.start_main_~c~0#1| (* |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~k~0#1|)))} call __VERIFIER_assert((if main_~a~0#1 == main_~k~0#1 * main_~b~0#1 + main_~c~0#1 then 1 else 0)); {846#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:22:20,974 INFO L290 TraceCheckUtils]: 36: Hoare triple {866#(= |ULTIMATE.start_main_~a~0#1| (+ |ULTIMATE.start_main_~c~0#1| (* |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~k~0#1|)))} assume !false; {866#(= |ULTIMATE.start_main_~a~0#1| (+ |ULTIMATE.start_main_~c~0#1| (* |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~k~0#1|)))} is VALID [2022-02-20 17:22:20,974 INFO L290 TraceCheckUtils]: 35: Hoare triple {725#true} assume !!(0 != main_~b~0#1);main_~c~0#1 := main_~a~0#1;main_~k~0#1 := 0; {866#(= |ULTIMATE.start_main_~a~0#1| (+ |ULTIMATE.start_main_~c~0#1| (* |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~k~0#1|)))} is VALID [2022-02-20 17:22:20,974 INFO L290 TraceCheckUtils]: 34: Hoare triple {725#true} assume !false; {725#true} is VALID [2022-02-20 17:22:20,975 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {725#true} {725#true} #86#return; {725#true} is VALID [2022-02-20 17:22:20,975 INFO L290 TraceCheckUtils]: 32: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,975 INFO L290 TraceCheckUtils]: 31: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,975 INFO L290 TraceCheckUtils]: 30: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,975 INFO L272 TraceCheckUtils]: 29: Hoare triple {725#true} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,975 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {725#true} {725#true} #84#return; {725#true} is VALID [2022-02-20 17:22:20,975 INFO L290 TraceCheckUtils]: 27: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,975 INFO L290 TraceCheckUtils]: 26: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,975 INFO L290 TraceCheckUtils]: 25: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,975 INFO L272 TraceCheckUtils]: 24: Hoare triple {725#true} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,975 INFO L290 TraceCheckUtils]: 23: Hoare triple {725#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {725#true} is VALID [2022-02-20 17:22:20,976 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {725#true} {725#true} #82#return; {725#true} is VALID [2022-02-20 17:22:20,976 INFO L290 TraceCheckUtils]: 21: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,976 INFO L290 TraceCheckUtils]: 20: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,976 INFO L290 TraceCheckUtils]: 19: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,976 INFO L272 TraceCheckUtils]: 18: Hoare triple {725#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,976 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {725#true} {725#true} #80#return; {725#true} is VALID [2022-02-20 17:22:20,976 INFO L290 TraceCheckUtils]: 16: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,976 INFO L290 TraceCheckUtils]: 15: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,976 INFO L290 TraceCheckUtils]: 14: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,976 INFO L272 TraceCheckUtils]: 13: Hoare triple {725#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,976 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {725#true} {725#true} #78#return; {725#true} is VALID [2022-02-20 17:22:20,976 INFO L290 TraceCheckUtils]: 11: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,977 INFO L290 TraceCheckUtils]: 10: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,977 INFO L290 TraceCheckUtils]: 9: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,977 INFO L272 TraceCheckUtils]: 8: Hoare triple {725#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,977 INFO L290 TraceCheckUtils]: 7: Hoare triple {725#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {725#true} is VALID [2022-02-20 17:22:20,978 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {725#true} {725#true} #76#return; {725#true} is VALID [2022-02-20 17:22:20,978 INFO L290 TraceCheckUtils]: 5: Hoare triple {725#true} assume true; {725#true} is VALID [2022-02-20 17:22:20,978 INFO L290 TraceCheckUtils]: 4: Hoare triple {725#true} assume !(0 == ~cond); {725#true} is VALID [2022-02-20 17:22:20,978 INFO L290 TraceCheckUtils]: 3: Hoare triple {725#true} ~cond := #in~cond; {725#true} is VALID [2022-02-20 17:22:20,978 INFO L272 TraceCheckUtils]: 2: Hoare triple {725#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {725#true} is VALID [2022-02-20 17:22:20,978 INFO L290 TraceCheckUtils]: 1: Hoare triple {725#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {725#true} is VALID [2022-02-20 17:22:20,978 INFO L290 TraceCheckUtils]: 0: Hoare triple {725#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {725#true} is VALID [2022-02-20 17:22:20,978 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-02-20 17:22:20,978 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:22:20,979 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [902938670] [2022-02-20 17:22:20,979 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:22:20,979 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [97082472] [2022-02-20 17:22:20,979 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [97082472] provided 1 perfect and 1 imperfect interpolant sequences [2022-02-20 17:22:20,979 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 17:22:20,980 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-02-20 17:22:20,980 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1353032422] [2022-02-20 17:22:20,980 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:22:20,981 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.6) internal successors, (13), 4 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 41 [2022-02-20 17:22:20,981 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:22:20,981 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.6) internal successors, (13), 4 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:22:21,009 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:22:21,009 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:22:21,009 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:22:21,010 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:22:21,010 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-02-20 17:22:21,010 INFO L87 Difference]: Start difference. First operand 33 states and 44 transitions. Second operand has 5 states, 5 states have (on average 2.6) internal successors, (13), 4 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:22:21,213 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:21,214 INFO L93 Difference]: Finished difference Result 39 states and 49 transitions. [2022-02-20 17:22:21,214 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:22:21,214 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.6) internal successors, (13), 4 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 41 [2022-02-20 17:22:21,214 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:22:21,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.6) internal successors, (13), 4 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:22:21,216 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-02-20 17:22:21,216 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.6) internal successors, (13), 4 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:22:21,217 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-02-20 17:22:21,217 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 47 transitions. [2022-02-20 17:22:21,288 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:22:21,290 INFO L225 Difference]: With dead ends: 39 [2022-02-20 17:22:21,290 INFO L226 Difference]: Without dead ends: 37 [2022-02-20 17:22:21,290 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 71 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-02-20 17:22:21,291 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 6 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 29 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 29 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:22:21,291 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 130 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 29 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:22:21,292 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-02-20 17:22:21,308 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-02-20 17:22:21,309 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:22:21,309 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 12 states have call successors, (12), 3 states have call predecessors, (12), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:21,310 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 12 states have call successors, (12), 3 states have call predecessors, (12), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:21,310 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 12 states have call successors, (12), 3 states have call predecessors, (12), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:21,312 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:21,312 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-02-20 17:22:21,312 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-02-20 17:22:21,312 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:22:21,313 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:22:21,313 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 12 states have call successors, (12), 3 states have call predecessors, (12), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 37 states. [2022-02-20 17:22:21,313 INFO L87 Difference]: Start difference. First operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 12 states have call successors, (12), 3 states have call predecessors, (12), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 37 states. [2022-02-20 17:22:21,315 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:21,315 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-02-20 17:22:21,315 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-02-20 17:22:21,315 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:22:21,315 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:22:21,315 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:22:21,316 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:22:21,316 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 12 states have call successors, (12), 3 states have call predecessors, (12), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-02-20 17:22:21,317 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 47 transitions. [2022-02-20 17:22:21,317 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 47 transitions. Word has length 41 [2022-02-20 17:22:21,318 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:22:21,318 INFO L470 AbstractCegarLoop]: Abstraction has 37 states and 47 transitions. [2022-02-20 17:22:21,318 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.6) internal successors, (13), 4 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:22:21,318 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-02-20 17:22:21,319 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-02-20 17:22:21,319 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:22:21,319 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:22:21,340 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-02-20 17:22:21,533 WARN L452 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-02-20 17:22:21,533 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:22:21,534 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:22:21,534 INFO L85 PathProgramCache]: Analyzing trace with hash -1626076469, now seen corresponding path program 1 times [2022-02-20 17:22:21,534 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:22:21,535 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1126143237] [2022-02-20 17:22:21,535 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:21,535 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:22:21,552 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:22:21,553 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [271470354] [2022-02-20 17:22:21,553 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:21,553 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:22:21,553 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:22:21,554 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-02-20 17:22:21,562 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-02-20 17:22:21,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:21,601 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 17:22:21,626 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:21,627 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:22:21,772 INFO L290 TraceCheckUtils]: 0: Hoare triple {1165#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1165#true} is VALID [2022-02-20 17:22:21,772 INFO L290 TraceCheckUtils]: 1: Hoare triple {1165#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1165#true} is VALID [2022-02-20 17:22:21,773 INFO L272 TraceCheckUtils]: 2: Hoare triple {1165#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {1165#true} is VALID [2022-02-20 17:22:21,773 INFO L290 TraceCheckUtils]: 3: Hoare triple {1165#true} ~cond := #in~cond; {1165#true} is VALID [2022-02-20 17:22:21,773 INFO L290 TraceCheckUtils]: 4: Hoare triple {1165#true} assume !(0 == ~cond); {1165#true} is VALID [2022-02-20 17:22:21,773 INFO L290 TraceCheckUtils]: 5: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-02-20 17:22:21,773 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1165#true} {1165#true} #76#return; {1165#true} is VALID [2022-02-20 17:22:21,773 INFO L290 TraceCheckUtils]: 7: Hoare triple {1165#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1165#true} is VALID [2022-02-20 17:22:21,773 INFO L272 TraceCheckUtils]: 8: Hoare triple {1165#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {1165#true} is VALID [2022-02-20 17:22:21,773 INFO L290 TraceCheckUtils]: 9: Hoare triple {1165#true} ~cond := #in~cond; {1165#true} is VALID [2022-02-20 17:22:21,774 INFO L290 TraceCheckUtils]: 10: Hoare triple {1165#true} assume !(0 == ~cond); {1165#true} is VALID [2022-02-20 17:22:21,774 INFO L290 TraceCheckUtils]: 11: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-02-20 17:22:21,774 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1165#true} {1165#true} #78#return; {1165#true} is VALID [2022-02-20 17:22:21,774 INFO L272 TraceCheckUtils]: 13: Hoare triple {1165#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {1165#true} is VALID [2022-02-20 17:22:21,774 INFO L290 TraceCheckUtils]: 14: Hoare triple {1165#true} ~cond := #in~cond; {1165#true} is VALID [2022-02-20 17:22:21,774 INFO L290 TraceCheckUtils]: 15: Hoare triple {1165#true} assume !(0 == ~cond); {1165#true} is VALID [2022-02-20 17:22:21,774 INFO L290 TraceCheckUtils]: 16: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-02-20 17:22:21,774 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1165#true} {1165#true} #80#return; {1165#true} is VALID [2022-02-20 17:22:21,775 INFO L272 TraceCheckUtils]: 18: Hoare triple {1165#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {1165#true} is VALID [2022-02-20 17:22:21,775 INFO L290 TraceCheckUtils]: 19: Hoare triple {1165#true} ~cond := #in~cond; {1165#true} is VALID [2022-02-20 17:22:21,775 INFO L290 TraceCheckUtils]: 20: Hoare triple {1165#true} assume !(0 == ~cond); {1165#true} is VALID [2022-02-20 17:22:21,775 INFO L290 TraceCheckUtils]: 21: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-02-20 17:22:21,775 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1165#true} {1165#true} #82#return; {1165#true} is VALID [2022-02-20 17:22:21,779 INFO L290 TraceCheckUtils]: 23: Hoare triple {1165#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:21,780 INFO L272 TraceCheckUtils]: 24: Hoare triple {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {1165#true} is VALID [2022-02-20 17:22:21,780 INFO L290 TraceCheckUtils]: 25: Hoare triple {1165#true} ~cond := #in~cond; {1165#true} is VALID [2022-02-20 17:22:21,780 INFO L290 TraceCheckUtils]: 26: Hoare triple {1165#true} assume !(0 == ~cond); {1165#true} is VALID [2022-02-20 17:22:21,780 INFO L290 TraceCheckUtils]: 27: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-02-20 17:22:21,781 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1165#true} {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} #84#return; {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:21,781 INFO L272 TraceCheckUtils]: 29: Hoare triple {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {1165#true} is VALID [2022-02-20 17:22:21,781 INFO L290 TraceCheckUtils]: 30: Hoare triple {1165#true} ~cond := #in~cond; {1165#true} is VALID [2022-02-20 17:22:21,781 INFO L290 TraceCheckUtils]: 31: Hoare triple {1165#true} assume !(0 == ~cond); {1165#true} is VALID [2022-02-20 17:22:21,781 INFO L290 TraceCheckUtils]: 32: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-02-20 17:22:21,782 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1165#true} {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} #86#return; {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:21,782 INFO L290 TraceCheckUtils]: 34: Hoare triple {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} assume !false; {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:21,783 INFO L290 TraceCheckUtils]: 35: Hoare triple {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} assume !!(0 != main_~b~0#1);main_~c~0#1 := main_~a~0#1;main_~k~0#1 := 0; {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:21,783 INFO L290 TraceCheckUtils]: 36: Hoare triple {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} assume !false; {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:21,783 INFO L272 TraceCheckUtils]: 37: Hoare triple {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} call __VERIFIER_assert((if main_~a~0#1 == main_~k~0#1 * main_~b~0#1 + main_~c~0#1 then 1 else 0)); {1165#true} is VALID [2022-02-20 17:22:21,783 INFO L290 TraceCheckUtils]: 38: Hoare triple {1165#true} ~cond := #in~cond; {1165#true} is VALID [2022-02-20 17:22:21,783 INFO L290 TraceCheckUtils]: 39: Hoare triple {1165#true} assume !(0 == ~cond); {1165#true} is VALID [2022-02-20 17:22:21,783 INFO L290 TraceCheckUtils]: 40: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-02-20 17:22:21,784 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1165#true} {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} #88#return; {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:21,785 INFO L272 TraceCheckUtils]: 42: Hoare triple {1239#(and (= |ULTIMATE.start_main_~p~0#1| 1) (= |ULTIMATE.start_main_~r~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {1297#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:22:21,785 INFO L290 TraceCheckUtils]: 43: Hoare triple {1297#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1301#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:22:21,785 INFO L290 TraceCheckUtils]: 44: Hoare triple {1301#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1166#false} is VALID [2022-02-20 17:22:21,786 INFO L290 TraceCheckUtils]: 45: Hoare triple {1166#false} assume !false; {1166#false} is VALID [2022-02-20 17:22:21,786 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-02-20 17:22:21,786 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:22:21,786 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:22:21,786 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1126143237] [2022-02-20 17:22:21,786 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:22:21,787 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [271470354] [2022-02-20 17:22:21,787 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [271470354] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:22:21,787 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:22:21,787 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:22:21,787 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [85882212] [2022-02-20 17:22:21,787 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:22:21,788 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 46 [2022-02-20 17:22:21,788 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:22:21,788 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 17:22:21,816 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:22:21,816 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:22:21,816 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:22:21,817 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:22:21,817 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:22:21,817 INFO L87 Difference]: Start difference. First operand 37 states and 47 transitions. Second operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 17:22:21,976 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:21,977 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2022-02-20 17:22:21,977 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:22:21,977 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 46 [2022-02-20 17:22:21,977 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:22:21,978 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 17:22:21,979 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-02-20 17:22:21,979 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 17:22:21,980 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-02-20 17:22:21,981 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 61 transitions. [2022-02-20 17:22:22,025 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:22:22,026 INFO L225 Difference]: With dead ends: 50 [2022-02-20 17:22:22,026 INFO L226 Difference]: Without dead ends: 48 [2022-02-20 17:22:22,026 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 42 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-02-20 17:22:22,027 INFO L933 BasicCegarLoop]: 44 mSDtfsCounter, 7 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 26 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 26 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:22:22,027 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 157 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 26 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:22:22,028 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-02-20 17:22:22,048 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 47. [2022-02-20 17:22:22,049 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:22:22,049 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 47 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 27 states have internal predecessors, (30), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:22:22,050 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 47 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 27 states have internal predecessors, (30), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:22:22,050 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 47 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 27 states have internal predecessors, (30), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:22:22,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:22,052 INFO L93 Difference]: Finished difference Result 48 states and 62 transitions. [2022-02-20 17:22:22,052 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 62 transitions. [2022-02-20 17:22:22,053 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:22:22,053 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:22:22,053 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 27 states have internal predecessors, (30), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 48 states. [2022-02-20 17:22:22,054 INFO L87 Difference]: Start difference. First operand has 47 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 27 states have internal predecessors, (30), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 48 states. [2022-02-20 17:22:22,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:22,056 INFO L93 Difference]: Finished difference Result 48 states and 62 transitions. [2022-02-20 17:22:22,056 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 62 transitions. [2022-02-20 17:22:22,056 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:22:22,056 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:22:22,057 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:22:22,057 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:22:22,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 27 states have internal predecessors, (30), 16 states have call successors, (16), 4 states have call predecessors, (16), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:22:22,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 61 transitions. [2022-02-20 17:22:22,059 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 61 transitions. Word has length 46 [2022-02-20 17:22:22,059 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:22:22,059 INFO L470 AbstractCegarLoop]: Abstraction has 47 states and 61 transitions. [2022-02-20 17:22:22,060 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 17:22:22,060 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 61 transitions. [2022-02-20 17:22:22,060 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-02-20 17:22:22,061 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:22:22,061 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:22:22,085 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-20 17:22:22,281 WARN L452 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-02-20 17:22:22,282 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:22:22,282 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:22:22,282 INFO L85 PathProgramCache]: Analyzing trace with hash 779090230, now seen corresponding path program 1 times [2022-02-20 17:22:22,282 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:22:22,282 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1625384545] [2022-02-20 17:22:22,282 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:22,282 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:22:22,315 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:22:22,315 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1825526939] [2022-02-20 17:22:22,315 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:22,315 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:22:22,315 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:22:22,344 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-02-20 17:22:22,345 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-02-20 17:22:22,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:22,395 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 19 conjunts are in the unsatisfiable core [2022-02-20 17:22:22,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:22,405 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:22:22,768 INFO L290 TraceCheckUtils]: 0: Hoare triple {1550#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1550#true} is VALID [2022-02-20 17:22:22,768 INFO L290 TraceCheckUtils]: 1: Hoare triple {1550#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1550#true} is VALID [2022-02-20 17:22:22,768 INFO L272 TraceCheckUtils]: 2: Hoare triple {1550#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:22,769 INFO L290 TraceCheckUtils]: 3: Hoare triple {1550#true} ~cond := #in~cond; {1564#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:22:22,769 INFO L290 TraceCheckUtils]: 4: Hoare triple {1564#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1568#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:22,769 INFO L290 TraceCheckUtils]: 5: Hoare triple {1568#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1568#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:22,770 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1568#(not (= |assume_abort_if_not_#in~cond| 0))} {1550#true} #76#return; {1575#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 0 |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:22,770 INFO L290 TraceCheckUtils]: 7: Hoare triple {1575#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 0 |ULTIMATE.start_main_~x~0#1|))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1575#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 0 |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:22,770 INFO L272 TraceCheckUtils]: 8: Hoare triple {1575#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 0 |ULTIMATE.start_main_~x~0#1|))} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:22,770 INFO L290 TraceCheckUtils]: 9: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:22,770 INFO L290 TraceCheckUtils]: 10: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:22,770 INFO L290 TraceCheckUtils]: 11: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:22,771 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1550#true} {1575#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 0 |ULTIMATE.start_main_~x~0#1|))} #78#return; {1575#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 0 |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:22,771 INFO L272 TraceCheckUtils]: 13: Hoare triple {1575#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 0 |ULTIMATE.start_main_~x~0#1|))} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:22,772 INFO L290 TraceCheckUtils]: 14: Hoare triple {1550#true} ~cond := #in~cond; {1564#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:22:22,772 INFO L290 TraceCheckUtils]: 15: Hoare triple {1564#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1568#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:22,772 INFO L290 TraceCheckUtils]: 16: Hoare triple {1568#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1568#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:22,773 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1568#(not (= |assume_abort_if_not_#in~cond| 0))} {1575#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 0 |ULTIMATE.start_main_~x~0#1|))} #80#return; {1609#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 1 |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:22,773 INFO L272 TraceCheckUtils]: 18: Hoare triple {1609#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 1 |ULTIMATE.start_main_~x~0#1|))} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:22,773 INFO L290 TraceCheckUtils]: 19: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:22,773 INFO L290 TraceCheckUtils]: 20: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:22,773 INFO L290 TraceCheckUtils]: 21: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:22,773 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1550#true} {1609#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 1 |ULTIMATE.start_main_~x~0#1|))} #82#return; {1609#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 1 |ULTIMATE.start_main_~x~0#1|))} is VALID [2022-02-20 17:22:22,774 INFO L290 TraceCheckUtils]: 23: Hoare triple {1609#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (<= 1 |ULTIMATE.start_main_~x~0#1|))} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:22,774 INFO L272 TraceCheckUtils]: 24: Hoare triple {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:22,774 INFO L290 TraceCheckUtils]: 25: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:22,774 INFO L290 TraceCheckUtils]: 26: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:22,774 INFO L290 TraceCheckUtils]: 27: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:22,775 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1550#true} {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #84#return; {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:22,775 INFO L272 TraceCheckUtils]: 29: Hoare triple {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:22,775 INFO L290 TraceCheckUtils]: 30: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:22,775 INFO L290 TraceCheckUtils]: 31: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:22,775 INFO L290 TraceCheckUtils]: 32: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:22,776 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1550#true} {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #86#return; {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:22,776 INFO L290 TraceCheckUtils]: 34: Hoare triple {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !false; {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:22,776 INFO L290 TraceCheckUtils]: 35: Hoare triple {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !!(0 != main_~b~0#1);main_~c~0#1 := main_~a~0#1;main_~k~0#1 := 0; {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:22,777 INFO L290 TraceCheckUtils]: 36: Hoare triple {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !false; {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:22,777 INFO L272 TraceCheckUtils]: 37: Hoare triple {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~k~0#1 * main_~b~0#1 + main_~c~0#1 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:22,777 INFO L290 TraceCheckUtils]: 38: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:22,777 INFO L290 TraceCheckUtils]: 39: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:22,777 INFO L290 TraceCheckUtils]: 40: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:22,778 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1550#true} {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #88#return; {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:22,778 INFO L272 TraceCheckUtils]: 42: Hoare triple {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:22,778 INFO L290 TraceCheckUtils]: 43: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:22,778 INFO L290 TraceCheckUtils]: 44: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:22,778 INFO L290 TraceCheckUtils]: 45: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:22,779 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {1550#true} {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #90#return; {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:22,779 INFO L272 TraceCheckUtils]: 47: Hoare triple {1628#(and (<= |ULTIMATE.start_main_~x~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (<= 1 |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {1701#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:22:22,780 INFO L290 TraceCheckUtils]: 48: Hoare triple {1701#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1705#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:22:22,780 INFO L290 TraceCheckUtils]: 49: Hoare triple {1705#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1551#false} is VALID [2022-02-20 17:22:22,780 INFO L290 TraceCheckUtils]: 50: Hoare triple {1551#false} assume !false; {1551#false} is VALID [2022-02-20 17:22:22,781 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 7 proven. 21 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-02-20 17:22:22,781 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:22:23,087 INFO L290 TraceCheckUtils]: 50: Hoare triple {1551#false} assume !false; {1551#false} is VALID [2022-02-20 17:22:23,087 INFO L290 TraceCheckUtils]: 49: Hoare triple {1705#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1551#false} is VALID [2022-02-20 17:22:23,088 INFO L290 TraceCheckUtils]: 48: Hoare triple {1701#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1705#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:22:23,088 INFO L272 TraceCheckUtils]: 47: Hoare triple {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {1701#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:22:23,089 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {1550#true} {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} #90#return; {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:23,089 INFO L290 TraceCheckUtils]: 45: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:23,089 INFO L290 TraceCheckUtils]: 44: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:23,089 INFO L290 TraceCheckUtils]: 43: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:23,089 INFO L272 TraceCheckUtils]: 42: Hoare triple {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:23,092 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1550#true} {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} #88#return; {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:23,093 INFO L290 TraceCheckUtils]: 40: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:23,093 INFO L290 TraceCheckUtils]: 39: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:23,093 INFO L290 TraceCheckUtils]: 38: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:23,093 INFO L272 TraceCheckUtils]: 37: Hoare triple {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} call __VERIFIER_assert((if main_~a~0#1 == main_~k~0#1 * main_~b~0#1 + main_~c~0#1 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:23,093 INFO L290 TraceCheckUtils]: 36: Hoare triple {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} assume !false; {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:23,093 INFO L290 TraceCheckUtils]: 35: Hoare triple {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} assume !!(0 != main_~b~0#1);main_~c~0#1 := main_~a~0#1;main_~k~0#1 := 0; {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:23,094 INFO L290 TraceCheckUtils]: 34: Hoare triple {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} assume !false; {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:23,094 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1550#true} {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} #86#return; {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:23,094 INFO L290 TraceCheckUtils]: 32: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:23,094 INFO L290 TraceCheckUtils]: 31: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:23,094 INFO L290 TraceCheckUtils]: 30: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:23,094 INFO L272 TraceCheckUtils]: 29: Hoare triple {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:23,095 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1550#true} {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} #84#return; {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:23,095 INFO L290 TraceCheckUtils]: 27: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:23,095 INFO L290 TraceCheckUtils]: 26: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:23,095 INFO L290 TraceCheckUtils]: 25: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:23,095 INFO L272 TraceCheckUtils]: 24: Hoare triple {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L290 TraceCheckUtils]: 23: Hoare triple {1550#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {1721#(= (+ (* |ULTIMATE.start_main_~s~0#1| |ULTIMATE.start_main_~y~0#1|) (* |ULTIMATE.start_main_~q~0#1| |ULTIMATE.start_main_~x~0#1|)) |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:22:23,096 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1550#true} {1550#true} #82#return; {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L290 TraceCheckUtils]: 21: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L290 TraceCheckUtils]: 20: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L290 TraceCheckUtils]: 19: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L272 TraceCheckUtils]: 18: Hoare triple {1550#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1550#true} {1550#true} #80#return; {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L290 TraceCheckUtils]: 16: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L290 TraceCheckUtils]: 15: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L290 TraceCheckUtils]: 14: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L272 TraceCheckUtils]: 13: Hoare triple {1550#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1550#true} {1550#true} #78#return; {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L290 TraceCheckUtils]: 11: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:23,096 INFO L290 TraceCheckUtils]: 10: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L290 TraceCheckUtils]: 9: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L272 TraceCheckUtils]: 8: Hoare triple {1550#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L290 TraceCheckUtils]: 7: Hoare triple {1550#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1550#true} {1550#true} #76#return; {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L290 TraceCheckUtils]: 5: Hoare triple {1550#true} assume true; {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L290 TraceCheckUtils]: 4: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L290 TraceCheckUtils]: 3: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L272 TraceCheckUtils]: 2: Hoare triple {1550#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L290 TraceCheckUtils]: 1: Hoare triple {1550#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L290 TraceCheckUtils]: 0: Hoare triple {1550#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1550#true} is VALID [2022-02-20 17:22:23,097 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-02-20 17:22:23,097 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:22:23,097 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1625384545] [2022-02-20 17:22:23,098 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:22:23,098 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1825526939] [2022-02-20 17:22:23,098 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1825526939] provided 1 perfect and 1 imperfect interpolant sequences [2022-02-20 17:22:23,098 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 17:22:23,098 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-02-20 17:22:23,098 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [540840276] [2022-02-20 17:22:23,098 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:22:23,098 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-02-20 17:22:23,099 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:22:23,099 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-20 17:22:23,123 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:22:23,123 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:22:23,123 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:22:23,123 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:22:23,123 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-02-20 17:22:23,124 INFO L87 Difference]: Start difference. First operand 47 states and 61 transitions. Second operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-20 17:22:23,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:23,384 INFO L93 Difference]: Finished difference Result 54 states and 67 transitions. [2022-02-20 17:22:23,384 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:22:23,384 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-02-20 17:22:23,384 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:22:23,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-20 17:22:23,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-02-20 17:22:23,385 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-20 17:22:23,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-02-20 17:22:23,387 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 61 transitions. [2022-02-20 17:22:23,436 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:22:23,437 INFO L225 Difference]: With dead ends: 54 [2022-02-20 17:22:23,437 INFO L226 Difference]: Without dead ends: 52 [2022-02-20 17:22:23,438 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 91 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-02-20 17:22:23,438 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 7 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 147 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:22:23,438 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 147 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:22:23,439 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-02-20 17:22:23,459 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 51. [2022-02-20 17:22:23,459 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:22:23,459 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 51 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 16 states have call successors, (16), 5 states have call predecessors, (16), 5 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:22:23,459 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 51 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 16 states have call successors, (16), 5 states have call predecessors, (16), 5 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:22:23,459 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 51 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 16 states have call successors, (16), 5 states have call predecessors, (16), 5 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:22:23,461 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:23,461 INFO L93 Difference]: Finished difference Result 52 states and 65 transitions. [2022-02-20 17:22:23,461 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 65 transitions. [2022-02-20 17:22:23,461 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:22:23,461 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:22:23,462 INFO L74 IsIncluded]: Start isIncluded. First operand has 51 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 16 states have call successors, (16), 5 states have call predecessors, (16), 5 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 52 states. [2022-02-20 17:22:23,462 INFO L87 Difference]: Start difference. First operand has 51 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 16 states have call successors, (16), 5 states have call predecessors, (16), 5 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 52 states. [2022-02-20 17:22:23,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:22:23,463 INFO L93 Difference]: Finished difference Result 52 states and 65 transitions. [2022-02-20 17:22:23,463 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 65 transitions. [2022-02-20 17:22:23,464 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:22:23,464 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:22:23,464 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:22:23,464 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:22:23,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 16 states have call successors, (16), 5 states have call predecessors, (16), 5 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:22:23,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 64 transitions. [2022-02-20 17:22:23,465 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 64 transitions. Word has length 51 [2022-02-20 17:22:23,466 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:22:23,466 INFO L470 AbstractCegarLoop]: Abstraction has 51 states and 64 transitions. [2022-02-20 17:22:23,466 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-20 17:22:23,466 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 64 transitions. [2022-02-20 17:22:23,466 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-02-20 17:22:23,466 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:22:23,466 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:22:23,502 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-02-20 17:22:23,683 WARN L452 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-02-20 17:22:23,684 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:22:23,684 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:22:23,684 INFO L85 PathProgramCache]: Analyzing trace with hash -670274197, now seen corresponding path program 1 times [2022-02-20 17:22:23,684 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:22:23,684 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [227839432] [2022-02-20 17:22:23,684 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:23,684 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:22:23,697 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:22:23,697 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1525166543] [2022-02-20 17:22:23,697 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:22:23,697 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:22:23,697 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:22:23,698 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-02-20 17:22:23,716 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-02-20 17:22:23,757 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:23,758 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 22 conjunts are in the unsatisfiable core [2022-02-20 17:22:23,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:22:23,773 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:22:24,379 INFO L290 TraceCheckUtils]: 0: Hoare triple {2123#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2123#true} is VALID [2022-02-20 17:22:24,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {2123#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2123#true} is VALID [2022-02-20 17:22:24,379 INFO L272 TraceCheckUtils]: 2: Hoare triple {2123#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {2123#true} is VALID [2022-02-20 17:22:24,379 INFO L290 TraceCheckUtils]: 3: Hoare triple {2123#true} ~cond := #in~cond; {2123#true} is VALID [2022-02-20 17:22:24,379 INFO L290 TraceCheckUtils]: 4: Hoare triple {2123#true} assume !(0 == ~cond); {2123#true} is VALID [2022-02-20 17:22:24,379 INFO L290 TraceCheckUtils]: 5: Hoare triple {2123#true} assume true; {2123#true} is VALID [2022-02-20 17:22:24,379 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2123#true} {2123#true} #76#return; {2123#true} is VALID [2022-02-20 17:22:24,379 INFO L290 TraceCheckUtils]: 7: Hoare triple {2123#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {2123#true} is VALID [2022-02-20 17:22:24,379 INFO L272 TraceCheckUtils]: 8: Hoare triple {2123#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {2123#true} is VALID [2022-02-20 17:22:24,381 INFO L290 TraceCheckUtils]: 9: Hoare triple {2123#true} ~cond := #in~cond; {2155#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:22:24,381 INFO L290 TraceCheckUtils]: 10: Hoare triple {2155#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2159#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:24,382 INFO L290 TraceCheckUtils]: 11: Hoare triple {2159#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2159#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:22:24,382 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2159#(not (= |assume_abort_if_not_#in~cond| 0))} {2123#true} #78#return; {2166#(and (<= |ULTIMATE.start_main_~y~0#1| 5) (<= 0 |ULTIMATE.start_main_~y~0#1|))} is VALID [2022-02-20 17:22:24,382 INFO L272 TraceCheckUtils]: 13: Hoare triple {2166#(and (<= |ULTIMATE.start_main_~y~0#1| 5) (<= 0 |ULTIMATE.start_main_~y~0#1|))} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {2123#true} is VALID [2022-02-20 17:22:24,382 INFO L290 TraceCheckUtils]: 14: Hoare triple {2123#true} ~cond := #in~cond; {2123#true} is VALID [2022-02-20 17:22:24,382 INFO L290 TraceCheckUtils]: 15: Hoare triple {2123#true} assume !(0 == ~cond); {2123#true} is VALID [2022-02-20 17:22:24,382 INFO L290 TraceCheckUtils]: 16: Hoare triple {2123#true} assume true; {2123#true} is VALID [2022-02-20 17:22:24,383 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {2123#true} {2166#(and (<= |ULTIMATE.start_main_~y~0#1| 5) (<= 0 |ULTIMATE.start_main_~y~0#1|))} #80#return; {2166#(and (<= |ULTIMATE.start_main_~y~0#1| 5) (<= 0 |ULTIMATE.start_main_~y~0#1|))} is VALID [2022-02-20 17:22:24,383 INFO L272 TraceCheckUtils]: 18: Hoare triple {2166#(and (<= |ULTIMATE.start_main_~y~0#1| 5) (<= 0 |ULTIMATE.start_main_~y~0#1|))} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {2123#true} is VALID [2022-02-20 17:22:24,383 INFO L290 TraceCheckUtils]: 19: Hoare triple {2123#true} ~cond := #in~cond; {2123#true} is VALID [2022-02-20 17:22:24,383 INFO L290 TraceCheckUtils]: 20: Hoare triple {2123#true} assume !(0 == ~cond); {2123#true} is VALID [2022-02-20 17:22:24,383 INFO L290 TraceCheckUtils]: 21: Hoare triple {2123#true} assume true; {2123#true} is VALID [2022-02-20 17:22:24,383 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2123#true} {2166#(and (<= |ULTIMATE.start_main_~y~0#1| 5) (<= 0 |ULTIMATE.start_main_~y~0#1|))} #82#return; {2166#(and (<= |ULTIMATE.start_main_~y~0#1| 5) (<= 0 |ULTIMATE.start_main_~y~0#1|))} is VALID [2022-02-20 17:22:24,384 INFO L290 TraceCheckUtils]: 23: Hoare triple {2166#(and (<= |ULTIMATE.start_main_~y~0#1| 5) (<= 0 |ULTIMATE.start_main_~y~0#1|))} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {2200#(and (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:24,384 INFO L272 TraceCheckUtils]: 24: Hoare triple {2200#(and (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {2123#true} is VALID [2022-02-20 17:22:24,384 INFO L290 TraceCheckUtils]: 25: Hoare triple {2123#true} ~cond := #in~cond; {2123#true} is VALID [2022-02-20 17:22:24,384 INFO L290 TraceCheckUtils]: 26: Hoare triple {2123#true} assume !(0 == ~cond); {2123#true} is VALID [2022-02-20 17:22:24,384 INFO L290 TraceCheckUtils]: 27: Hoare triple {2123#true} assume true; {2123#true} is VALID [2022-02-20 17:22:24,385 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2123#true} {2200#(and (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #84#return; {2200#(and (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:24,385 INFO L272 TraceCheckUtils]: 29: Hoare triple {2200#(and (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {2123#true} is VALID [2022-02-20 17:22:24,385 INFO L290 TraceCheckUtils]: 30: Hoare triple {2123#true} ~cond := #in~cond; {2123#true} is VALID [2022-02-20 17:22:24,385 INFO L290 TraceCheckUtils]: 31: Hoare triple {2123#true} assume !(0 == ~cond); {2123#true} is VALID [2022-02-20 17:22:24,385 INFO L290 TraceCheckUtils]: 32: Hoare triple {2123#true} assume true; {2123#true} is VALID [2022-02-20 17:22:24,385 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2123#true} {2200#(and (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #86#return; {2200#(and (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:24,386 INFO L290 TraceCheckUtils]: 34: Hoare triple {2200#(and (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !false; {2200#(and (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:24,386 INFO L290 TraceCheckUtils]: 35: Hoare triple {2200#(and (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !!(0 != main_~b~0#1);main_~c~0#1 := main_~a~0#1;main_~k~0#1 := 0; {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:24,387 INFO L290 TraceCheckUtils]: 36: Hoare triple {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !false; {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:24,387 INFO L272 TraceCheckUtils]: 37: Hoare triple {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~k~0#1 * main_~b~0#1 + main_~c~0#1 then 1 else 0)); {2123#true} is VALID [2022-02-20 17:22:24,387 INFO L290 TraceCheckUtils]: 38: Hoare triple {2123#true} ~cond := #in~cond; {2123#true} is VALID [2022-02-20 17:22:24,387 INFO L290 TraceCheckUtils]: 39: Hoare triple {2123#true} assume !(0 == ~cond); {2123#true} is VALID [2022-02-20 17:22:24,387 INFO L290 TraceCheckUtils]: 40: Hoare triple {2123#true} assume true; {2123#true} is VALID [2022-02-20 17:22:24,388 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2123#true} {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #88#return; {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:24,388 INFO L272 TraceCheckUtils]: 42: Hoare triple {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {2123#true} is VALID [2022-02-20 17:22:24,388 INFO L290 TraceCheckUtils]: 43: Hoare triple {2123#true} ~cond := #in~cond; {2123#true} is VALID [2022-02-20 17:22:24,388 INFO L290 TraceCheckUtils]: 44: Hoare triple {2123#true} assume !(0 == ~cond); {2123#true} is VALID [2022-02-20 17:22:24,388 INFO L290 TraceCheckUtils]: 45: Hoare triple {2123#true} assume true; {2123#true} is VALID [2022-02-20 17:22:24,388 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2123#true} {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #90#return; {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:24,389 INFO L272 TraceCheckUtils]: 47: Hoare triple {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {2123#true} is VALID [2022-02-20 17:22:24,389 INFO L290 TraceCheckUtils]: 48: Hoare triple {2123#true} ~cond := #in~cond; {2277#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:22:24,389 INFO L290 TraceCheckUtils]: 49: Hoare triple {2277#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2281#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:22:24,389 INFO L290 TraceCheckUtils]: 50: Hoare triple {2281#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2281#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:22:24,390 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {2281#(not (= |__VERIFIER_assert_#in~cond| 0))} {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #92#return; {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:22:24,391 INFO L272 TraceCheckUtils]: 52: Hoare triple {2237#(and (not (= |ULTIMATE.start_main_~b~0#1| 0)) (= |ULTIMATE.start_main_~yy~0#1| (* |ULTIMATE.start_main_~y~0#1| |ULTIMATE.start_main_~y~0#1|)) (<= |ULTIMATE.start_main_~y~0#1| 5) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (<= 0 |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if 0 == main_~q~0#1 * main_~xy~0#1 + main_~s~0#1 * main_~yy~0#1 - main_~q~0#1 * main_~x~0#1 - main_~b~0#1 * main_~y~0#1 - main_~s~0#1 * main_~y~0#1 + main_~b~0#1 then 1 else 0)); {2291#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:22:24,391 INFO L290 TraceCheckUtils]: 53: Hoare triple {2291#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2295#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:22:24,391 INFO L290 TraceCheckUtils]: 54: Hoare triple {2295#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2124#false} is VALID [2022-02-20 17:22:24,391 INFO L290 TraceCheckUtils]: 55: Hoare triple {2124#false} assume !false; {2124#false} is VALID [2022-02-20 17:22:24,392 INFO L134 CoverageAnalysis]: Checked inductivity of 78 backedges. 14 proven. 13 refuted. 0 times theorem prover too weak. 51 trivial. 0 not checked. [2022-02-20 17:22:24,392 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:23:24,794 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:23:24,794 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [227839432] [2022-02-20 17:23:24,794 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:23:24,794 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1525166543] [2022-02-20 17:23:24,794 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1525166543] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 17:23:24,794 INFO L191 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-02-20 17:23:24,794 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-02-20 17:23:24,794 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [808825774] [2022-02-20 17:23:24,794 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-02-20 17:23:24,795 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.0) internal successors, (22), 9 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 56 [2022-02-20 17:23:24,795 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:23:24,795 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.0) internal successors, (22), 9 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-02-20 17:23:24,829 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:23:24,829 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-02-20 17:23:24,829 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:23:24,829 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-02-20 17:23:24,830 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=124, Unknown=0, NotChecked=0, Total=156 [2022-02-20 17:23:24,830 INFO L87 Difference]: Start difference. First operand 51 states and 64 transitions. Second operand has 11 states, 11 states have (on average 2.0) internal successors, (22), 9 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-02-20 17:23:26,349 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:23:26,349 INFO L93 Difference]: Finished difference Result 60 states and 72 transitions. [2022-02-20 17:23:26,349 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 17:23:26,350 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.0) internal successors, (22), 9 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 56 [2022-02-20 17:23:26,350 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:23:26,350 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.0) internal successors, (22), 9 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-02-20 17:23:26,352 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 63 transitions. [2022-02-20 17:23:26,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.0) internal successors, (22), 9 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-02-20 17:23:26,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 63 transitions. [2022-02-20 17:23:26,357 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 63 transitions. [2022-02-20 17:23:26,409 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:23:26,412 INFO L225 Difference]: With dead ends: 60 [2022-02-20 17:23:26,412 INFO L226 Difference]: Without dead ends: 58 [2022-02-20 17:23:26,412 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 47 SyntacticMatches, 2 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=47, Invalid=193, Unknown=0, NotChecked=0, Total=240 [2022-02-20 17:23:26,413 INFO L933 BasicCegarLoop]: 24 mSDtfsCounter, 31 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 231 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 245 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 231 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 17:23:26,414 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [37 Valid, 145 Invalid, 245 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 231 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 17:23:26,415 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2022-02-20 17:23:26,481 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 55. [2022-02-20 17:23:26,481 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:23:26,482 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand has 55 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 16 states have call successors, (16), 6 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:23:26,482 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand has 55 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 16 states have call successors, (16), 6 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:23:26,483 INFO L87 Difference]: Start difference. First operand 58 states. Second operand has 55 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 16 states have call successors, (16), 6 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:23:26,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:23:26,495 INFO L93 Difference]: Finished difference Result 58 states and 70 transitions. [2022-02-20 17:23:26,495 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 70 transitions. [2022-02-20 17:23:26,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:23:26,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:23:26,497 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 16 states have call successors, (16), 6 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 58 states. [2022-02-20 17:23:26,498 INFO L87 Difference]: Start difference. First operand has 55 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 16 states have call successors, (16), 6 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 58 states. [2022-02-20 17:23:26,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:23:26,501 INFO L93 Difference]: Finished difference Result 58 states and 70 transitions. [2022-02-20 17:23:26,501 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 70 transitions. [2022-02-20 17:23:26,501 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:23:26,501 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:23:26,501 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:23:26,501 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:23:26,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 16 states have call successors, (16), 6 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:23:26,504 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 67 transitions. [2022-02-20 17:23:26,504 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 67 transitions. Word has length 56 [2022-02-20 17:23:26,505 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:23:26,505 INFO L470 AbstractCegarLoop]: Abstraction has 55 states and 67 transitions. [2022-02-20 17:23:26,505 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.0) internal successors, (22), 9 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-02-20 17:23:26,505 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 67 transitions. [2022-02-20 17:23:26,505 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-02-20 17:23:26,506 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:23:26,506 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 5, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:23:26,554 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-02-20 17:23:26,706 WARN L452 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-02-20 17:23:26,707 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:23:26,707 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:23:26,707 INFO L85 PathProgramCache]: Analyzing trace with hash -759965185, now seen corresponding path program 1 times [2022-02-20 17:23:26,707 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:23:26,707 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1285844401] [2022-02-20 17:23:26,708 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:23:26,708 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:23:26,730 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:23:26,730 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1374070658] [2022-02-20 17:23:26,730 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:23:26,730 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:23:26,730 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:23:26,737 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-02-20 17:23:26,738 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-02-20 17:23:26,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:23:26,778 INFO L263 TraceCheckSpWp]: Trace formula consists of 175 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 17:23:26,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:23:26,793 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:23:27,011 INFO L290 TraceCheckUtils]: 0: Hoare triple {2608#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2608#true} is VALID [2022-02-20 17:23:27,011 INFO L290 TraceCheckUtils]: 1: Hoare triple {2608#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2608#true} is VALID [2022-02-20 17:23:27,011 INFO L272 TraceCheckUtils]: 2: Hoare triple {2608#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,011 INFO L290 TraceCheckUtils]: 3: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,012 INFO L290 TraceCheckUtils]: 4: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,012 INFO L290 TraceCheckUtils]: 5: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,012 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2608#true} {2608#true} #76#return; {2608#true} is VALID [2022-02-20 17:23:27,013 INFO L290 TraceCheckUtils]: 7: Hoare triple {2608#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {2608#true} is VALID [2022-02-20 17:23:27,014 INFO L272 TraceCheckUtils]: 8: Hoare triple {2608#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,014 INFO L290 TraceCheckUtils]: 9: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,014 INFO L290 TraceCheckUtils]: 10: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,014 INFO L290 TraceCheckUtils]: 11: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,015 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2608#true} {2608#true} #78#return; {2608#true} is VALID [2022-02-20 17:23:27,015 INFO L272 TraceCheckUtils]: 13: Hoare triple {2608#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,015 INFO L290 TraceCheckUtils]: 14: Hoare triple {2608#true} ~cond := #in~cond; {2655#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 17:23:27,015 INFO L290 TraceCheckUtils]: 15: Hoare triple {2655#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2659#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:23:27,016 INFO L290 TraceCheckUtils]: 16: Hoare triple {2659#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2659#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:23:27,016 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {2659#(not (= |assume_abort_if_not_#in~cond| 0))} {2608#true} #80#return; {2666#(<= 1 |ULTIMATE.start_main_~x~0#1|)} is VALID [2022-02-20 17:23:27,017 INFO L272 TraceCheckUtils]: 18: Hoare triple {2666#(<= 1 |ULTIMATE.start_main_~x~0#1|)} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,017 INFO L290 TraceCheckUtils]: 19: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,017 INFO L290 TraceCheckUtils]: 20: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,017 INFO L290 TraceCheckUtils]: 21: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,017 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2608#true} {2666#(<= 1 |ULTIMATE.start_main_~x~0#1|)} #82#return; {2666#(<= 1 |ULTIMATE.start_main_~x~0#1|)} is VALID [2022-02-20 17:23:27,018 INFO L290 TraceCheckUtils]: 23: Hoare triple {2666#(<= 1 |ULTIMATE.start_main_~x~0#1|)} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:23:27,018 INFO L272 TraceCheckUtils]: 24: Hoare triple {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,018 INFO L290 TraceCheckUtils]: 25: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,018 INFO L290 TraceCheckUtils]: 26: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,018 INFO L290 TraceCheckUtils]: 27: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,019 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2608#true} {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} #84#return; {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:23:27,019 INFO L272 TraceCheckUtils]: 29: Hoare triple {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,019 INFO L290 TraceCheckUtils]: 30: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,019 INFO L290 TraceCheckUtils]: 31: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,019 INFO L290 TraceCheckUtils]: 32: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,020 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2608#true} {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} #86#return; {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:23:27,028 INFO L290 TraceCheckUtils]: 34: Hoare triple {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} assume !false; {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:23:27,029 INFO L290 TraceCheckUtils]: 35: Hoare triple {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} assume !!(0 != main_~b~0#1);main_~c~0#1 := main_~a~0#1;main_~k~0#1 := 0; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,029 INFO L290 TraceCheckUtils]: 36: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} assume !false; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,029 INFO L272 TraceCheckUtils]: 37: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} call __VERIFIER_assert((if main_~a~0#1 == main_~k~0#1 * main_~b~0#1 + main_~c~0#1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,029 INFO L290 TraceCheckUtils]: 38: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,029 INFO L290 TraceCheckUtils]: 39: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,029 INFO L290 TraceCheckUtils]: 40: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,030 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2608#true} {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} #88#return; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,030 INFO L272 TraceCheckUtils]: 42: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,030 INFO L290 TraceCheckUtils]: 43: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,030 INFO L290 TraceCheckUtils]: 44: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,031 INFO L290 TraceCheckUtils]: 45: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,031 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2608#true} {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} #90#return; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,031 INFO L272 TraceCheckUtils]: 47: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,031 INFO L290 TraceCheckUtils]: 48: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,032 INFO L290 TraceCheckUtils]: 49: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,032 INFO L290 TraceCheckUtils]: 50: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,032 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {2608#true} {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} #92#return; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,032 INFO L272 TraceCheckUtils]: 52: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} call __VERIFIER_assert((if 0 == main_~q~0#1 * main_~xy~0#1 + main_~s~0#1 * main_~yy~0#1 - main_~q~0#1 * main_~x~0#1 - main_~b~0#1 * main_~y~0#1 - main_~s~0#1 * main_~y~0#1 + main_~b~0#1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,033 INFO L290 TraceCheckUtils]: 53: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,033 INFO L290 TraceCheckUtils]: 54: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,033 INFO L290 TraceCheckUtils]: 55: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,034 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {2608#true} {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} #94#return; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,034 INFO L290 TraceCheckUtils]: 57: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} assume !(main_~c~0#1 >= main_~b~0#1); {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,035 INFO L290 TraceCheckUtils]: 58: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} main_~a~0#1 := main_~b~0#1;main_~b~0#1 := main_~c~0#1;havoc main_~temp~0#1;main_~temp~0#1 := main_~p~0#1;main_~p~0#1 := main_~q~0#1;main_~q~0#1 := main_~temp~0#1 - main_~q~0#1 * main_~k~0#1;main_~temp~0#1 := main_~r~0#1;main_~r~0#1 := main_~s~0#1;main_~s~0#1 := main_~temp~0#1 - main_~s~0#1 * main_~k~0#1; {2792#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:23:27,035 INFO L290 TraceCheckUtils]: 59: Hoare triple {2792#(<= 1 |ULTIMATE.start_main_~b~0#1|)} assume !false; {2792#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:23:27,035 INFO L290 TraceCheckUtils]: 60: Hoare triple {2792#(<= 1 |ULTIMATE.start_main_~b~0#1|)} assume !(0 != main_~b~0#1); {2609#false} is VALID [2022-02-20 17:23:27,035 INFO L272 TraceCheckUtils]: 61: Hoare triple {2609#false} call __VERIFIER_assert((if 0 == main_~q~0#1 * main_~x~0#1 + main_~s~0#1 * main_~y~0#1 then 1 else 0)); {2609#false} is VALID [2022-02-20 17:23:27,036 INFO L290 TraceCheckUtils]: 62: Hoare triple {2609#false} ~cond := #in~cond; {2609#false} is VALID [2022-02-20 17:23:27,036 INFO L290 TraceCheckUtils]: 63: Hoare triple {2609#false} assume 0 == ~cond; {2609#false} is VALID [2022-02-20 17:23:27,036 INFO L290 TraceCheckUtils]: 64: Hoare triple {2609#false} assume !false; {2609#false} is VALID [2022-02-20 17:23:27,036 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 14 proven. 11 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-02-20 17:23:27,036 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:23:27,348 INFO L290 TraceCheckUtils]: 64: Hoare triple {2609#false} assume !false; {2609#false} is VALID [2022-02-20 17:23:27,348 INFO L290 TraceCheckUtils]: 63: Hoare triple {2609#false} assume 0 == ~cond; {2609#false} is VALID [2022-02-20 17:23:27,348 INFO L290 TraceCheckUtils]: 62: Hoare triple {2609#false} ~cond := #in~cond; {2609#false} is VALID [2022-02-20 17:23:27,348 INFO L272 TraceCheckUtils]: 61: Hoare triple {2609#false} call __VERIFIER_assert((if 0 == main_~q~0#1 * main_~x~0#1 + main_~s~0#1 * main_~y~0#1 then 1 else 0)); {2609#false} is VALID [2022-02-20 17:23:27,349 INFO L290 TraceCheckUtils]: 60: Hoare triple {2792#(<= 1 |ULTIMATE.start_main_~b~0#1|)} assume !(0 != main_~b~0#1); {2609#false} is VALID [2022-02-20 17:23:27,351 INFO L290 TraceCheckUtils]: 59: Hoare triple {2792#(<= 1 |ULTIMATE.start_main_~b~0#1|)} assume !false; {2792#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:23:27,356 INFO L290 TraceCheckUtils]: 58: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} main_~a~0#1 := main_~b~0#1;main_~b~0#1 := main_~c~0#1;havoc main_~temp~0#1;main_~temp~0#1 := main_~p~0#1;main_~p~0#1 := main_~q~0#1;main_~q~0#1 := main_~temp~0#1 - main_~q~0#1 * main_~k~0#1;main_~temp~0#1 := main_~r~0#1;main_~r~0#1 := main_~s~0#1;main_~s~0#1 := main_~temp~0#1 - main_~s~0#1 * main_~k~0#1; {2792#(<= 1 |ULTIMATE.start_main_~b~0#1|)} is VALID [2022-02-20 17:23:27,356 INFO L290 TraceCheckUtils]: 57: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} assume !(main_~c~0#1 >= main_~b~0#1); {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,357 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {2608#true} {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} #94#return; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,357 INFO L290 TraceCheckUtils]: 55: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,357 INFO L290 TraceCheckUtils]: 54: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,358 INFO L290 TraceCheckUtils]: 53: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,359 INFO L272 TraceCheckUtils]: 52: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} call __VERIFIER_assert((if 0 == main_~q~0#1 * main_~xy~0#1 + main_~s~0#1 * main_~yy~0#1 - main_~q~0#1 * main_~x~0#1 - main_~b~0#1 * main_~y~0#1 - main_~s~0#1 * main_~y~0#1 + main_~b~0#1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,360 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {2608#true} {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} #92#return; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,361 INFO L290 TraceCheckUtils]: 50: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,361 INFO L290 TraceCheckUtils]: 49: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,361 INFO L290 TraceCheckUtils]: 48: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,361 INFO L272 TraceCheckUtils]: 47: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,362 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2608#true} {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} #90#return; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,362 INFO L290 TraceCheckUtils]: 45: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,362 INFO L290 TraceCheckUtils]: 44: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,362 INFO L290 TraceCheckUtils]: 43: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,362 INFO L272 TraceCheckUtils]: 42: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,363 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2608#true} {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} #88#return; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,363 INFO L290 TraceCheckUtils]: 40: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,363 INFO L290 TraceCheckUtils]: 39: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,363 INFO L290 TraceCheckUtils]: 38: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,363 INFO L272 TraceCheckUtils]: 37: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} call __VERIFIER_assert((if main_~a~0#1 == main_~k~0#1 * main_~b~0#1 + main_~c~0#1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,364 INFO L290 TraceCheckUtils]: 36: Hoare triple {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} assume !false; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,364 INFO L290 TraceCheckUtils]: 35: Hoare triple {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} assume !!(0 != main_~b~0#1);main_~c~0#1 := main_~a~0#1;main_~k~0#1 := 0; {2722#(<= 1 |ULTIMATE.start_main_~c~0#1|)} is VALID [2022-02-20 17:23:27,364 INFO L290 TraceCheckUtils]: 34: Hoare triple {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} assume !false; {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:23:27,365 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2608#true} {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} #86#return; {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:23:27,365 INFO L290 TraceCheckUtils]: 32: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,365 INFO L290 TraceCheckUtils]: 31: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,366 INFO L290 TraceCheckUtils]: 30: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,366 INFO L272 TraceCheckUtils]: 29: Hoare triple {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,366 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2608#true} {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} #84#return; {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:23:27,366 INFO L290 TraceCheckUtils]: 27: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,367 INFO L290 TraceCheckUtils]: 26: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,367 INFO L290 TraceCheckUtils]: 25: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,367 INFO L272 TraceCheckUtils]: 24: Hoare triple {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,367 INFO L290 TraceCheckUtils]: 23: Hoare triple {2666#(<= 1 |ULTIMATE.start_main_~x~0#1|)} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {2685#(<= 1 |ULTIMATE.start_main_~a~0#1|)} is VALID [2022-02-20 17:23:27,368 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2608#true} {2666#(<= 1 |ULTIMATE.start_main_~x~0#1|)} #82#return; {2666#(<= 1 |ULTIMATE.start_main_~x~0#1|)} is VALID [2022-02-20 17:23:27,368 INFO L290 TraceCheckUtils]: 21: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,368 INFO L290 TraceCheckUtils]: 20: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,368 INFO L290 TraceCheckUtils]: 19: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,368 INFO L272 TraceCheckUtils]: 18: Hoare triple {2666#(<= 1 |ULTIMATE.start_main_~x~0#1|)} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,369 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {2659#(not (= |assume_abort_if_not_#in~cond| 0))} {2608#true} #80#return; {2666#(<= 1 |ULTIMATE.start_main_~x~0#1|)} is VALID [2022-02-20 17:23:27,369 INFO L290 TraceCheckUtils]: 16: Hoare triple {2659#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2659#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:23:27,369 INFO L290 TraceCheckUtils]: 15: Hoare triple {2961#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2659#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 17:23:27,370 INFO L290 TraceCheckUtils]: 14: Hoare triple {2608#true} ~cond := #in~cond; {2961#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-02-20 17:23:27,370 INFO L272 TraceCheckUtils]: 13: Hoare triple {2608#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,370 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2608#true} {2608#true} #78#return; {2608#true} is VALID [2022-02-20 17:23:27,370 INFO L290 TraceCheckUtils]: 11: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,370 INFO L290 TraceCheckUtils]: 10: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,370 INFO L272 TraceCheckUtils]: 8: Hoare triple {2608#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,370 INFO L290 TraceCheckUtils]: 7: Hoare triple {2608#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {2608#true} is VALID [2022-02-20 17:23:27,371 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2608#true} {2608#true} #76#return; {2608#true} is VALID [2022-02-20 17:23:27,371 INFO L290 TraceCheckUtils]: 5: Hoare triple {2608#true} assume true; {2608#true} is VALID [2022-02-20 17:23:27,371 INFO L290 TraceCheckUtils]: 4: Hoare triple {2608#true} assume !(0 == ~cond); {2608#true} is VALID [2022-02-20 17:23:27,371 INFO L290 TraceCheckUtils]: 3: Hoare triple {2608#true} ~cond := #in~cond; {2608#true} is VALID [2022-02-20 17:23:27,371 INFO L272 TraceCheckUtils]: 2: Hoare triple {2608#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {2608#true} is VALID [2022-02-20 17:23:27,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {2608#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2608#true} is VALID [2022-02-20 17:23:27,371 INFO L290 TraceCheckUtils]: 0: Hoare triple {2608#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2608#true} is VALID [2022-02-20 17:23:27,372 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 14 proven. 11 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-02-20 17:23:27,372 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:23:27,372 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1285844401] [2022-02-20 17:23:27,372 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:23:27,372 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1374070658] [2022-02-20 17:23:27,373 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1374070658] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:23:27,373 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:23:27,373 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-02-20 17:23:27,373 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1206174555] [2022-02-20 17:23:27,373 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:23:27,376 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 65 [2022-02-20 17:23:27,376 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:23:27,376 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-02-20 17:23:27,420 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:23:27,420 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 17:23:27,421 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:23:27,421 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 17:23:27,421 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:23:27,421 INFO L87 Difference]: Start difference. First operand 55 states and 67 transitions. Second operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-02-20 17:23:28,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:23:28,099 INFO L93 Difference]: Finished difference Result 102 states and 142 transitions. [2022-02-20 17:23:28,099 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 17:23:28,099 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 65 [2022-02-20 17:23:28,099 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:23:28,099 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-02-20 17:23:28,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 106 transitions. [2022-02-20 17:23:28,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-02-20 17:23:28,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 106 transitions. [2022-02-20 17:23:28,104 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 106 transitions. [2022-02-20 17:23:28,197 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:23:28,199 INFO L225 Difference]: With dead ends: 102 [2022-02-20 17:23:28,199 INFO L226 Difference]: Without dead ends: 94 [2022-02-20 17:23:28,199 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 120 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-02-20 17:23:28,200 INFO L933 BasicCegarLoop]: 56 mSDtfsCounter, 32 mSDsluCounter, 201 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 257 SdHoareTripleChecker+Invalid, 133 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 80 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:23:28,200 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [37 Valid, 257 Invalid, 133 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:23:28,200 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-02-20 17:23:28,312 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 85. [2022-02-20 17:23:28,312 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:23:28,313 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 85 states, 46 states have (on average 1.1956521739130435) internal successors, (55), 47 states have internal predecessors, (55), 32 states have call successors, (32), 6 states have call predecessors, (32), 6 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-02-20 17:23:28,313 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 85 states, 46 states have (on average 1.1956521739130435) internal successors, (55), 47 states have internal predecessors, (55), 32 states have call successors, (32), 6 states have call predecessors, (32), 6 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-02-20 17:23:28,313 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 85 states, 46 states have (on average 1.1956521739130435) internal successors, (55), 47 states have internal predecessors, (55), 32 states have call successors, (32), 6 states have call predecessors, (32), 6 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-02-20 17:23:28,317 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:23:28,317 INFO L93 Difference]: Finished difference Result 94 states and 133 transitions. [2022-02-20 17:23:28,317 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 133 transitions. [2022-02-20 17:23:28,317 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:23:28,317 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:23:28,318 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 46 states have (on average 1.1956521739130435) internal successors, (55), 47 states have internal predecessors, (55), 32 states have call successors, (32), 6 states have call predecessors, (32), 6 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 94 states. [2022-02-20 17:23:28,318 INFO L87 Difference]: Start difference. First operand has 85 states, 46 states have (on average 1.1956521739130435) internal successors, (55), 47 states have internal predecessors, (55), 32 states have call successors, (32), 6 states have call predecessors, (32), 6 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 94 states. [2022-02-20 17:23:28,321 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:23:28,321 INFO L93 Difference]: Finished difference Result 94 states and 133 transitions. [2022-02-20 17:23:28,322 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 133 transitions. [2022-02-20 17:23:28,322 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:23:28,322 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:23:28,322 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:23:28,322 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:23:28,323 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 46 states have (on average 1.1956521739130435) internal successors, (55), 47 states have internal predecessors, (55), 32 states have call successors, (32), 6 states have call predecessors, (32), 6 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-02-20 17:23:28,325 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 118 transitions. [2022-02-20 17:23:28,325 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 118 transitions. Word has length 65 [2022-02-20 17:23:28,326 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:23:28,326 INFO L470 AbstractCegarLoop]: Abstraction has 85 states and 118 transitions. [2022-02-20 17:23:28,326 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-02-20 17:23:28,326 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 118 transitions. [2022-02-20 17:23:28,327 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-02-20 17:23:28,327 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:23:28,327 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 5, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:23:28,343 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-02-20 17:23:28,540 WARN L452 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-02-20 17:23:28,541 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:23:28,541 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:23:28,541 INFO L85 PathProgramCache]: Analyzing trace with hash -696294669, now seen corresponding path program 1 times [2022-02-20 17:23:28,541 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:23:28,541 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1238027564] [2022-02-20 17:23:28,541 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:23:28,541 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:23:28,558 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:23:28,563 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1462512633] [2022-02-20 17:23:28,563 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:23:28,563 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:23:28,563 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:23:28,564 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-02-20 17:23:28,565 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-02-20 17:23:28,608 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:23:28,609 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 26 conjunts are in the unsatisfiable core [2022-02-20 17:23:28,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:23:28,620 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:23:28,935 INFO L290 TraceCheckUtils]: 0: Hoare triple {3494#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3494#true} is VALID [2022-02-20 17:23:28,935 INFO L290 TraceCheckUtils]: 1: Hoare triple {3494#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~temp~0#1, main_~x~0#1, main_~y~0#1, main_~a~0#1, main_~b~0#1, main_~p~0#1, main_~q~0#1, main_~r~0#1, main_~s~0#1, main_~c~0#1, main_~k~0#1, main_~xy~0#1, main_~yy~0#1;havoc main_~x~0#1;havoc main_~y~0#1;havoc main_~a~0#1;havoc main_~b~0#1;havoc main_~p~0#1;havoc main_~q~0#1;havoc main_~r~0#1;havoc main_~s~0#1;havoc main_~c~0#1;havoc main_~k~0#1;havoc main_~xy~0#1;havoc main_~yy~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {3494#true} is VALID [2022-02-20 17:23:28,935 INFO L272 TraceCheckUtils]: 2: Hoare triple {3494#true} call assume_abort_if_not((if main_~x~0#1 >= 0 && main_~x~0#1 <= 5 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,935 INFO L290 TraceCheckUtils]: 3: Hoare triple {3494#true} ~cond := #in~cond; {3494#true} is VALID [2022-02-20 17:23:28,935 INFO L290 TraceCheckUtils]: 4: Hoare triple {3494#true} assume !(0 == ~cond); {3494#true} is VALID [2022-02-20 17:23:28,936 INFO L290 TraceCheckUtils]: 5: Hoare triple {3494#true} assume true; {3494#true} is VALID [2022-02-20 17:23:28,936 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3494#true} {3494#true} #76#return; {3494#true} is VALID [2022-02-20 17:23:28,936 INFO L290 TraceCheckUtils]: 7: Hoare triple {3494#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {3494#true} is VALID [2022-02-20 17:23:28,936 INFO L272 TraceCheckUtils]: 8: Hoare triple {3494#true} call assume_abort_if_not((if main_~y~0#1 >= 0 && main_~y~0#1 <= 5 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,936 INFO L290 TraceCheckUtils]: 9: Hoare triple {3494#true} ~cond := #in~cond; {3494#true} is VALID [2022-02-20 17:23:28,936 INFO L290 TraceCheckUtils]: 10: Hoare triple {3494#true} assume !(0 == ~cond); {3494#true} is VALID [2022-02-20 17:23:28,936 INFO L290 TraceCheckUtils]: 11: Hoare triple {3494#true} assume true; {3494#true} is VALID [2022-02-20 17:23:28,937 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {3494#true} {3494#true} #78#return; {3494#true} is VALID [2022-02-20 17:23:28,937 INFO L272 TraceCheckUtils]: 13: Hoare triple {3494#true} call assume_abort_if_not((if main_~x~0#1 >= 1 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,937 INFO L290 TraceCheckUtils]: 14: Hoare triple {3494#true} ~cond := #in~cond; {3494#true} is VALID [2022-02-20 17:23:28,937 INFO L290 TraceCheckUtils]: 15: Hoare triple {3494#true} assume !(0 == ~cond); {3494#true} is VALID [2022-02-20 17:23:28,937 INFO L290 TraceCheckUtils]: 16: Hoare triple {3494#true} assume true; {3494#true} is VALID [2022-02-20 17:23:28,937 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {3494#true} {3494#true} #80#return; {3494#true} is VALID [2022-02-20 17:23:28,937 INFO L272 TraceCheckUtils]: 18: Hoare triple {3494#true} call assume_abort_if_not((if main_~y~0#1 >= 1 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,937 INFO L290 TraceCheckUtils]: 19: Hoare triple {3494#true} ~cond := #in~cond; {3494#true} is VALID [2022-02-20 17:23:28,938 INFO L290 TraceCheckUtils]: 20: Hoare triple {3494#true} assume !(0 == ~cond); {3494#true} is VALID [2022-02-20 17:23:28,938 INFO L290 TraceCheckUtils]: 21: Hoare triple {3494#true} assume true; {3494#true} is VALID [2022-02-20 17:23:28,938 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {3494#true} {3494#true} #82#return; {3494#true} is VALID [2022-02-20 17:23:28,938 INFO L290 TraceCheckUtils]: 23: Hoare triple {3494#true} main_~a~0#1 := main_~x~0#1;main_~b~0#1 := main_~y~0#1;main_~p~0#1 := 1;main_~q~0#1 := 0;main_~r~0#1 := 0;main_~s~0#1 := 1;main_~c~0#1 := 0;main_~k~0#1 := 0;main_~xy~0#1 := main_~x~0#1 * main_~y~0#1;main_~yy~0#1 := main_~y~0#1 * main_~y~0#1; {3568#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,939 INFO L272 TraceCheckUtils]: 24: Hoare triple {3568#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call assume_abort_if_not((if main_~xy~0#1 < 2147483647 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,939 INFO L290 TraceCheckUtils]: 25: Hoare triple {3494#true} ~cond := #in~cond; {3494#true} is VALID [2022-02-20 17:23:28,939 INFO L290 TraceCheckUtils]: 26: Hoare triple {3494#true} assume !(0 == ~cond); {3494#true} is VALID [2022-02-20 17:23:28,939 INFO L290 TraceCheckUtils]: 27: Hoare triple {3494#true} assume true; {3494#true} is VALID [2022-02-20 17:23:28,939 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3494#true} {3568#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #84#return; {3568#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,940 INFO L272 TraceCheckUtils]: 29: Hoare triple {3568#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} call assume_abort_if_not((if main_~yy~0#1 < 2147483647 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,940 INFO L290 TraceCheckUtils]: 30: Hoare triple {3494#true} ~cond := #in~cond; {3494#true} is VALID [2022-02-20 17:23:28,940 INFO L290 TraceCheckUtils]: 31: Hoare triple {3494#true} assume !(0 == ~cond); {3494#true} is VALID [2022-02-20 17:23:28,940 INFO L290 TraceCheckUtils]: 32: Hoare triple {3494#true} assume true; {3494#true} is VALID [2022-02-20 17:23:28,940 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3494#true} {3568#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} #86#return; {3568#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,941 INFO L290 TraceCheckUtils]: 34: Hoare triple {3568#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !false; {3568#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,941 INFO L290 TraceCheckUtils]: 35: Hoare triple {3568#(and (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !!(0 != main_~b~0#1);main_~c~0#1 := main_~a~0#1;main_~k~0#1 := 0; {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,942 INFO L290 TraceCheckUtils]: 36: Hoare triple {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !false; {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,942 INFO L272 TraceCheckUtils]: 37: Hoare triple {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~k~0#1 * main_~b~0#1 + main_~c~0#1 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,942 INFO L290 TraceCheckUtils]: 38: Hoare triple {3494#true} ~cond := #in~cond; {3494#true} is VALID [2022-02-20 17:23:28,942 INFO L290 TraceCheckUtils]: 39: Hoare triple {3494#true} assume !(0 == ~cond); {3494#true} is VALID [2022-02-20 17:23:28,942 INFO L290 TraceCheckUtils]: 40: Hoare triple {3494#true} assume true; {3494#true} is VALID [2022-02-20 17:23:28,943 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3494#true} {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #88#return; {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,943 INFO L272 TraceCheckUtils]: 42: Hoare triple {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,943 INFO L290 TraceCheckUtils]: 43: Hoare triple {3494#true} ~cond := #in~cond; {3494#true} is VALID [2022-02-20 17:23:28,943 INFO L290 TraceCheckUtils]: 44: Hoare triple {3494#true} assume !(0 == ~cond); {3494#true} is VALID [2022-02-20 17:23:28,943 INFO L290 TraceCheckUtils]: 45: Hoare triple {3494#true} assume true; {3494#true} is VALID [2022-02-20 17:23:28,944 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3494#true} {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #90#return; {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,944 INFO L272 TraceCheckUtils]: 47: Hoare triple {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if main_~b~0#1 == main_~x~0#1 * main_~q~0#1 + main_~y~0#1 * main_~s~0#1 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,944 INFO L290 TraceCheckUtils]: 48: Hoare triple {3494#true} ~cond := #in~cond; {3645#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:23:28,944 INFO L290 TraceCheckUtils]: 49: Hoare triple {3645#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3649#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:23:28,944 INFO L290 TraceCheckUtils]: 50: Hoare triple {3649#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3649#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:23:28,945 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3649#(not (= |__VERIFIER_assert_#in~cond| 0))} {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #92#return; {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,945 INFO L272 TraceCheckUtils]: 52: Hoare triple {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} call __VERIFIER_assert((if 0 == main_~q~0#1 * main_~xy~0#1 + main_~s~0#1 * main_~yy~0#1 - main_~q~0#1 * main_~x~0#1 - main_~b~0#1 * main_~y~0#1 - main_~s~0#1 * main_~y~0#1 + main_~b~0#1 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,945 INFO L290 TraceCheckUtils]: 53: Hoare triple {3494#true} ~cond := #in~cond; {3494#true} is VALID [2022-02-20 17:23:28,945 INFO L290 TraceCheckUtils]: 54: Hoare triple {3494#true} assume !(0 == ~cond); {3494#true} is VALID [2022-02-20 17:23:28,945 INFO L290 TraceCheckUtils]: 55: Hoare triple {3494#true} assume true; {3494#true} is VALID [2022-02-20 17:23:28,946 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {3494#true} {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} #94#return; {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,946 INFO L290 TraceCheckUtils]: 57: Hoare triple {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} assume !(main_~c~0#1 >= main_~b~0#1); {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} is VALID [2022-02-20 17:23:28,947 INFO L290 TraceCheckUtils]: 58: Hoare triple {3605#(and (= |ULTIMATE.start_main_~c~0#1| |ULTIMATE.start_main_~x~0#1|) (= |ULTIMATE.start_main_~b~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~q~0#1| 0) (= |ULTIMATE.start_main_~s~0#1| 1))} main_~a~0#1 := main_~b~0#1;main_~b~0#1 := main_~c~0#1;havoc main_~temp~0#1;main_~temp~0#1 := main_~p~0#1;main_~p~0#1 := main_~q~0#1;main_~q~0#1 := main_~temp~0#1 - main_~q~0#1 * main_~k~0#1;main_~temp~0#1 := main_~r~0#1;main_~r~0#1 := main_~s~0#1;main_~s~0#1 := main_~temp~0#1 - main_~s~0#1 * main_~k~0#1; {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} is VALID [2022-02-20 17:23:28,948 INFO L290 TraceCheckUtils]: 59: Hoare triple {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} assume !false; {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} is VALID [2022-02-20 17:23:28,948 INFO L290 TraceCheckUtils]: 60: Hoare triple {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} assume !!(0 != main_~b~0#1);main_~c~0#1 := main_~a~0#1;main_~k~0#1 := 0; {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} is VALID [2022-02-20 17:23:28,949 INFO L290 TraceCheckUtils]: 61: Hoare triple {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} assume !false; {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} is VALID [2022-02-20 17:23:28,949 INFO L272 TraceCheckUtils]: 62: Hoare triple {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~k~0#1 * main_~b~0#1 + main_~c~0#1 then 1 else 0)); {3494#true} is VALID [2022-02-20 17:23:28,949 INFO L290 TraceCheckUtils]: 63: Hoare triple {3494#true} ~cond := #in~cond; {3494#true} is VALID [2022-02-20 17:23:28,949 INFO L290 TraceCheckUtils]: 64: Hoare triple {3494#true} assume !(0 == ~cond); {3494#true} is VALID [2022-02-20 17:23:28,949 INFO L290 TraceCheckUtils]: 65: Hoare triple {3494#true} assume true; {3494#true} is VALID [2022-02-20 17:23:28,950 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {3494#true} {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} #88#return; {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} is VALID [2022-02-20 17:23:28,950 INFO L272 TraceCheckUtils]: 67: Hoare triple {3677#(and (= |ULTIMATE.start_main_~p~0#1| 0) (= |ULTIMATE.start_main_~a~0#1| |ULTIMATE.start_main_~y~0#1|) (= |ULTIMATE.start_main_~r~0#1| 1))} call __VERIFIER_assert((if main_~a~0#1 == main_~y~0#1 * main_~r~0#1 + main_~x~0#1 * main_~p~0#1 then 1 else 0)); {3705#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:23:28,951 INFO L290 TraceCheckUtils]: 68: Hoare triple {3705#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3709#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:23:28,951 INFO L290 TraceCheckUtils]: 69: Hoare triple {3709#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3495#false} is VALID [2022-02-20 17:23:28,951 INFO L290 TraceCheckUtils]: 70: Hoare triple {3495#false} assume !false; {3495#false} is VALID [2022-02-20 17:23:28,951 INFO L134 CoverageAnalysis]: Checked inductivity of 115 backedges. 15 proven. 12 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-02-20 17:23:28,952 INFO L328 TraceCheckSpWp]: Computing backward predicates...