/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 07:27:41,445 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 07:27:41,447 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 07:27:41,466 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 07:27:41,467 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 07:27:41,467 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 07:27:41,468 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 07:27:41,469 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 07:27:41,470 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 07:27:41,471 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 07:27:41,471 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 07:27:41,472 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 07:27:41,472 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 07:27:41,473 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 07:27:41,473 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 07:27:41,476 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 07:27:41,477 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 07:27:41,478 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 07:27:41,479 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 07:27:41,481 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 07:27:41,482 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 07:27:41,488 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 07:27:41,491 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 07:27:41,493 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 07:27:41,494 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 07:27:41,496 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 07:27:41,496 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 07:27:41,496 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 07:27:41,496 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 07:27:41,497 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 07:27:41,497 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 07:27:41,497 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 07:27:41,498 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 07:27:41,498 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 07:27:41,498 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 07:27:41,499 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 07:27:41,499 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 07:27:41,499 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 07:27:41,500 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 07:27:41,500 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 07:27:41,500 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 07:27:41,506 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 07:27:41,507 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-08 07:27:41,512 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 07:27:41,512 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 07:27:41,513 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 07:27:41,513 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 07:27:41,513 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 07:27:41,513 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 07:27:41,514 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 07:27:41,514 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 07:27:41,514 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 07:27:41,514 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 07:27:41,514 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 07:27:41,514 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 07:27:41,514 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 07:27:41,514 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 07:27:41,515 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 07:27:41,515 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 07:27:41,515 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 07:27:41,515 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 07:27:41,515 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 07:27:41,515 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 07:27:41,515 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 07:27:41,515 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 07:27:41,516 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 07:27:41,516 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 07:27:41,516 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 07:27:41,516 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-08 07:27:41,717 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 07:27:41,742 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 07:27:41,744 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 07:27:41,745 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 07:27:41,745 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 07:27:41,746 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound10.c [2022-04-08 07:27:41,796 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5278ebc45/f2605112faea40e08f3c6cadaf902d30/FLAG74f9eeffc [2022-04-08 07:27:42,160 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 07:27:42,161 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound10.c [2022-04-08 07:27:42,171 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5278ebc45/f2605112faea40e08f3c6cadaf902d30/FLAG74f9eeffc [2022-04-08 07:27:42,184 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5278ebc45/f2605112faea40e08f3c6cadaf902d30 [2022-04-08 07:27:42,186 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 07:27:42,187 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 07:27:42,189 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 07:27:42,189 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 07:27:42,192 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 07:27:42,195 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 07:27:42" (1/1) ... [2022-04-08 07:27:42,197 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1aa20b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42, skipping insertion in model container [2022-04-08 07:27:42,197 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 07:27:42" (1/1) ... [2022-04-08 07:27:42,201 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 07:27:42,211 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 07:27:42,365 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound10.c[537,550] [2022-04-08 07:27:42,383 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 07:27:42,392 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 07:27:42,402 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound10.c[537,550] [2022-04-08 07:27:42,415 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 07:27:42,425 INFO L208 MainTranslator]: Completed translation [2022-04-08 07:27:42,425 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42 WrapperNode [2022-04-08 07:27:42,425 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 07:27:42,426 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 07:27:42,427 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 07:27:42,427 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 07:27:42,434 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42" (1/1) ... [2022-04-08 07:27:42,435 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42" (1/1) ... [2022-04-08 07:27:42,440 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42" (1/1) ... [2022-04-08 07:27:42,441 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42" (1/1) ... [2022-04-08 07:27:42,451 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42" (1/1) ... [2022-04-08 07:27:42,455 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42" (1/1) ... [2022-04-08 07:27:42,458 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42" (1/1) ... [2022-04-08 07:27:42,460 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 07:27:42,461 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 07:27:42,461 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 07:27:42,461 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 07:27:42,462 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42" (1/1) ... [2022-04-08 07:27:42,467 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 07:27:42,473 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:27:42,484 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-08 07:27:42,501 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-08 07:27:42,513 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 07:27:42,513 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 07:27:42,513 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 07:27:42,513 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 07:27:42,513 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 07:27:42,513 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 07:27:42,514 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 07:27:42,514 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 07:27:42,514 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 07:27:42,514 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 07:27:42,514 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 07:27:42,515 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 07:27:42,515 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 07:27:42,515 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 07:27:42,515 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 07:27:42,515 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 07:27:42,516 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 07:27:42,516 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 07:27:42,516 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 07:27:42,516 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 07:27:42,562 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 07:27:42,563 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 07:27:42,711 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 07:27:42,719 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 07:27:42,719 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-08 07:27:42,720 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 07:27:42 BoogieIcfgContainer [2022-04-08 07:27:42,720 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 07:27:42,722 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 07:27:42,722 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 07:27:42,726 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 07:27:42,726 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 07:27:42" (1/3) ... [2022-04-08 07:27:42,726 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7ae3ced3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 07:27:42, skipping insertion in model container [2022-04-08 07:27:42,726 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:27:42" (2/3) ... [2022-04-08 07:27:42,727 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7ae3ced3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 07:27:42, skipping insertion in model container [2022-04-08 07:27:42,727 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 07:27:42" (3/3) ... [2022-04-08 07:27:42,728 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_unwindbound10.c [2022-04-08 07:27:42,731 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 07:27:42,731 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 07:27:42,766 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 07:27:42,770 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-08 07:27:42,770 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 07:27:42,780 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:27:42,784 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-08 07:27:42,784 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:27:42,785 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:27:42,785 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:27:42,788 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:27:42,788 INFO L85 PathProgramCache]: Analyzing trace with hash -1523633710, now seen corresponding path program 1 times [2022-04-08 07:27:42,793 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:42,794 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1339509011] [2022-04-08 07:27:42,800 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 07:27:42,801 INFO L85 PathProgramCache]: Analyzing trace with hash -1523633710, now seen corresponding path program 2 times [2022-04-08 07:27:42,803 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:27:42,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [631022121] [2022-04-08 07:27:42,804 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:27:42,804 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:27:42,903 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:27:42,962 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 07:27:42,973 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:27:42,989 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {33#true} is VALID [2022-04-08 07:27:42,990 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} assume true; {33#true} is VALID [2022-04-08 07:27:42,990 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {33#true} {33#true} #65#return; {33#true} is VALID [2022-04-08 07:27:42,991 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 07:27:42,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:27:43,001 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-04-08 07:27:43,002 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-04-08 07:27:43,002 INFO L290 TraceCheckUtils]: 2: Hoare triple {34#false} assume true; {34#false} is VALID [2022-04-08 07:27:43,002 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34#false} {33#true} #59#return; {34#false} is VALID [2022-04-08 07:27:43,003 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} call ULTIMATE.init(); {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 07:27:43,003 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {33#true} is VALID [2022-04-08 07:27:43,004 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} assume true; {33#true} is VALID [2022-04-08 07:27:43,004 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} #65#return; {33#true} is VALID [2022-04-08 07:27:43,004 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} call #t~ret7 := main(); {33#true} is VALID [2022-04-08 07:27:43,005 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {33#true} is VALID [2022-04-08 07:27:43,005 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {33#true} is VALID [2022-04-08 07:27:43,005 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-04-08 07:27:43,005 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-04-08 07:27:43,006 INFO L290 TraceCheckUtils]: 9: Hoare triple {34#false} assume true; {34#false} is VALID [2022-04-08 07:27:43,006 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34#false} {33#true} #59#return; {34#false} is VALID [2022-04-08 07:27:43,007 INFO L290 TraceCheckUtils]: 11: Hoare triple {34#false} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {34#false} is VALID [2022-04-08 07:27:43,007 INFO L290 TraceCheckUtils]: 12: Hoare triple {34#false} assume !true; {34#false} is VALID [2022-04-08 07:27:43,007 INFO L272 TraceCheckUtils]: 13: Hoare triple {34#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {34#false} is VALID [2022-04-08 07:27:43,008 INFO L290 TraceCheckUtils]: 14: Hoare triple {34#false} ~cond := #in~cond; {34#false} is VALID [2022-04-08 07:27:43,008 INFO L290 TraceCheckUtils]: 15: Hoare triple {34#false} assume 0 == ~cond; {34#false} is VALID [2022-04-08 07:27:43,008 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} assume !false; {34#false} is VALID [2022-04-08 07:27:43,008 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:27:43,009 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:27:43,009 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [631022121] [2022-04-08 07:27:43,009 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [631022121] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:27:43,010 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:27:43,010 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 07:27:43,012 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:27:43,012 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1339509011] [2022-04-08 07:27:43,012 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1339509011] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:27:43,012 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:27:43,013 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 07:27:43,013 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [583046686] [2022-04-08 07:27:43,013 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:27:43,017 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-08 07:27:43,018 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:27:43,020 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 07:27:43,045 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:43,046 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 07:27:43,046 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:43,065 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 07:27:43,065 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 07:27:43,068 INFO L87 Difference]: Start difference. First operand has 30 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 07:27:43,190 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:43,191 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-08 07:27:43,191 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 07:27:43,191 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-08 07:27:43,191 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:27:43,192 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 07:27:43,200 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-08 07:27:43,201 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 07:27:43,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-08 07:27:43,203 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 66 transitions. [2022-04-08 07:27:43,269 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:43,276 INFO L225 Difference]: With dead ends: 52 [2022-04-08 07:27:43,276 INFO L226 Difference]: Without dead ends: 26 [2022-04-08 07:27:43,277 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 07:27:43,281 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 35 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 07:27:43,282 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 35 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 07:27:43,293 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2022-04-08 07:27:43,302 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 25. [2022-04-08 07:27:43,302 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:27:43,302 INFO L82 GeneralOperation]: Start isEquivalent. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:43,303 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:43,303 INFO L87 Difference]: Start difference. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:43,305 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:43,305 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-08 07:27:43,306 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-08 07:27:43,306 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:27:43,306 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:27:43,306 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 26 states. [2022-04-08 07:27:43,307 INFO L87 Difference]: Start difference. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 26 states. [2022-04-08 07:27:43,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:43,308 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-08 07:27:43,308 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-08 07:27:43,309 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:27:43,309 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:27:43,309 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:27:43,309 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:27:43,309 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:43,310 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 28 transitions. [2022-04-08 07:27:43,311 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 28 transitions. Word has length 17 [2022-04-08 07:27:43,311 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:27:43,312 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 28 transitions. [2022-04-08 07:27:43,312 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 07:27:43,312 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 28 transitions. [2022-04-08 07:27:43,339 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:43,339 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-08 07:27:43,340 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 07:27:43,340 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:27:43,340 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:27:43,340 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 07:27:43,340 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:27:43,341 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:27:43,341 INFO L85 PathProgramCache]: Analyzing trace with hash -991958694, now seen corresponding path program 1 times [2022-04-08 07:27:43,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:43,341 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [20535405] [2022-04-08 07:27:43,342 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 07:27:43,342 INFO L85 PathProgramCache]: Analyzing trace with hash -991958694, now seen corresponding path program 2 times [2022-04-08 07:27:43,342 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:27:43,342 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [992577184] [2022-04-08 07:27:43,342 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:27:43,342 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:27:43,361 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:27:43,361 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [601964096] [2022-04-08 07:27:43,361 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:27:43,362 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:27:43,362 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:27:43,365 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:27:43,366 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-08 07:27:43,430 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 07:27:43,430 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:27:43,432 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 07:27:43,440 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:27:43,443 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:27:43,561 INFO L272 TraceCheckUtils]: 0: Hoare triple {251#true} call ULTIMATE.init(); {251#true} is VALID [2022-04-08 07:27:43,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {251#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,563 INFO L290 TraceCheckUtils]: 2: Hoare triple {259#(<= ~counter~0 0)} assume true; {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,563 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {259#(<= ~counter~0 0)} {251#true} #65#return; {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,564 INFO L272 TraceCheckUtils]: 4: Hoare triple {259#(<= ~counter~0 0)} call #t~ret7 := main(); {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,564 INFO L290 TraceCheckUtils]: 5: Hoare triple {259#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,565 INFO L272 TraceCheckUtils]: 6: Hoare triple {259#(<= ~counter~0 0)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,565 INFO L290 TraceCheckUtils]: 7: Hoare triple {259#(<= ~counter~0 0)} ~cond := #in~cond; {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,565 INFO L290 TraceCheckUtils]: 8: Hoare triple {259#(<= ~counter~0 0)} assume !(0 == ~cond); {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,566 INFO L290 TraceCheckUtils]: 9: Hoare triple {259#(<= ~counter~0 0)} assume true; {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,566 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {259#(<= ~counter~0 0)} {259#(<= ~counter~0 0)} #59#return; {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,567 INFO L290 TraceCheckUtils]: 11: Hoare triple {259#(<= ~counter~0 0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {259#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:43,567 INFO L290 TraceCheckUtils]: 12: Hoare triple {259#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {293#(<= |main_#t~post6| 0)} is VALID [2022-04-08 07:27:43,567 INFO L290 TraceCheckUtils]: 13: Hoare triple {293#(<= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {252#false} is VALID [2022-04-08 07:27:43,568 INFO L272 TraceCheckUtils]: 14: Hoare triple {252#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {252#false} is VALID [2022-04-08 07:27:43,568 INFO L290 TraceCheckUtils]: 15: Hoare triple {252#false} ~cond := #in~cond; {252#false} is VALID [2022-04-08 07:27:43,568 INFO L290 TraceCheckUtils]: 16: Hoare triple {252#false} assume 0 == ~cond; {252#false} is VALID [2022-04-08 07:27:43,568 INFO L290 TraceCheckUtils]: 17: Hoare triple {252#false} assume !false; {252#false} is VALID [2022-04-08 07:27:43,568 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:27:43,569 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 07:27:43,569 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:27:43,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [992577184] [2022-04-08 07:27:43,570 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:27:43,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [601964096] [2022-04-08 07:27:43,571 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [601964096] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:27:43,571 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:27:43,571 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 07:27:43,572 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:27:43,572 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [20535405] [2022-04-08 07:27:43,572 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [20535405] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:27:43,572 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:27:43,572 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 07:27:43,572 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1302252769] [2022-04-08 07:27:43,572 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:27:43,574 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-08 07:27:43,574 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:27:43,575 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 07:27:43,590 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:43,590 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 07:27:43,590 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:43,591 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 07:27:43,591 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 07:27:43,591 INFO L87 Difference]: Start difference. First operand 25 states and 28 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 07:27:43,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:43,649 INFO L93 Difference]: Finished difference Result 34 states and 37 transitions. [2022-04-08 07:27:43,649 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 07:27:43,649 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-08 07:27:43,650 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:27:43,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 07:27:43,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-08 07:27:43,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 07:27:43,658 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-08 07:27:43,658 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 37 transitions. [2022-04-08 07:27:43,681 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:43,683 INFO L225 Difference]: With dead ends: 34 [2022-04-08 07:27:43,683 INFO L226 Difference]: Without dead ends: 27 [2022-04-08 07:27:43,683 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 07:27:43,684 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 0 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 07:27:43,684 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 66 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 07:27:43,685 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-08 07:27:43,696 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-08 07:27:43,696 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:27:43,697 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:43,698 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:43,699 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:43,702 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:43,702 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-08 07:27:43,702 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-08 07:27:43,702 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:27:43,702 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:27:43,703 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-08 07:27:43,704 INFO L87 Difference]: Start difference. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-08 07:27:43,708 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:43,708 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-08 07:27:43,708 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-08 07:27:43,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:27:43,708 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:27:43,708 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:27:43,708 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:27:43,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:43,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-08 07:27:43,714 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 18 [2022-04-08 07:27:43,714 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:27:43,714 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-08 07:27:43,714 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-08 07:27:43,714 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 30 transitions. [2022-04-08 07:27:43,736 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:43,737 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-08 07:27:43,737 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 07:27:43,737 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:27:43,737 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:27:43,756 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-08 07:27:43,951 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:27:43,952 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:27:43,952 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:27:43,952 INFO L85 PathProgramCache]: Analyzing trace with hash -990171234, now seen corresponding path program 1 times [2022-04-08 07:27:43,952 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:43,952 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1658447627] [2022-04-08 07:27:43,953 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 07:27:43,953 INFO L85 PathProgramCache]: Analyzing trace with hash -990171234, now seen corresponding path program 2 times [2022-04-08 07:27:43,953 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:27:43,953 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1138878848] [2022-04-08 07:27:43,953 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:27:43,953 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:27:43,969 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:27:43,969 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2143112274] [2022-04-08 07:27:43,969 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:27:43,969 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:27:43,970 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:27:43,983 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:27:43,984 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-08 07:27:44,022 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 07:27:44,022 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:27:44,023 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 07:27:44,032 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:27:44,033 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:27:44,152 INFO L272 TraceCheckUtils]: 0: Hoare triple {484#true} call ULTIMATE.init(); {484#true} is VALID [2022-04-08 07:27:44,153 INFO L290 TraceCheckUtils]: 1: Hoare triple {484#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {484#true} is VALID [2022-04-08 07:27:44,153 INFO L290 TraceCheckUtils]: 2: Hoare triple {484#true} assume true; {484#true} is VALID [2022-04-08 07:27:44,153 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {484#true} {484#true} #65#return; {484#true} is VALID [2022-04-08 07:27:44,153 INFO L272 TraceCheckUtils]: 4: Hoare triple {484#true} call #t~ret7 := main(); {484#true} is VALID [2022-04-08 07:27:44,153 INFO L290 TraceCheckUtils]: 5: Hoare triple {484#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {484#true} is VALID [2022-04-08 07:27:44,153 INFO L272 TraceCheckUtils]: 6: Hoare triple {484#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {484#true} is VALID [2022-04-08 07:27:44,153 INFO L290 TraceCheckUtils]: 7: Hoare triple {484#true} ~cond := #in~cond; {484#true} is VALID [2022-04-08 07:27:44,153 INFO L290 TraceCheckUtils]: 8: Hoare triple {484#true} assume !(0 == ~cond); {484#true} is VALID [2022-04-08 07:27:44,154 INFO L290 TraceCheckUtils]: 9: Hoare triple {484#true} assume true; {484#true} is VALID [2022-04-08 07:27:44,154 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {484#true} {484#true} #59#return; {484#true} is VALID [2022-04-08 07:27:44,157 INFO L290 TraceCheckUtils]: 11: Hoare triple {484#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {522#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:27:44,157 INFO L290 TraceCheckUtils]: 12: Hoare triple {522#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {522#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:27:44,158 INFO L290 TraceCheckUtils]: 13: Hoare triple {522#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {522#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:27:44,160 INFO L272 TraceCheckUtils]: 14: Hoare triple {522#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {532#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:27:44,160 INFO L290 TraceCheckUtils]: 15: Hoare triple {532#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {536#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:27:44,161 INFO L290 TraceCheckUtils]: 16: Hoare triple {536#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {485#false} is VALID [2022-04-08 07:27:44,161 INFO L290 TraceCheckUtils]: 17: Hoare triple {485#false} assume !false; {485#false} is VALID [2022-04-08 07:27:44,161 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:27:44,161 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 07:27:44,161 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:27:44,161 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1138878848] [2022-04-08 07:27:44,161 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:27:44,161 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2143112274] [2022-04-08 07:27:44,161 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2143112274] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:27:44,162 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:27:44,162 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 07:27:44,162 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:27:44,162 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1658447627] [2022-04-08 07:27:44,162 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1658447627] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:27:44,162 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:27:44,162 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 07:27:44,162 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [499452775] [2022-04-08 07:27:44,162 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:27:44,163 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-08 07:27:44,163 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:27:44,163 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 07:27:44,175 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:44,176 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 07:27:44,176 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:44,176 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 07:27:44,176 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 07:27:44,176 INFO L87 Difference]: Start difference. First operand 27 states and 30 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 07:27:44,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:44,303 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-08 07:27:44,303 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 07:27:44,303 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-08 07:27:44,303 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:27:44,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 07:27:44,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-08 07:27:44,305 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 07:27:44,306 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-08 07:27:44,306 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 43 transitions. [2022-04-08 07:27:44,339 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:44,342 INFO L225 Difference]: With dead ends: 38 [2022-04-08 07:27:44,342 INFO L226 Difference]: Without dead ends: 36 [2022-04-08 07:27:44,343 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 07:27:44,343 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 8 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 75 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 07:27:44,344 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 75 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 07:27:44,344 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-08 07:27:44,356 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 32. [2022-04-08 07:27:44,356 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:27:44,356 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:44,356 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:44,357 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:44,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:44,358 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-08 07:27:44,358 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-08 07:27:44,358 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:27:44,359 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:27:44,359 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 36 states. [2022-04-08 07:27:44,359 INFO L87 Difference]: Start difference. First operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 36 states. [2022-04-08 07:27:44,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:44,360 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-08 07:27:44,360 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-08 07:27:44,361 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:27:44,361 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:27:44,361 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:27:44,361 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:27:44,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:44,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 35 transitions. [2022-04-08 07:27:44,362 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 35 transitions. Word has length 18 [2022-04-08 07:27:44,362 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:27:44,363 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 35 transitions. [2022-04-08 07:27:44,363 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 07:27:44,363 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 35 transitions. [2022-04-08 07:27:44,394 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:44,394 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2022-04-08 07:27:44,396 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-08 07:27:44,396 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:27:44,396 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:27:44,412 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-08 07:27:44,609 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-08 07:27:44,609 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:27:44,610 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:27:44,610 INFO L85 PathProgramCache]: Analyzing trace with hash 1094479982, now seen corresponding path program 1 times [2022-04-08 07:27:44,610 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:44,610 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1676433913] [2022-04-08 07:27:44,610 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 07:27:44,610 INFO L85 PathProgramCache]: Analyzing trace with hash 1094479982, now seen corresponding path program 2 times [2022-04-08 07:27:44,611 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:27:44,611 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1414917700] [2022-04-08 07:27:44,611 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:27:44,611 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:27:44,624 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:27:44,625 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1412386860] [2022-04-08 07:27:44,625 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:27:44,625 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:27:44,625 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:27:44,626 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:27:44,627 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-08 07:27:44,660 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 07:27:44,660 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:27:44,660 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 07:27:44,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:27:44,667 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:27:44,771 INFO L272 TraceCheckUtils]: 0: Hoare triple {756#true} call ULTIMATE.init(); {756#true} is VALID [2022-04-08 07:27:44,771 INFO L290 TraceCheckUtils]: 1: Hoare triple {756#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {756#true} is VALID [2022-04-08 07:27:44,771 INFO L290 TraceCheckUtils]: 2: Hoare triple {756#true} assume true; {756#true} is VALID [2022-04-08 07:27:44,772 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {756#true} {756#true} #65#return; {756#true} is VALID [2022-04-08 07:27:44,772 INFO L272 TraceCheckUtils]: 4: Hoare triple {756#true} call #t~ret7 := main(); {756#true} is VALID [2022-04-08 07:27:44,772 INFO L290 TraceCheckUtils]: 5: Hoare triple {756#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {756#true} is VALID [2022-04-08 07:27:44,772 INFO L272 TraceCheckUtils]: 6: Hoare triple {756#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {756#true} is VALID [2022-04-08 07:27:44,772 INFO L290 TraceCheckUtils]: 7: Hoare triple {756#true} ~cond := #in~cond; {782#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 07:27:44,773 INFO L290 TraceCheckUtils]: 8: Hoare triple {782#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {786#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:27:44,773 INFO L290 TraceCheckUtils]: 9: Hoare triple {786#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {786#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:27:44,774 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {786#(not (= |assume_abort_if_not_#in~cond| 0))} {756#true} #59#return; {793#(<= 1 main_~b~0)} is VALID [2022-04-08 07:27:44,775 INFO L290 TraceCheckUtils]: 11: Hoare triple {793#(<= 1 main_~b~0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {797#(<= 1 main_~y~0)} is VALID [2022-04-08 07:27:44,775 INFO L290 TraceCheckUtils]: 12: Hoare triple {797#(<= 1 main_~y~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {797#(<= 1 main_~y~0)} is VALID [2022-04-08 07:27:44,775 INFO L290 TraceCheckUtils]: 13: Hoare triple {797#(<= 1 main_~y~0)} assume !!(#t~post6 < 10);havoc #t~post6; {797#(<= 1 main_~y~0)} is VALID [2022-04-08 07:27:44,776 INFO L272 TraceCheckUtils]: 14: Hoare triple {797#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {756#true} is VALID [2022-04-08 07:27:44,776 INFO L290 TraceCheckUtils]: 15: Hoare triple {756#true} ~cond := #in~cond; {756#true} is VALID [2022-04-08 07:27:44,776 INFO L290 TraceCheckUtils]: 16: Hoare triple {756#true} assume !(0 == ~cond); {756#true} is VALID [2022-04-08 07:27:44,776 INFO L290 TraceCheckUtils]: 17: Hoare triple {756#true} assume true; {756#true} is VALID [2022-04-08 07:27:44,777 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {756#true} {797#(<= 1 main_~y~0)} #61#return; {797#(<= 1 main_~y~0)} is VALID [2022-04-08 07:27:44,777 INFO L290 TraceCheckUtils]: 19: Hoare triple {797#(<= 1 main_~y~0)} assume !(0 != ~y~0); {757#false} is VALID [2022-04-08 07:27:44,778 INFO L272 TraceCheckUtils]: 20: Hoare triple {757#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {757#false} is VALID [2022-04-08 07:27:44,778 INFO L290 TraceCheckUtils]: 21: Hoare triple {757#false} ~cond := #in~cond; {757#false} is VALID [2022-04-08 07:27:44,778 INFO L290 TraceCheckUtils]: 22: Hoare triple {757#false} assume 0 == ~cond; {757#false} is VALID [2022-04-08 07:27:44,778 INFO L290 TraceCheckUtils]: 23: Hoare triple {757#false} assume !false; {757#false} is VALID [2022-04-08 07:27:44,779 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:27:44,779 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 07:27:44,779 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:27:44,779 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1414917700] [2022-04-08 07:27:44,779 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:27:44,779 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1412386860] [2022-04-08 07:27:44,779 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1412386860] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:27:44,780 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:27:44,780 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 07:27:44,780 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:27:44,780 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1676433913] [2022-04-08 07:27:44,782 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1676433913] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:27:44,782 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:27:44,782 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 07:27:44,782 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [837142697] [2022-04-08 07:27:44,782 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:27:44,783 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-08 07:27:44,784 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:27:44,784 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:27:44,801 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:44,801 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 07:27:44,801 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:44,801 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 07:27:44,801 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 07:27:44,802 INFO L87 Difference]: Start difference. First operand 32 states and 35 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:27:44,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:44,958 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2022-04-08 07:27:44,958 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 07:27:44,958 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-08 07:27:44,958 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:27:44,959 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:27:44,960 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-08 07:27:44,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:27:44,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-08 07:27:44,961 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 43 transitions. [2022-04-08 07:27:45,001 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:45,003 INFO L225 Difference]: With dead ends: 42 [2022-04-08 07:27:45,003 INFO L226 Difference]: Without dead ends: 35 [2022-04-08 07:27:45,005 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-08 07:27:45,007 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 17 mSDsluCounter, 63 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 85 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 07:27:45,008 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 85 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 07:27:45,010 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-08 07:27:45,032 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 33. [2022-04-08 07:27:45,032 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:27:45,033 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:45,033 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:45,033 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:45,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:45,034 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-08 07:27:45,034 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-08 07:27:45,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:27:45,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:27:45,035 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-08 07:27:45,035 INFO L87 Difference]: Start difference. First operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-08 07:27:45,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:45,036 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-08 07:27:45,036 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-08 07:27:45,037 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:27:45,037 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:27:45,037 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:27:45,037 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:27:45,037 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:45,038 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 36 transitions. [2022-04-08 07:27:45,038 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 36 transitions. Word has length 24 [2022-04-08 07:27:45,038 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:27:45,038 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 36 transitions. [2022-04-08 07:27:45,038 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:27:45,038 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 36 transitions. [2022-04-08 07:27:45,066 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:45,067 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 36 transitions. [2022-04-08 07:27:45,067 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 07:27:45,067 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:27:45,067 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:27:45,084 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-08 07:27:45,283 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:27:45,284 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:27:45,284 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:27:45,284 INFO L85 PathProgramCache]: Analyzing trace with hash 584619061, now seen corresponding path program 1 times [2022-04-08 07:27:45,284 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:45,284 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [55138655] [2022-04-08 07:27:47,482 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:27:47,482 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:27:47,482 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:27:47,482 INFO L85 PathProgramCache]: Analyzing trace with hash 584619061, now seen corresponding path program 2 times [2022-04-08 07:27:47,482 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:27:47,482 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [51538829] [2022-04-08 07:27:47,482 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:27:47,482 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:27:47,508 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:27:47,508 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1674356987] [2022-04-08 07:27:47,509 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:27:47,509 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:27:47,509 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:27:47,523 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:27:47,524 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-08 07:27:47,570 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 07:27:47,570 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:27:47,572 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 07:27:47,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:27:47,580 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:27:47,724 INFO L272 TraceCheckUtils]: 0: Hoare triple {1057#true} call ULTIMATE.init(); {1057#true} is VALID [2022-04-08 07:27:47,724 INFO L290 TraceCheckUtils]: 1: Hoare triple {1057#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,725 INFO L290 TraceCheckUtils]: 2: Hoare triple {1065#(<= ~counter~0 0)} assume true; {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,725 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1065#(<= ~counter~0 0)} {1057#true} #65#return; {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,726 INFO L272 TraceCheckUtils]: 4: Hoare triple {1065#(<= ~counter~0 0)} call #t~ret7 := main(); {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,726 INFO L290 TraceCheckUtils]: 5: Hoare triple {1065#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,727 INFO L272 TraceCheckUtils]: 6: Hoare triple {1065#(<= ~counter~0 0)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,727 INFO L290 TraceCheckUtils]: 7: Hoare triple {1065#(<= ~counter~0 0)} ~cond := #in~cond; {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,727 INFO L290 TraceCheckUtils]: 8: Hoare triple {1065#(<= ~counter~0 0)} assume !(0 == ~cond); {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,728 INFO L290 TraceCheckUtils]: 9: Hoare triple {1065#(<= ~counter~0 0)} assume true; {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,728 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1065#(<= ~counter~0 0)} {1065#(<= ~counter~0 0)} #59#return; {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,729 INFO L290 TraceCheckUtils]: 11: Hoare triple {1065#(<= ~counter~0 0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1065#(<= ~counter~0 0)} is VALID [2022-04-08 07:27:47,729 INFO L290 TraceCheckUtils]: 12: Hoare triple {1065#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1099#(<= ~counter~0 1)} is VALID [2022-04-08 07:27:47,729 INFO L290 TraceCheckUtils]: 13: Hoare triple {1099#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {1099#(<= ~counter~0 1)} is VALID [2022-04-08 07:27:47,730 INFO L272 TraceCheckUtils]: 14: Hoare triple {1099#(<= ~counter~0 1)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1099#(<= ~counter~0 1)} is VALID [2022-04-08 07:27:47,731 INFO L290 TraceCheckUtils]: 15: Hoare triple {1099#(<= ~counter~0 1)} ~cond := #in~cond; {1099#(<= ~counter~0 1)} is VALID [2022-04-08 07:27:47,731 INFO L290 TraceCheckUtils]: 16: Hoare triple {1099#(<= ~counter~0 1)} assume !(0 == ~cond); {1099#(<= ~counter~0 1)} is VALID [2022-04-08 07:27:47,731 INFO L290 TraceCheckUtils]: 17: Hoare triple {1099#(<= ~counter~0 1)} assume true; {1099#(<= ~counter~0 1)} is VALID [2022-04-08 07:27:47,734 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1099#(<= ~counter~0 1)} {1099#(<= ~counter~0 1)} #61#return; {1099#(<= ~counter~0 1)} is VALID [2022-04-08 07:27:47,735 INFO L290 TraceCheckUtils]: 19: Hoare triple {1099#(<= ~counter~0 1)} assume !!(0 != ~y~0); {1099#(<= ~counter~0 1)} is VALID [2022-04-08 07:27:47,735 INFO L290 TraceCheckUtils]: 20: Hoare triple {1099#(<= ~counter~0 1)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {1099#(<= ~counter~0 1)} is VALID [2022-04-08 07:27:47,735 INFO L290 TraceCheckUtils]: 21: Hoare triple {1099#(<= ~counter~0 1)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {1099#(<= ~counter~0 1)} is VALID [2022-04-08 07:27:47,736 INFO L290 TraceCheckUtils]: 22: Hoare triple {1099#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1130#(<= |main_#t~post6| 1)} is VALID [2022-04-08 07:27:47,736 INFO L290 TraceCheckUtils]: 23: Hoare triple {1130#(<= |main_#t~post6| 1)} assume !(#t~post6 < 10);havoc #t~post6; {1058#false} is VALID [2022-04-08 07:27:47,737 INFO L272 TraceCheckUtils]: 24: Hoare triple {1058#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {1058#false} is VALID [2022-04-08 07:27:47,737 INFO L290 TraceCheckUtils]: 25: Hoare triple {1058#false} ~cond := #in~cond; {1058#false} is VALID [2022-04-08 07:27:47,737 INFO L290 TraceCheckUtils]: 26: Hoare triple {1058#false} assume 0 == ~cond; {1058#false} is VALID [2022-04-08 07:27:47,737 INFO L290 TraceCheckUtils]: 27: Hoare triple {1058#false} assume !false; {1058#false} is VALID [2022-04-08 07:27:47,737 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:27:47,737 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:27:47,884 INFO L290 TraceCheckUtils]: 27: Hoare triple {1058#false} assume !false; {1058#false} is VALID [2022-04-08 07:27:47,884 INFO L290 TraceCheckUtils]: 26: Hoare triple {1058#false} assume 0 == ~cond; {1058#false} is VALID [2022-04-08 07:27:47,884 INFO L290 TraceCheckUtils]: 25: Hoare triple {1058#false} ~cond := #in~cond; {1058#false} is VALID [2022-04-08 07:27:47,884 INFO L272 TraceCheckUtils]: 24: Hoare triple {1058#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {1058#false} is VALID [2022-04-08 07:27:47,885 INFO L290 TraceCheckUtils]: 23: Hoare triple {1158#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {1058#false} is VALID [2022-04-08 07:27:47,885 INFO L290 TraceCheckUtils]: 22: Hoare triple {1162#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1158#(< |main_#t~post6| 10)} is VALID [2022-04-08 07:27:47,886 INFO L290 TraceCheckUtils]: 21: Hoare triple {1162#(< ~counter~0 10)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {1162#(< ~counter~0 10)} is VALID [2022-04-08 07:27:47,886 INFO L290 TraceCheckUtils]: 20: Hoare triple {1162#(< ~counter~0 10)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {1162#(< ~counter~0 10)} is VALID [2022-04-08 07:27:47,892 INFO L290 TraceCheckUtils]: 19: Hoare triple {1162#(< ~counter~0 10)} assume !!(0 != ~y~0); {1162#(< ~counter~0 10)} is VALID [2022-04-08 07:27:47,918 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1057#true} {1162#(< ~counter~0 10)} #61#return; {1162#(< ~counter~0 10)} is VALID [2022-04-08 07:27:47,918 INFO L290 TraceCheckUtils]: 17: Hoare triple {1057#true} assume true; {1057#true} is VALID [2022-04-08 07:27:47,919 INFO L290 TraceCheckUtils]: 16: Hoare triple {1057#true} assume !(0 == ~cond); {1057#true} is VALID [2022-04-08 07:27:47,919 INFO L290 TraceCheckUtils]: 15: Hoare triple {1057#true} ~cond := #in~cond; {1057#true} is VALID [2022-04-08 07:27:47,919 INFO L272 TraceCheckUtils]: 14: Hoare triple {1162#(< ~counter~0 10)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1057#true} is VALID [2022-04-08 07:27:47,919 INFO L290 TraceCheckUtils]: 13: Hoare triple {1162#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {1162#(< ~counter~0 10)} is VALID [2022-04-08 07:27:47,920 INFO L290 TraceCheckUtils]: 12: Hoare triple {1193#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1162#(< ~counter~0 10)} is VALID [2022-04-08 07:27:47,920 INFO L290 TraceCheckUtils]: 11: Hoare triple {1193#(< ~counter~0 9)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1193#(< ~counter~0 9)} is VALID [2022-04-08 07:27:47,921 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1057#true} {1193#(< ~counter~0 9)} #59#return; {1193#(< ~counter~0 9)} is VALID [2022-04-08 07:27:47,921 INFO L290 TraceCheckUtils]: 9: Hoare triple {1057#true} assume true; {1057#true} is VALID [2022-04-08 07:27:47,921 INFO L290 TraceCheckUtils]: 8: Hoare triple {1057#true} assume !(0 == ~cond); {1057#true} is VALID [2022-04-08 07:27:47,921 INFO L290 TraceCheckUtils]: 7: Hoare triple {1057#true} ~cond := #in~cond; {1057#true} is VALID [2022-04-08 07:27:47,921 INFO L272 TraceCheckUtils]: 6: Hoare triple {1193#(< ~counter~0 9)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {1057#true} is VALID [2022-04-08 07:27:47,923 INFO L290 TraceCheckUtils]: 5: Hoare triple {1193#(< ~counter~0 9)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1193#(< ~counter~0 9)} is VALID [2022-04-08 07:27:47,923 INFO L272 TraceCheckUtils]: 4: Hoare triple {1193#(< ~counter~0 9)} call #t~ret7 := main(); {1193#(< ~counter~0 9)} is VALID [2022-04-08 07:27:47,923 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1193#(< ~counter~0 9)} {1057#true} #65#return; {1193#(< ~counter~0 9)} is VALID [2022-04-08 07:27:47,924 INFO L290 TraceCheckUtils]: 2: Hoare triple {1193#(< ~counter~0 9)} assume true; {1193#(< ~counter~0 9)} is VALID [2022-04-08 07:27:47,924 INFO L290 TraceCheckUtils]: 1: Hoare triple {1057#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1193#(< ~counter~0 9)} is VALID [2022-04-08 07:27:47,924 INFO L272 TraceCheckUtils]: 0: Hoare triple {1057#true} call ULTIMATE.init(); {1057#true} is VALID [2022-04-08 07:27:47,925 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:27:47,925 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:27:47,925 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [51538829] [2022-04-08 07:27:47,925 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:27:47,925 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1674356987] [2022-04-08 07:27:47,925 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1674356987] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:27:47,925 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:27:47,925 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-08 07:27:47,925 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:27:47,926 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [55138655] [2022-04-08 07:27:47,926 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [55138655] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:27:47,926 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:27:47,926 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 07:27:47,926 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2079373630] [2022-04-08 07:27:47,926 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:27:47,926 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 28 [2022-04-08 07:27:47,927 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:27:47,927 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:47,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:47,945 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 07:27:47,945 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:47,945 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 07:27:47,945 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-08 07:27:47,946 INFO L87 Difference]: Start difference. First operand 33 states and 36 transitions. Second operand has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:48,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:48,031 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-04-08 07:27:48,031 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 07:27:48,031 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 28 [2022-04-08 07:27:48,031 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:27:48,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:48,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-04-08 07:27:48,033 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:48,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-04-08 07:27:48,034 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 48 transitions. [2022-04-08 07:27:48,064 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:48,065 INFO L225 Difference]: With dead ends: 44 [2022-04-08 07:27:48,065 INFO L226 Difference]: Without dead ends: 37 [2022-04-08 07:27:48,065 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-08 07:27:48,066 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 7 mSDsluCounter, 48 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 75 SdHoareTripleChecker+Invalid, 16 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 07:27:48,066 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 75 Invalid, 16 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 07:27:48,066 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-08 07:27:48,093 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-08 07:27:48,093 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:27:48,093 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:48,094 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:48,094 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:48,095 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:48,095 INFO L93 Difference]: Finished difference Result 37 states and 41 transitions. [2022-04-08 07:27:48,095 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-04-08 07:27:48,096 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:27:48,096 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:27:48,096 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 37 states. [2022-04-08 07:27:48,096 INFO L87 Difference]: Start difference. First operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 37 states. [2022-04-08 07:27:48,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:27:48,098 INFO L93 Difference]: Finished difference Result 37 states and 41 transitions. [2022-04-08 07:27:48,098 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-04-08 07:27:48,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:27:48,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:27:48,098 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:27:48,098 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:27:48,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:27:48,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 41 transitions. [2022-04-08 07:27:48,099 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 41 transitions. Word has length 28 [2022-04-08 07:27:48,099 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:27:48,099 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 41 transitions. [2022-04-08 07:27:48,100 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 07:27:48,100 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 41 transitions. [2022-04-08 07:27:48,133 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:27:48,133 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-04-08 07:27:48,133 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 07:27:48,133 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:27:48,134 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:27:48,153 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 07:27:48,347 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:27:48,347 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:27:48,348 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:27:48,348 INFO L85 PathProgramCache]: Analyzing trace with hash 586406521, now seen corresponding path program 1 times [2022-04-08 07:27:48,348 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:27:48,348 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2117499471] [2022-04-08 07:27:50,456 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:27:50,457 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:27:50,457 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:27:50,457 INFO L85 PathProgramCache]: Analyzing trace with hash 586406521, now seen corresponding path program 2 times [2022-04-08 07:27:50,457 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:27:50,457 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1354386608] [2022-04-08 07:27:50,457 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:27:50,457 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:27:50,468 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:27:50,468 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1157822309] [2022-04-08 07:27:50,469 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:27:50,469 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:27:50,469 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:27:50,470 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:27:50,470 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-08 07:27:50,503 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 07:27:50,504 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:27:50,504 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-08 07:27:50,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:27:50,532 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:27:51,721 INFO L272 TraceCheckUtils]: 0: Hoare triple {1470#true} call ULTIMATE.init(); {1470#true} is VALID [2022-04-08 07:27:51,722 INFO L290 TraceCheckUtils]: 1: Hoare triple {1470#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1470#true} is VALID [2022-04-08 07:27:51,722 INFO L290 TraceCheckUtils]: 2: Hoare triple {1470#true} assume true; {1470#true} is VALID [2022-04-08 07:27:51,722 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1470#true} {1470#true} #65#return; {1470#true} is VALID [2022-04-08 07:27:51,722 INFO L272 TraceCheckUtils]: 4: Hoare triple {1470#true} call #t~ret7 := main(); {1470#true} is VALID [2022-04-08 07:27:51,722 INFO L290 TraceCheckUtils]: 5: Hoare triple {1470#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1470#true} is VALID [2022-04-08 07:27:51,722 INFO L272 TraceCheckUtils]: 6: Hoare triple {1470#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {1470#true} is VALID [2022-04-08 07:27:51,723 INFO L290 TraceCheckUtils]: 7: Hoare triple {1470#true} ~cond := #in~cond; {1496#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 07:27:51,723 INFO L290 TraceCheckUtils]: 8: Hoare triple {1496#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1500#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:27:51,723 INFO L290 TraceCheckUtils]: 9: Hoare triple {1500#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1500#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:27:51,724 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1500#(not (= |assume_abort_if_not_#in~cond| 0))} {1470#true} #59#return; {1507#(<= 1 main_~b~0)} is VALID [2022-04-08 07:27:51,724 INFO L290 TraceCheckUtils]: 11: Hoare triple {1507#(<= 1 main_~b~0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:27:51,725 INFO L290 TraceCheckUtils]: 12: Hoare triple {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:27:51,725 INFO L290 TraceCheckUtils]: 13: Hoare triple {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:27:51,725 INFO L272 TraceCheckUtils]: 14: Hoare triple {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1470#true} is VALID [2022-04-08 07:27:51,725 INFO L290 TraceCheckUtils]: 15: Hoare triple {1470#true} ~cond := #in~cond; {1524#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:27:51,726 INFO L290 TraceCheckUtils]: 16: Hoare triple {1524#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1528#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:27:51,726 INFO L290 TraceCheckUtils]: 17: Hoare triple {1528#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1528#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:27:51,727 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1528#(not (= |__VERIFIER_assert_#in~cond| 0))} {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #61#return; {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:27:51,727 INFO L290 TraceCheckUtils]: 19: Hoare triple {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:27:51,728 INFO L290 TraceCheckUtils]: 20: Hoare triple {1511#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {1541#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:27:51,729 INFO L290 TraceCheckUtils]: 21: Hoare triple {1541#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {1545#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:27:51,730 INFO L290 TraceCheckUtils]: 22: Hoare triple {1545#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1545#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:27:51,730 INFO L290 TraceCheckUtils]: 23: Hoare triple {1545#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !!(#t~post6 < 10);havoc #t~post6; {1545#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:27:51,732 INFO L272 TraceCheckUtils]: 24: Hoare triple {1545#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1555#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:27:51,732 INFO L290 TraceCheckUtils]: 25: Hoare triple {1555#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1559#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:27:51,733 INFO L290 TraceCheckUtils]: 26: Hoare triple {1559#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1471#false} is VALID [2022-04-08 07:27:51,733 INFO L290 TraceCheckUtils]: 27: Hoare triple {1471#false} assume !false; {1471#false} is VALID [2022-04-08 07:27:51,733 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:27:51,733 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:28:30,392 INFO L290 TraceCheckUtils]: 27: Hoare triple {1471#false} assume !false; {1471#false} is VALID [2022-04-08 07:28:30,393 INFO L290 TraceCheckUtils]: 26: Hoare triple {1559#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1471#false} is VALID [2022-04-08 07:28:30,393 INFO L290 TraceCheckUtils]: 25: Hoare triple {1555#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1559#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:28:30,394 INFO L272 TraceCheckUtils]: 24: Hoare triple {1575#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1555#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:28:30,394 INFO L290 TraceCheckUtils]: 23: Hoare triple {1575#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} assume !!(#t~post6 < 10);havoc #t~post6; {1575#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:28:30,395 INFO L290 TraceCheckUtils]: 22: Hoare triple {1575#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1575#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:28:30,403 INFO L290 TraceCheckUtils]: 21: Hoare triple {1585#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {1575#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:28:30,404 INFO L290 TraceCheckUtils]: 20: Hoare triple {1589#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {1585#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-08 07:28:30,404 INFO L290 TraceCheckUtils]: 19: Hoare triple {1589#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !!(0 != ~y~0); {1589#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-08 07:28:30,406 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1528#(not (= |__VERIFIER_assert_#in~cond| 0))} {1596#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} #61#return; {1589#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-08 07:28:30,407 INFO L290 TraceCheckUtils]: 17: Hoare triple {1528#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1528#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:28:30,407 INFO L290 TraceCheckUtils]: 16: Hoare triple {1606#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1528#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:28:30,408 INFO L290 TraceCheckUtils]: 15: Hoare triple {1470#true} ~cond := #in~cond; {1606#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 07:28:30,408 INFO L272 TraceCheckUtils]: 14: Hoare triple {1596#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1470#true} is VALID [2022-04-08 07:28:30,408 INFO L290 TraceCheckUtils]: 13: Hoare triple {1596#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {1596#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} is VALID [2022-04-08 07:28:30,409 INFO L290 TraceCheckUtils]: 12: Hoare triple {1596#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1596#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} is VALID [2022-04-08 07:28:30,409 INFO L290 TraceCheckUtils]: 11: Hoare triple {1619#(or (= (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1596#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} is VALID [2022-04-08 07:28:30,410 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1500#(not (= |assume_abort_if_not_#in~cond| 0))} {1470#true} #59#return; {1619#(or (= (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} is VALID [2022-04-08 07:28:30,410 INFO L290 TraceCheckUtils]: 9: Hoare triple {1500#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1500#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:28:30,411 INFO L290 TraceCheckUtils]: 8: Hoare triple {1632#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1500#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:28:30,411 INFO L290 TraceCheckUtils]: 7: Hoare triple {1470#true} ~cond := #in~cond; {1632#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 07:28:30,411 INFO L272 TraceCheckUtils]: 6: Hoare triple {1470#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {1470#true} is VALID [2022-04-08 07:28:30,411 INFO L290 TraceCheckUtils]: 5: Hoare triple {1470#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1470#true} is VALID [2022-04-08 07:28:30,411 INFO L272 TraceCheckUtils]: 4: Hoare triple {1470#true} call #t~ret7 := main(); {1470#true} is VALID [2022-04-08 07:28:30,411 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1470#true} {1470#true} #65#return; {1470#true} is VALID [2022-04-08 07:28:30,411 INFO L290 TraceCheckUtils]: 2: Hoare triple {1470#true} assume true; {1470#true} is VALID [2022-04-08 07:28:30,412 INFO L290 TraceCheckUtils]: 1: Hoare triple {1470#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1470#true} is VALID [2022-04-08 07:28:30,412 INFO L272 TraceCheckUtils]: 0: Hoare triple {1470#true} call ULTIMATE.init(); {1470#true} is VALID [2022-04-08 07:28:30,412 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:28:30,412 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:28:30,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1354386608] [2022-04-08 07:28:30,412 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:28:30,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1157822309] [2022-04-08 07:28:30,412 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1157822309] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:28:30,412 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:28:30,413 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13] total 19 [2022-04-08 07:28:30,413 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:28:30,413 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2117499471] [2022-04-08 07:28:30,413 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2117499471] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:28:30,413 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:28:30,413 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 07:28:30,413 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [967211609] [2022-04-08 07:28:30,413 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:28:30,413 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-08 07:28:30,414 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:28:30,414 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:28:30,434 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:28:30,434 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 07:28:30,434 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:28:30,435 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 07:28:30,435 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=280, Unknown=0, NotChecked=0, Total=342 [2022-04-08 07:28:30,435 INFO L87 Difference]: Start difference. First operand 37 states and 41 transitions. Second operand has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:28:30,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:28:30,909 INFO L93 Difference]: Finished difference Result 55 states and 61 transitions. [2022-04-08 07:28:30,909 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 07:28:30,910 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-08 07:28:30,910 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:28:30,910 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:28:30,911 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 55 transitions. [2022-04-08 07:28:30,911 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:28:30,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 55 transitions. [2022-04-08 07:28:30,913 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 55 transitions. [2022-04-08 07:28:30,952 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:28:30,953 INFO L225 Difference]: With dead ends: 55 [2022-04-08 07:28:30,953 INFO L226 Difference]: Without dead ends: 48 [2022-04-08 07:28:30,954 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 36 SyntacticMatches, 2 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 76 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=80, Invalid=382, Unknown=0, NotChecked=0, Total=462 [2022-04-08 07:28:30,954 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 34 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 114 SdHoareTripleChecker+Invalid, 156 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 07:28:30,954 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [36 Valid, 114 Invalid, 156 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 147 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 07:28:30,955 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-08 07:28:30,989 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 46. [2022-04-08 07:28:30,989 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:28:30,989 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 46 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 34 states have internal predecessors, (38), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:28:30,989 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 46 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 34 states have internal predecessors, (38), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:28:30,990 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 46 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 34 states have internal predecessors, (38), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:28:30,991 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:28:30,991 INFO L93 Difference]: Finished difference Result 48 states and 53 transitions. [2022-04-08 07:28:30,991 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 53 transitions. [2022-04-08 07:28:30,991 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:28:30,991 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:28:30,991 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 34 states have internal predecessors, (38), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 48 states. [2022-04-08 07:28:30,992 INFO L87 Difference]: Start difference. First operand has 46 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 34 states have internal predecessors, (38), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 48 states. [2022-04-08 07:28:30,993 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:28:30,993 INFO L93 Difference]: Finished difference Result 48 states and 53 transitions. [2022-04-08 07:28:30,993 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 53 transitions. [2022-04-08 07:28:30,993 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:28:30,993 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:28:30,993 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:28:30,993 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:28:30,993 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 33 states have (on average 1.1515151515151516) internal successors, (38), 34 states have internal predecessors, (38), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:28:30,994 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 50 transitions. [2022-04-08 07:28:30,994 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 50 transitions. Word has length 28 [2022-04-08 07:28:30,994 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:28:30,995 INFO L478 AbstractCegarLoop]: Abstraction has 46 states and 50 transitions. [2022-04-08 07:28:30,995 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:28:30,995 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 46 states and 50 transitions. [2022-04-08 07:28:31,034 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:28:31,035 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2022-04-08 07:28:31,035 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 07:28:31,035 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:28:31,035 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:28:31,053 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-08 07:28:31,251 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:28:31,251 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:28:31,251 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:28:31,252 INFO L85 PathProgramCache]: Analyzing trace with hash 1395753147, now seen corresponding path program 1 times [2022-04-08 07:28:31,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:28:31,252 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1012657422] [2022-04-08 07:28:33,882 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:28:33,882 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:28:33,882 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:28:33,882 INFO L85 PathProgramCache]: Analyzing trace with hash 1395753147, now seen corresponding path program 2 times [2022-04-08 07:28:33,882 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:28:33,882 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1566565031] [2022-04-08 07:28:33,883 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:28:33,883 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:28:33,905 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:28:33,905 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [586545583] [2022-04-08 07:28:33,905 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:28:33,905 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:28:33,905 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:28:33,908 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:28:33,909 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-08 07:28:33,950 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 07:28:33,950 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:28:33,951 INFO L263 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-08 07:28:33,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:28:33,963 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:28:35,306 INFO L272 TraceCheckUtils]: 0: Hoare triple {1960#true} call ULTIMATE.init(); {1960#true} is VALID [2022-04-08 07:28:35,307 INFO L290 TraceCheckUtils]: 1: Hoare triple {1960#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1960#true} is VALID [2022-04-08 07:28:35,307 INFO L290 TraceCheckUtils]: 2: Hoare triple {1960#true} assume true; {1960#true} is VALID [2022-04-08 07:28:35,307 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1960#true} {1960#true} #65#return; {1960#true} is VALID [2022-04-08 07:28:35,307 INFO L272 TraceCheckUtils]: 4: Hoare triple {1960#true} call #t~ret7 := main(); {1960#true} is VALID [2022-04-08 07:28:35,307 INFO L290 TraceCheckUtils]: 5: Hoare triple {1960#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1960#true} is VALID [2022-04-08 07:28:35,307 INFO L272 TraceCheckUtils]: 6: Hoare triple {1960#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {1960#true} is VALID [2022-04-08 07:28:35,314 INFO L290 TraceCheckUtils]: 7: Hoare triple {1960#true} ~cond := #in~cond; {1986#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 07:28:35,315 INFO L290 TraceCheckUtils]: 8: Hoare triple {1986#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1990#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:28:35,315 INFO L290 TraceCheckUtils]: 9: Hoare triple {1990#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1990#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:28:35,316 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1990#(not (= |assume_abort_if_not_#in~cond| 0))} {1960#true} #59#return; {1997#(<= 1 main_~b~0)} is VALID [2022-04-08 07:28:35,316 INFO L290 TraceCheckUtils]: 11: Hoare triple {1997#(<= 1 main_~b~0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2001#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:28:35,316 INFO L290 TraceCheckUtils]: 12: Hoare triple {2001#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2001#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:28:35,317 INFO L290 TraceCheckUtils]: 13: Hoare triple {2001#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {2001#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:28:35,317 INFO L272 TraceCheckUtils]: 14: Hoare triple {2001#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1960#true} is VALID [2022-04-08 07:28:35,317 INFO L290 TraceCheckUtils]: 15: Hoare triple {1960#true} ~cond := #in~cond; {2014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:28:35,317 INFO L290 TraceCheckUtils]: 16: Hoare triple {2014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:28:35,318 INFO L290 TraceCheckUtils]: 17: Hoare triple {2018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:28:35,318 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2018#(not (= |__VERIFIER_assert_#in~cond| 0))} {2001#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #61#return; {2025#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:28:35,319 INFO L290 TraceCheckUtils]: 19: Hoare triple {2025#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {2025#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:28:35,319 INFO L290 TraceCheckUtils]: 20: Hoare triple {2025#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2032#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~b~0 main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:28:35,320 INFO L290 TraceCheckUtils]: 21: Hoare triple {2032#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~b~0 main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2036#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 07:28:35,321 INFO L290 TraceCheckUtils]: 22: Hoare triple {2036#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2036#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 07:28:35,321 INFO L290 TraceCheckUtils]: 23: Hoare triple {2036#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {2036#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 07:28:37,323 WARN L272 TraceCheckUtils]: 24: Hoare triple {2036#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2046#(<= 1 |__VERIFIER_assert_#in~cond|)} is UNKNOWN [2022-04-08 07:28:37,324 INFO L290 TraceCheckUtils]: 25: Hoare triple {2046#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2050#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:28:37,324 INFO L290 TraceCheckUtils]: 26: Hoare triple {2050#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1961#false} is VALID [2022-04-08 07:28:37,324 INFO L290 TraceCheckUtils]: 27: Hoare triple {1961#false} assume !false; {1961#false} is VALID [2022-04-08 07:28:37,325 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:28:37,325 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:30:00,073 INFO L290 TraceCheckUtils]: 27: Hoare triple {1961#false} assume !false; {1961#false} is VALID [2022-04-08 07:30:00,073 INFO L290 TraceCheckUtils]: 26: Hoare triple {2050#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1961#false} is VALID [2022-04-08 07:30:00,074 INFO L290 TraceCheckUtils]: 25: Hoare triple {2046#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2050#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:30:00,074 INFO L272 TraceCheckUtils]: 24: Hoare triple {2066#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2046#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:30:00,075 INFO L290 TraceCheckUtils]: 23: Hoare triple {2066#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} assume !!(#t~post6 < 10);havoc #t~post6; {2066#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:30:00,075 INFO L290 TraceCheckUtils]: 22: Hoare triple {2066#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2066#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:30:00,091 INFO L290 TraceCheckUtils]: 21: Hoare triple {2076#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2066#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:30:00,094 INFO L290 TraceCheckUtils]: 20: Hoare triple {2080#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2076#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-08 07:30:00,094 INFO L290 TraceCheckUtils]: 19: Hoare triple {2080#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume !!(0 != ~y~0); {2080#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-08 07:30:00,399 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2018#(not (= |__VERIFIER_assert_#in~cond| 0))} {1960#true} #61#return; {2080#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-08 07:30:00,399 INFO L290 TraceCheckUtils]: 17: Hoare triple {2018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:30:00,399 INFO L290 TraceCheckUtils]: 16: Hoare triple {2096#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:30:00,400 INFO L290 TraceCheckUtils]: 15: Hoare triple {1960#true} ~cond := #in~cond; {2096#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 07:30:00,400 INFO L272 TraceCheckUtils]: 14: Hoare triple {1960#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1960#true} is VALID [2022-04-08 07:30:00,400 INFO L290 TraceCheckUtils]: 13: Hoare triple {1960#true} assume !!(#t~post6 < 10);havoc #t~post6; {1960#true} is VALID [2022-04-08 07:30:00,400 INFO L290 TraceCheckUtils]: 12: Hoare triple {1960#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1960#true} is VALID [2022-04-08 07:30:00,400 INFO L290 TraceCheckUtils]: 11: Hoare triple {1960#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1960#true} is VALID [2022-04-08 07:30:00,400 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1960#true} {1960#true} #59#return; {1960#true} is VALID [2022-04-08 07:30:00,400 INFO L290 TraceCheckUtils]: 9: Hoare triple {1960#true} assume true; {1960#true} is VALID [2022-04-08 07:30:00,401 INFO L290 TraceCheckUtils]: 8: Hoare triple {1960#true} assume !(0 == ~cond); {1960#true} is VALID [2022-04-08 07:30:00,401 INFO L290 TraceCheckUtils]: 7: Hoare triple {1960#true} ~cond := #in~cond; {1960#true} is VALID [2022-04-08 07:30:00,401 INFO L272 TraceCheckUtils]: 6: Hoare triple {1960#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {1960#true} is VALID [2022-04-08 07:30:00,401 INFO L290 TraceCheckUtils]: 5: Hoare triple {1960#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1960#true} is VALID [2022-04-08 07:30:00,401 INFO L272 TraceCheckUtils]: 4: Hoare triple {1960#true} call #t~ret7 := main(); {1960#true} is VALID [2022-04-08 07:30:00,401 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1960#true} {1960#true} #65#return; {1960#true} is VALID [2022-04-08 07:30:00,401 INFO L290 TraceCheckUtils]: 2: Hoare triple {1960#true} assume true; {1960#true} is VALID [2022-04-08 07:30:00,401 INFO L290 TraceCheckUtils]: 1: Hoare triple {1960#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1960#true} is VALID [2022-04-08 07:30:00,401 INFO L272 TraceCheckUtils]: 0: Hoare triple {1960#true} call ULTIMATE.init(); {1960#true} is VALID [2022-04-08 07:30:00,401 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:30:00,402 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:30:00,402 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1566565031] [2022-04-08 07:30:00,402 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:30:00,402 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [586545583] [2022-04-08 07:30:00,402 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [586545583] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:30:00,402 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:30:00,402 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 17 [2022-04-08 07:30:00,402 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:30:00,402 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1012657422] [2022-04-08 07:30:00,402 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1012657422] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:30:00,402 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:30:00,402 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 07:30:00,403 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [177436116] [2022-04-08 07:30:00,403 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:30:00,403 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 11 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-08 07:30:00,403 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:30:00,403 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 11 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:30:00,752 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:30:00,753 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 07:30:00,753 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:30:00,753 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 07:30:00,753 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2022-04-08 07:30:00,753 INFO L87 Difference]: Start difference. First operand 46 states and 50 transitions. Second operand has 13 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 11 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:30:08,364 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:30:11,121 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:30:11,121 INFO L93 Difference]: Finished difference Result 57 states and 63 transitions. [2022-04-08 07:30:11,121 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 07:30:11,121 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 11 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-08 07:30:11,121 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:30:11,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 11 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:30:11,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 52 transitions. [2022-04-08 07:30:11,123 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 11 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:30:11,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 52 transitions. [2022-04-08 07:30:11,124 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 52 transitions. [2022-04-08 07:30:13,113 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:30:13,114 INFO L225 Difference]: With dead ends: 57 [2022-04-08 07:30:13,114 INFO L226 Difference]: Without dead ends: 55 [2022-04-08 07:30:13,115 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 39 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 60 ImplicationChecksByTransitivity, 4.2s TimeCoverageRelationStatistics Valid=65, Invalid=315, Unknown=0, NotChecked=0, Total=380 [2022-04-08 07:30:13,115 INFO L913 BasicCegarLoop]: 19 mSDtfsCounter, 30 mSDsluCounter, 123 mSDsCounter, 0 mSdLazyCounter, 216 mSolverCounterSat, 8 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 142 SdHoareTripleChecker+Invalid, 225 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 216 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.2s IncrementalHoareTripleChecker+Time [2022-04-08 07:30:13,115 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 142 Invalid, 225 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 216 Invalid, 1 Unknown, 0 Unchecked, 5.2s Time] [2022-04-08 07:30:13,116 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-08 07:30:13,156 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 51. [2022-04-08 07:30:13,156 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:30:13,156 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 38 states have internal predecessors, (41), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:30:13,156 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 38 states have internal predecessors, (41), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:30:13,156 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 38 states have internal predecessors, (41), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:30:13,157 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:30:13,158 INFO L93 Difference]: Finished difference Result 55 states and 61 transitions. [2022-04-08 07:30:13,158 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 61 transitions. [2022-04-08 07:30:13,158 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:30:13,158 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:30:13,158 INFO L74 IsIncluded]: Start isIncluded. First operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 38 states have internal predecessors, (41), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 55 states. [2022-04-08 07:30:13,158 INFO L87 Difference]: Start difference. First operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 38 states have internal predecessors, (41), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 55 states. [2022-04-08 07:30:13,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:30:13,159 INFO L93 Difference]: Finished difference Result 55 states and 61 transitions. [2022-04-08 07:30:13,159 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 61 transitions. [2022-04-08 07:30:13,160 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:30:13,160 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:30:13,160 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:30:13,160 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:30:13,160 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 38 states have internal predecessors, (41), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:30:13,161 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 55 transitions. [2022-04-08 07:30:13,161 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 55 transitions. Word has length 28 [2022-04-08 07:30:13,161 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:30:13,161 INFO L478 AbstractCegarLoop]: Abstraction has 51 states and 55 transitions. [2022-04-08 07:30:13,161 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 1.5384615384615385) internal successors, (20), 11 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 07:30:13,161 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 51 states and 55 transitions. [2022-04-08 07:30:13,371 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:30:13,371 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2022-04-08 07:30:13,371 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 07:30:13,371 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:30:13,371 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:30:13,390 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-08 07:30:13,578 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:30:13,579 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:30:13,579 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:30:13,579 INFO L85 PathProgramCache]: Analyzing trace with hash -1513703477, now seen corresponding path program 1 times [2022-04-08 07:30:13,579 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:30:13,579 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1571358964] [2022-04-08 07:30:17,647 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:30:17,647 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:30:17,647 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:30:17,647 INFO L85 PathProgramCache]: Analyzing trace with hash -1513703477, now seen corresponding path program 2 times [2022-04-08 07:30:17,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:30:17,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2056357469] [2022-04-08 07:30:17,648 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:30:17,648 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:30:17,656 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:30:17,657 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1599889405] [2022-04-08 07:30:17,657 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:30:17,657 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:30:17,657 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:30:17,664 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:30:17,665 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-08 07:30:17,700 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 07:30:17,701 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:30:17,701 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-08 07:30:17,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:30:17,711 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:30:21,211 INFO L272 TraceCheckUtils]: 0: Hoare triple {2476#true} call ULTIMATE.init(); {2476#true} is VALID [2022-04-08 07:30:21,211 INFO L290 TraceCheckUtils]: 1: Hoare triple {2476#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2476#true} is VALID [2022-04-08 07:30:21,211 INFO L290 TraceCheckUtils]: 2: Hoare triple {2476#true} assume true; {2476#true} is VALID [2022-04-08 07:30:21,211 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2476#true} {2476#true} #65#return; {2476#true} is VALID [2022-04-08 07:30:21,211 INFO L272 TraceCheckUtils]: 4: Hoare triple {2476#true} call #t~ret7 := main(); {2476#true} is VALID [2022-04-08 07:30:21,212 INFO L290 TraceCheckUtils]: 5: Hoare triple {2476#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {2476#true} is VALID [2022-04-08 07:30:21,212 INFO L272 TraceCheckUtils]: 6: Hoare triple {2476#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2476#true} is VALID [2022-04-08 07:30:21,212 INFO L290 TraceCheckUtils]: 7: Hoare triple {2476#true} ~cond := #in~cond; {2476#true} is VALID [2022-04-08 07:30:21,212 INFO L290 TraceCheckUtils]: 8: Hoare triple {2476#true} assume !(0 == ~cond); {2476#true} is VALID [2022-04-08 07:30:21,212 INFO L290 TraceCheckUtils]: 9: Hoare triple {2476#true} assume true; {2476#true} is VALID [2022-04-08 07:30:21,212 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2476#true} {2476#true} #59#return; {2476#true} is VALID [2022-04-08 07:30:21,212 INFO L290 TraceCheckUtils]: 11: Hoare triple {2476#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2476#true} is VALID [2022-04-08 07:30:21,212 INFO L290 TraceCheckUtils]: 12: Hoare triple {2476#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2476#true} is VALID [2022-04-08 07:30:21,212 INFO L290 TraceCheckUtils]: 13: Hoare triple {2476#true} assume !!(#t~post6 < 10);havoc #t~post6; {2476#true} is VALID [2022-04-08 07:30:21,212 INFO L272 TraceCheckUtils]: 14: Hoare triple {2476#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2476#true} is VALID [2022-04-08 07:30:21,213 INFO L290 TraceCheckUtils]: 15: Hoare triple {2476#true} ~cond := #in~cond; {2476#true} is VALID [2022-04-08 07:30:21,213 INFO L290 TraceCheckUtils]: 16: Hoare triple {2476#true} assume !(0 == ~cond); {2476#true} is VALID [2022-04-08 07:30:21,213 INFO L290 TraceCheckUtils]: 17: Hoare triple {2476#true} assume true; {2476#true} is VALID [2022-04-08 07:30:21,213 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2476#true} {2476#true} #61#return; {2476#true} is VALID [2022-04-08 07:30:21,213 INFO L290 TraceCheckUtils]: 19: Hoare triple {2476#true} assume !!(0 != ~y~0); {2476#true} is VALID [2022-04-08 07:30:21,213 INFO L290 TraceCheckUtils]: 20: Hoare triple {2476#true} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2476#true} is VALID [2022-04-08 07:30:21,213 INFO L290 TraceCheckUtils]: 21: Hoare triple {2476#true} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2476#true} is VALID [2022-04-08 07:30:21,213 INFO L290 TraceCheckUtils]: 22: Hoare triple {2476#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2476#true} is VALID [2022-04-08 07:30:21,213 INFO L290 TraceCheckUtils]: 23: Hoare triple {2476#true} assume !!(#t~post6 < 10);havoc #t~post6; {2476#true} is VALID [2022-04-08 07:30:21,213 INFO L272 TraceCheckUtils]: 24: Hoare triple {2476#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2476#true} is VALID [2022-04-08 07:30:21,214 INFO L290 TraceCheckUtils]: 25: Hoare triple {2476#true} ~cond := #in~cond; {2556#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:30:21,214 INFO L290 TraceCheckUtils]: 26: Hoare triple {2556#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2560#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:30:21,216 INFO L290 TraceCheckUtils]: 27: Hoare triple {2560#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2560#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:30:23,218 WARN L284 TraceCheckUtils]: 28: Hoare quadruple {2560#(not (= |__VERIFIER_assert_#in~cond| 0))} {2476#true} #61#return; {2567#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} is UNKNOWN [2022-04-08 07:30:23,219 INFO L290 TraceCheckUtils]: 29: Hoare triple {2567#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} assume !(0 != ~y~0); {2571#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:30:23,219 INFO L272 TraceCheckUtils]: 30: Hoare triple {2571#(= main_~z~0 (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {2575#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:30:23,220 INFO L290 TraceCheckUtils]: 31: Hoare triple {2575#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2579#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:30:23,220 INFO L290 TraceCheckUtils]: 32: Hoare triple {2579#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2477#false} is VALID [2022-04-08 07:30:23,220 INFO L290 TraceCheckUtils]: 33: Hoare triple {2477#false} assume !false; {2477#false} is VALID [2022-04-08 07:30:23,220 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 07:30:23,220 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:30:30,076 INFO L290 TraceCheckUtils]: 33: Hoare triple {2477#false} assume !false; {2477#false} is VALID [2022-04-08 07:30:30,076 INFO L290 TraceCheckUtils]: 32: Hoare triple {2579#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2477#false} is VALID [2022-04-08 07:30:30,077 INFO L290 TraceCheckUtils]: 31: Hoare triple {2575#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2579#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:30:30,077 INFO L272 TraceCheckUtils]: 30: Hoare triple {2571#(= main_~z~0 (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {2575#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:30:30,078 INFO L290 TraceCheckUtils]: 29: Hoare triple {2598#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} assume !(0 != ~y~0); {2571#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:30:30,079 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2560#(not (= |__VERIFIER_assert_#in~cond| 0))} {2476#true} #61#return; {2598#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-08 07:30:30,079 INFO L290 TraceCheckUtils]: 27: Hoare triple {2560#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2560#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:30:30,079 INFO L290 TraceCheckUtils]: 26: Hoare triple {2611#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2560#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:30:30,080 INFO L290 TraceCheckUtils]: 25: Hoare triple {2476#true} ~cond := #in~cond; {2611#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 07:30:30,080 INFO L272 TraceCheckUtils]: 24: Hoare triple {2476#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2476#true} is VALID [2022-04-08 07:30:30,080 INFO L290 TraceCheckUtils]: 23: Hoare triple {2476#true} assume !!(#t~post6 < 10);havoc #t~post6; {2476#true} is VALID [2022-04-08 07:30:30,080 INFO L290 TraceCheckUtils]: 22: Hoare triple {2476#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2476#true} is VALID [2022-04-08 07:30:30,080 INFO L290 TraceCheckUtils]: 21: Hoare triple {2476#true} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2476#true} is VALID [2022-04-08 07:30:30,080 INFO L290 TraceCheckUtils]: 20: Hoare triple {2476#true} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2476#true} is VALID [2022-04-08 07:30:30,080 INFO L290 TraceCheckUtils]: 19: Hoare triple {2476#true} assume !!(0 != ~y~0); {2476#true} is VALID [2022-04-08 07:30:30,080 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2476#true} {2476#true} #61#return; {2476#true} is VALID [2022-04-08 07:30:30,080 INFO L290 TraceCheckUtils]: 17: Hoare triple {2476#true} assume true; {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L290 TraceCheckUtils]: 16: Hoare triple {2476#true} assume !(0 == ~cond); {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L290 TraceCheckUtils]: 15: Hoare triple {2476#true} ~cond := #in~cond; {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L272 TraceCheckUtils]: 14: Hoare triple {2476#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L290 TraceCheckUtils]: 13: Hoare triple {2476#true} assume !!(#t~post6 < 10);havoc #t~post6; {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L290 TraceCheckUtils]: 12: Hoare triple {2476#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L290 TraceCheckUtils]: 11: Hoare triple {2476#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2476#true} {2476#true} #59#return; {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L290 TraceCheckUtils]: 9: Hoare triple {2476#true} assume true; {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L290 TraceCheckUtils]: 8: Hoare triple {2476#true} assume !(0 == ~cond); {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L290 TraceCheckUtils]: 7: Hoare triple {2476#true} ~cond := #in~cond; {2476#true} is VALID [2022-04-08 07:30:30,081 INFO L272 TraceCheckUtils]: 6: Hoare triple {2476#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2476#true} is VALID [2022-04-08 07:30:30,082 INFO L290 TraceCheckUtils]: 5: Hoare triple {2476#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {2476#true} is VALID [2022-04-08 07:30:30,082 INFO L272 TraceCheckUtils]: 4: Hoare triple {2476#true} call #t~ret7 := main(); {2476#true} is VALID [2022-04-08 07:30:30,082 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2476#true} {2476#true} #65#return; {2476#true} is VALID [2022-04-08 07:30:30,082 INFO L290 TraceCheckUtils]: 2: Hoare triple {2476#true} assume true; {2476#true} is VALID [2022-04-08 07:30:30,082 INFO L290 TraceCheckUtils]: 1: Hoare triple {2476#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2476#true} is VALID [2022-04-08 07:30:30,082 INFO L272 TraceCheckUtils]: 0: Hoare triple {2476#true} call ULTIMATE.init(); {2476#true} is VALID [2022-04-08 07:30:30,082 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 07:30:30,082 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:30:30,082 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2056357469] [2022-04-08 07:30:30,083 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:30:30,083 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1599889405] [2022-04-08 07:30:30,083 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1599889405] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:30:30,083 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:30:30,083 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 07:30:30,083 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:30:30,083 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1571358964] [2022-04-08 07:30:30,083 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1571358964] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:30:30,083 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:30:30,083 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 07:30:30,083 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1460001955] [2022-04-08 07:30:30,083 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:30:30,084 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 34 [2022-04-08 07:30:30,084 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:30:30,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 07:30:32,108 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 30 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 07:30:32,108 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 07:30:32,108 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:30:32,108 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 07:30:32,108 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-08 07:30:32,109 INFO L87 Difference]: Start difference. First operand 51 states and 55 transitions. Second operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 07:30:34,141 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:30:34,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:30:34,418 INFO L93 Difference]: Finished difference Result 59 states and 62 transitions. [2022-04-08 07:30:34,418 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 07:30:34,418 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 34 [2022-04-08 07:30:34,418 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:30:34,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 07:30:34,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 35 transitions. [2022-04-08 07:30:34,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 07:30:34,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 35 transitions. [2022-04-08 07:30:34,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 35 transitions. [2022-04-08 07:30:36,466 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 34 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 07:30:36,467 INFO L225 Difference]: With dead ends: 59 [2022-04-08 07:30:36,467 INFO L226 Difference]: Without dead ends: 52 [2022-04-08 07:30:36,467 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 58 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-08 07:30:36,468 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 12 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 62 mSolverCounterSat, 1 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 103 SdHoareTripleChecker+Invalid, 64 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 62 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-04-08 07:30:36,468 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 103 Invalid, 64 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 62 Invalid, 1 Unknown, 0 Unchecked, 2.1s Time] [2022-04-08 07:30:36,468 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-08 07:30:36,500 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 42. [2022-04-08 07:30:36,500 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:30:36,500 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 42 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 31 states have internal predecessors, (33), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:30:36,500 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 42 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 31 states have internal predecessors, (33), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:30:36,500 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 42 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 31 states have internal predecessors, (33), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:30:36,501 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:30:36,502 INFO L93 Difference]: Finished difference Result 52 states and 55 transitions. [2022-04-08 07:30:36,502 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 55 transitions. [2022-04-08 07:30:36,502 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:30:36,502 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:30:36,502 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 31 states have internal predecessors, (33), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 52 states. [2022-04-08 07:30:36,502 INFO L87 Difference]: Start difference. First operand has 42 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 31 states have internal predecessors, (33), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 52 states. [2022-04-08 07:30:36,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:30:36,503 INFO L93 Difference]: Finished difference Result 52 states and 55 transitions. [2022-04-08 07:30:36,503 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 55 transitions. [2022-04-08 07:30:36,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:30:36,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:30:36,503 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:30:36,503 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:30:36,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 31 states have internal predecessors, (33), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:30:36,504 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 45 transitions. [2022-04-08 07:30:36,505 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 45 transitions. Word has length 34 [2022-04-08 07:30:36,505 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:30:36,505 INFO L478 AbstractCegarLoop]: Abstraction has 42 states and 45 transitions. [2022-04-08 07:30:36,505 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 07:30:36,505 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 42 states and 45 transitions. [2022-04-08 07:30:42,654 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 42 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 07:30:42,654 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 45 transitions. [2022-04-08 07:30:42,655 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-08 07:30:42,655 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:30:42,655 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:30:42,675 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-08 07:30:42,855 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:30:42,856 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:30:42,856 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:30:42,856 INFO L85 PathProgramCache]: Analyzing trace with hash -1456887472, now seen corresponding path program 3 times [2022-04-08 07:30:42,856 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:30:42,856 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [194377107] [2022-04-08 07:30:46,855 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:30:46,855 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:30:46,855 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:30:46,855 INFO L85 PathProgramCache]: Analyzing trace with hash -1456887472, now seen corresponding path program 4 times [2022-04-08 07:30:46,856 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:30:46,856 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1128664024] [2022-04-08 07:30:46,856 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:30:46,856 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:30:46,870 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:30:46,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1634421668] [2022-04-08 07:30:46,870 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 07:30:46,870 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:30:46,870 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:30:46,871 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:30:46,872 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-08 07:30:46,908 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 07:30:46,908 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:30:46,908 INFO L263 TraceCheckSpWp]: Trace formula consists of 124 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 07:30:46,916 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:30:46,917 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:30:47,095 INFO L272 TraceCheckUtils]: 0: Hoare triple {2999#true} call ULTIMATE.init(); {2999#true} is VALID [2022-04-08 07:30:47,096 INFO L290 TraceCheckUtils]: 1: Hoare triple {2999#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,096 INFO L290 TraceCheckUtils]: 2: Hoare triple {3007#(<= ~counter~0 0)} assume true; {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,097 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3007#(<= ~counter~0 0)} {2999#true} #65#return; {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,097 INFO L272 TraceCheckUtils]: 4: Hoare triple {3007#(<= ~counter~0 0)} call #t~ret7 := main(); {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,097 INFO L290 TraceCheckUtils]: 5: Hoare triple {3007#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,098 INFO L272 TraceCheckUtils]: 6: Hoare triple {3007#(<= ~counter~0 0)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,098 INFO L290 TraceCheckUtils]: 7: Hoare triple {3007#(<= ~counter~0 0)} ~cond := #in~cond; {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,098 INFO L290 TraceCheckUtils]: 8: Hoare triple {3007#(<= ~counter~0 0)} assume !(0 == ~cond); {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,099 INFO L290 TraceCheckUtils]: 9: Hoare triple {3007#(<= ~counter~0 0)} assume true; {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,099 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3007#(<= ~counter~0 0)} {3007#(<= ~counter~0 0)} #59#return; {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,099 INFO L290 TraceCheckUtils]: 11: Hoare triple {3007#(<= ~counter~0 0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {3007#(<= ~counter~0 0)} is VALID [2022-04-08 07:30:47,100 INFO L290 TraceCheckUtils]: 12: Hoare triple {3007#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3041#(<= ~counter~0 1)} is VALID [2022-04-08 07:30:47,100 INFO L290 TraceCheckUtils]: 13: Hoare triple {3041#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {3041#(<= ~counter~0 1)} is VALID [2022-04-08 07:30:47,101 INFO L272 TraceCheckUtils]: 14: Hoare triple {3041#(<= ~counter~0 1)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3041#(<= ~counter~0 1)} is VALID [2022-04-08 07:30:47,101 INFO L290 TraceCheckUtils]: 15: Hoare triple {3041#(<= ~counter~0 1)} ~cond := #in~cond; {3041#(<= ~counter~0 1)} is VALID [2022-04-08 07:30:47,101 INFO L290 TraceCheckUtils]: 16: Hoare triple {3041#(<= ~counter~0 1)} assume !(0 == ~cond); {3041#(<= ~counter~0 1)} is VALID [2022-04-08 07:30:47,102 INFO L290 TraceCheckUtils]: 17: Hoare triple {3041#(<= ~counter~0 1)} assume true; {3041#(<= ~counter~0 1)} is VALID [2022-04-08 07:30:47,102 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3041#(<= ~counter~0 1)} {3041#(<= ~counter~0 1)} #61#return; {3041#(<= ~counter~0 1)} is VALID [2022-04-08 07:30:47,102 INFO L290 TraceCheckUtils]: 19: Hoare triple {3041#(<= ~counter~0 1)} assume !!(0 != ~y~0); {3041#(<= ~counter~0 1)} is VALID [2022-04-08 07:30:47,103 INFO L290 TraceCheckUtils]: 20: Hoare triple {3041#(<= ~counter~0 1)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3041#(<= ~counter~0 1)} is VALID [2022-04-08 07:30:47,103 INFO L290 TraceCheckUtils]: 21: Hoare triple {3041#(<= ~counter~0 1)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3041#(<= ~counter~0 1)} is VALID [2022-04-08 07:30:47,103 INFO L290 TraceCheckUtils]: 22: Hoare triple {3041#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3072#(<= ~counter~0 2)} is VALID [2022-04-08 07:30:47,104 INFO L290 TraceCheckUtils]: 23: Hoare triple {3072#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {3072#(<= ~counter~0 2)} is VALID [2022-04-08 07:30:47,104 INFO L272 TraceCheckUtils]: 24: Hoare triple {3072#(<= ~counter~0 2)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3072#(<= ~counter~0 2)} is VALID [2022-04-08 07:30:47,105 INFO L290 TraceCheckUtils]: 25: Hoare triple {3072#(<= ~counter~0 2)} ~cond := #in~cond; {3072#(<= ~counter~0 2)} is VALID [2022-04-08 07:30:47,105 INFO L290 TraceCheckUtils]: 26: Hoare triple {3072#(<= ~counter~0 2)} assume !(0 == ~cond); {3072#(<= ~counter~0 2)} is VALID [2022-04-08 07:30:47,105 INFO L290 TraceCheckUtils]: 27: Hoare triple {3072#(<= ~counter~0 2)} assume true; {3072#(<= ~counter~0 2)} is VALID [2022-04-08 07:30:47,106 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3072#(<= ~counter~0 2)} {3072#(<= ~counter~0 2)} #61#return; {3072#(<= ~counter~0 2)} is VALID [2022-04-08 07:30:47,106 INFO L290 TraceCheckUtils]: 29: Hoare triple {3072#(<= ~counter~0 2)} assume !!(0 != ~y~0); {3072#(<= ~counter~0 2)} is VALID [2022-04-08 07:30:47,106 INFO L290 TraceCheckUtils]: 30: Hoare triple {3072#(<= ~counter~0 2)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3072#(<= ~counter~0 2)} is VALID [2022-04-08 07:30:47,106 INFO L290 TraceCheckUtils]: 31: Hoare triple {3072#(<= ~counter~0 2)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3072#(<= ~counter~0 2)} is VALID [2022-04-08 07:30:47,107 INFO L290 TraceCheckUtils]: 32: Hoare triple {3072#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3103#(<= |main_#t~post6| 2)} is VALID [2022-04-08 07:30:47,107 INFO L290 TraceCheckUtils]: 33: Hoare triple {3103#(<= |main_#t~post6| 2)} assume !(#t~post6 < 10);havoc #t~post6; {3000#false} is VALID [2022-04-08 07:30:47,107 INFO L272 TraceCheckUtils]: 34: Hoare triple {3000#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {3000#false} is VALID [2022-04-08 07:30:47,107 INFO L290 TraceCheckUtils]: 35: Hoare triple {3000#false} ~cond := #in~cond; {3000#false} is VALID [2022-04-08 07:30:47,107 INFO L290 TraceCheckUtils]: 36: Hoare triple {3000#false} assume 0 == ~cond; {3000#false} is VALID [2022-04-08 07:30:47,107 INFO L290 TraceCheckUtils]: 37: Hoare triple {3000#false} assume !false; {3000#false} is VALID [2022-04-08 07:30:47,108 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 4 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:30:47,108 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:30:47,286 INFO L290 TraceCheckUtils]: 37: Hoare triple {3000#false} assume !false; {3000#false} is VALID [2022-04-08 07:30:47,286 INFO L290 TraceCheckUtils]: 36: Hoare triple {3000#false} assume 0 == ~cond; {3000#false} is VALID [2022-04-08 07:30:47,286 INFO L290 TraceCheckUtils]: 35: Hoare triple {3000#false} ~cond := #in~cond; {3000#false} is VALID [2022-04-08 07:30:47,286 INFO L272 TraceCheckUtils]: 34: Hoare triple {3000#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {3000#false} is VALID [2022-04-08 07:30:47,287 INFO L290 TraceCheckUtils]: 33: Hoare triple {3131#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {3000#false} is VALID [2022-04-08 07:30:47,288 INFO L290 TraceCheckUtils]: 32: Hoare triple {3135#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3131#(< |main_#t~post6| 10)} is VALID [2022-04-08 07:30:47,288 INFO L290 TraceCheckUtils]: 31: Hoare triple {3135#(< ~counter~0 10)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3135#(< ~counter~0 10)} is VALID [2022-04-08 07:30:47,288 INFO L290 TraceCheckUtils]: 30: Hoare triple {3135#(< ~counter~0 10)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3135#(< ~counter~0 10)} is VALID [2022-04-08 07:30:47,289 INFO L290 TraceCheckUtils]: 29: Hoare triple {3135#(< ~counter~0 10)} assume !!(0 != ~y~0); {3135#(< ~counter~0 10)} is VALID [2022-04-08 07:30:47,289 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2999#true} {3135#(< ~counter~0 10)} #61#return; {3135#(< ~counter~0 10)} is VALID [2022-04-08 07:30:47,289 INFO L290 TraceCheckUtils]: 27: Hoare triple {2999#true} assume true; {2999#true} is VALID [2022-04-08 07:30:47,290 INFO L290 TraceCheckUtils]: 26: Hoare triple {2999#true} assume !(0 == ~cond); {2999#true} is VALID [2022-04-08 07:30:47,290 INFO L290 TraceCheckUtils]: 25: Hoare triple {2999#true} ~cond := #in~cond; {2999#true} is VALID [2022-04-08 07:30:47,290 INFO L272 TraceCheckUtils]: 24: Hoare triple {3135#(< ~counter~0 10)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2999#true} is VALID [2022-04-08 07:30:47,290 INFO L290 TraceCheckUtils]: 23: Hoare triple {3135#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {3135#(< ~counter~0 10)} is VALID [2022-04-08 07:30:47,290 INFO L290 TraceCheckUtils]: 22: Hoare triple {3166#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3135#(< ~counter~0 10)} is VALID [2022-04-08 07:30:47,291 INFO L290 TraceCheckUtils]: 21: Hoare triple {3166#(< ~counter~0 9)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3166#(< ~counter~0 9)} is VALID [2022-04-08 07:30:47,295 INFO L290 TraceCheckUtils]: 20: Hoare triple {3166#(< ~counter~0 9)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3166#(< ~counter~0 9)} is VALID [2022-04-08 07:30:47,298 INFO L290 TraceCheckUtils]: 19: Hoare triple {3166#(< ~counter~0 9)} assume !!(0 != ~y~0); {3166#(< ~counter~0 9)} is VALID [2022-04-08 07:30:47,299 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2999#true} {3166#(< ~counter~0 9)} #61#return; {3166#(< ~counter~0 9)} is VALID [2022-04-08 07:30:47,299 INFO L290 TraceCheckUtils]: 17: Hoare triple {2999#true} assume true; {2999#true} is VALID [2022-04-08 07:30:47,299 INFO L290 TraceCheckUtils]: 16: Hoare triple {2999#true} assume !(0 == ~cond); {2999#true} is VALID [2022-04-08 07:30:47,299 INFO L290 TraceCheckUtils]: 15: Hoare triple {2999#true} ~cond := #in~cond; {2999#true} is VALID [2022-04-08 07:30:47,299 INFO L272 TraceCheckUtils]: 14: Hoare triple {3166#(< ~counter~0 9)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2999#true} is VALID [2022-04-08 07:30:47,300 INFO L290 TraceCheckUtils]: 13: Hoare triple {3166#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {3166#(< ~counter~0 9)} is VALID [2022-04-08 07:30:47,303 INFO L290 TraceCheckUtils]: 12: Hoare triple {3197#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3166#(< ~counter~0 9)} is VALID [2022-04-08 07:30:47,303 INFO L290 TraceCheckUtils]: 11: Hoare triple {3197#(< ~counter~0 8)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {3197#(< ~counter~0 8)} is VALID [2022-04-08 07:30:47,303 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2999#true} {3197#(< ~counter~0 8)} #59#return; {3197#(< ~counter~0 8)} is VALID [2022-04-08 07:30:47,303 INFO L290 TraceCheckUtils]: 9: Hoare triple {2999#true} assume true; {2999#true} is VALID [2022-04-08 07:30:47,304 INFO L290 TraceCheckUtils]: 8: Hoare triple {2999#true} assume !(0 == ~cond); {2999#true} is VALID [2022-04-08 07:30:47,304 INFO L290 TraceCheckUtils]: 7: Hoare triple {2999#true} ~cond := #in~cond; {2999#true} is VALID [2022-04-08 07:30:47,304 INFO L272 TraceCheckUtils]: 6: Hoare triple {3197#(< ~counter~0 8)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2999#true} is VALID [2022-04-08 07:30:47,304 INFO L290 TraceCheckUtils]: 5: Hoare triple {3197#(< ~counter~0 8)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {3197#(< ~counter~0 8)} is VALID [2022-04-08 07:30:47,304 INFO L272 TraceCheckUtils]: 4: Hoare triple {3197#(< ~counter~0 8)} call #t~ret7 := main(); {3197#(< ~counter~0 8)} is VALID [2022-04-08 07:30:47,305 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3197#(< ~counter~0 8)} {2999#true} #65#return; {3197#(< ~counter~0 8)} is VALID [2022-04-08 07:30:47,305 INFO L290 TraceCheckUtils]: 2: Hoare triple {3197#(< ~counter~0 8)} assume true; {3197#(< ~counter~0 8)} is VALID [2022-04-08 07:30:47,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {2999#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3197#(< ~counter~0 8)} is VALID [2022-04-08 07:30:47,305 INFO L272 TraceCheckUtils]: 0: Hoare triple {2999#true} call ULTIMATE.init(); {2999#true} is VALID [2022-04-08 07:30:47,306 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 4 proven. 10 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 07:30:47,306 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:30:47,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1128664024] [2022-04-08 07:30:47,306 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:30:47,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1634421668] [2022-04-08 07:30:47,306 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1634421668] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:30:47,306 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:30:47,306 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 07:30:47,306 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:30:47,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [194377107] [2022-04-08 07:30:47,306 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [194377107] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:30:47,307 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:30:47,307 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 07:30:47,307 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [35671157] [2022-04-08 07:30:47,307 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:30:47,307 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Word has length 38 [2022-04-08 07:30:47,307 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:30:47,307 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:30:47,340 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:30:47,341 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 07:30:47,341 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:30:47,341 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 07:30:47,341 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 07:30:47,341 INFO L87 Difference]: Start difference. First operand 42 states and 45 transitions. Second operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:30:47,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:30:47,475 INFO L93 Difference]: Finished difference Result 54 states and 58 transitions. [2022-04-08 07:30:47,475 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 07:30:47,477 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Word has length 38 [2022-04-08 07:30:47,478 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:30:47,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:30:47,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-08 07:30:47,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:30:47,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-08 07:30:47,486 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 58 transitions. [2022-04-08 07:30:47,522 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:30:47,522 INFO L225 Difference]: With dead ends: 54 [2022-04-08 07:30:47,522 INFO L226 Difference]: Without dead ends: 47 [2022-04-08 07:30:47,523 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 77 GetRequests, 67 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-08 07:30:47,524 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 15 mSDsluCounter, 60 mSDsCounter, 0 mSdLazyCounter, 16 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 16 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 07:30:47,525 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 87 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 16 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 07:30:47,525 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-04-08 07:30:47,565 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 47. [2022-04-08 07:30:47,565 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:30:47,566 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 47 states, 34 states have (on average 1.1470588235294117) internal successors, (39), 35 states have internal predecessors, (39), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:30:47,567 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 47 states, 34 states have (on average 1.1470588235294117) internal successors, (39), 35 states have internal predecessors, (39), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:30:47,567 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 47 states, 34 states have (on average 1.1470588235294117) internal successors, (39), 35 states have internal predecessors, (39), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:30:47,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:30:47,569 INFO L93 Difference]: Finished difference Result 47 states and 51 transitions. [2022-04-08 07:30:47,569 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2022-04-08 07:30:47,569 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:30:47,569 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:30:47,569 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 34 states have (on average 1.1470588235294117) internal successors, (39), 35 states have internal predecessors, (39), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 47 states. [2022-04-08 07:30:47,569 INFO L87 Difference]: Start difference. First operand has 47 states, 34 states have (on average 1.1470588235294117) internal successors, (39), 35 states have internal predecessors, (39), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 47 states. [2022-04-08 07:30:47,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:30:47,570 INFO L93 Difference]: Finished difference Result 47 states and 51 transitions. [2022-04-08 07:30:47,570 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2022-04-08 07:30:47,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:30:47,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:30:47,570 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:30:47,570 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:30:47,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 34 states have (on average 1.1470588235294117) internal successors, (39), 35 states have internal predecessors, (39), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:30:47,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 51 transitions. [2022-04-08 07:30:47,573 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 51 transitions. Word has length 38 [2022-04-08 07:30:47,573 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:30:47,573 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 51 transitions. [2022-04-08 07:30:47,573 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 07:30:47,573 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 47 states and 51 transitions. [2022-04-08 07:30:53,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 48 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 07:30:53,800 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2022-04-08 07:30:53,801 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-08 07:30:53,801 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:30:53,801 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:30:53,817 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-08 07:30:54,001 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-08 07:30:54,002 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:30:54,002 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:30:54,002 INFO L85 PathProgramCache]: Analyzing trace with hash -1455100012, now seen corresponding path program 3 times [2022-04-08 07:30:54,002 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:30:54,002 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [456137918] [2022-04-08 07:30:56,669 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:30:56,670 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:30:56,670 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:30:56,670 INFO L85 PathProgramCache]: Analyzing trace with hash -1455100012, now seen corresponding path program 4 times [2022-04-08 07:30:56,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:30:56,687 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [179109344] [2022-04-08 07:30:56,687 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:30:56,687 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:30:56,698 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:30:56,698 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1302825796] [2022-04-08 07:30:56,698 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 07:30:56,698 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:30:56,698 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:30:56,699 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:30:56,700 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-08 07:30:56,729 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 07:30:56,730 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:30:56,730 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-08 07:30:56,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:30:56,759 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:30:59,374 INFO L272 TraceCheckUtils]: 0: Hoare triple {3536#true} call ULTIMATE.init(); {3536#true} is VALID [2022-04-08 07:30:59,374 INFO L290 TraceCheckUtils]: 1: Hoare triple {3536#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3536#true} is VALID [2022-04-08 07:30:59,374 INFO L290 TraceCheckUtils]: 2: Hoare triple {3536#true} assume true; {3536#true} is VALID [2022-04-08 07:30:59,375 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3536#true} {3536#true} #65#return; {3536#true} is VALID [2022-04-08 07:30:59,375 INFO L272 TraceCheckUtils]: 4: Hoare triple {3536#true} call #t~ret7 := main(); {3536#true} is VALID [2022-04-08 07:30:59,375 INFO L290 TraceCheckUtils]: 5: Hoare triple {3536#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {3536#true} is VALID [2022-04-08 07:30:59,375 INFO L272 TraceCheckUtils]: 6: Hoare triple {3536#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {3536#true} is VALID [2022-04-08 07:30:59,375 INFO L290 TraceCheckUtils]: 7: Hoare triple {3536#true} ~cond := #in~cond; {3562#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 07:30:59,375 INFO L290 TraceCheckUtils]: 8: Hoare triple {3562#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3566#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:30:59,376 INFO L290 TraceCheckUtils]: 9: Hoare triple {3566#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3566#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:30:59,376 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3566#(not (= |assume_abort_if_not_#in~cond| 0))} {3536#true} #59#return; {3573#(<= 1 main_~b~0)} is VALID [2022-04-08 07:30:59,377 INFO L290 TraceCheckUtils]: 11: Hoare triple {3573#(<= 1 main_~b~0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:30:59,377 INFO L290 TraceCheckUtils]: 12: Hoare triple {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:30:59,377 INFO L290 TraceCheckUtils]: 13: Hoare triple {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:30:59,377 INFO L272 TraceCheckUtils]: 14: Hoare triple {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3536#true} is VALID [2022-04-08 07:30:59,378 INFO L290 TraceCheckUtils]: 15: Hoare triple {3536#true} ~cond := #in~cond; {3536#true} is VALID [2022-04-08 07:30:59,378 INFO L290 TraceCheckUtils]: 16: Hoare triple {3536#true} assume !(0 == ~cond); {3536#true} is VALID [2022-04-08 07:30:59,378 INFO L290 TraceCheckUtils]: 17: Hoare triple {3536#true} assume true; {3536#true} is VALID [2022-04-08 07:30:59,378 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3536#true} {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #61#return; {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:30:59,379 INFO L290 TraceCheckUtils]: 19: Hoare triple {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:30:59,379 INFO L290 TraceCheckUtils]: 20: Hoare triple {3577#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3605#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:30:59,380 INFO L290 TraceCheckUtils]: 21: Hoare triple {3605#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:30:59,380 INFO L290 TraceCheckUtils]: 22: Hoare triple {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:30:59,381 INFO L290 TraceCheckUtils]: 23: Hoare triple {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !!(#t~post6 < 10);havoc #t~post6; {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:30:59,381 INFO L272 TraceCheckUtils]: 24: Hoare triple {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3536#true} is VALID [2022-04-08 07:30:59,381 INFO L290 TraceCheckUtils]: 25: Hoare triple {3536#true} ~cond := #in~cond; {3536#true} is VALID [2022-04-08 07:30:59,381 INFO L290 TraceCheckUtils]: 26: Hoare triple {3536#true} assume !(0 == ~cond); {3536#true} is VALID [2022-04-08 07:30:59,381 INFO L290 TraceCheckUtils]: 27: Hoare triple {3536#true} assume true; {3536#true} is VALID [2022-04-08 07:30:59,382 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3536#true} {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} #61#return; {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:30:59,382 INFO L290 TraceCheckUtils]: 29: Hoare triple {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !!(0 != ~y~0); {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:30:59,383 INFO L290 TraceCheckUtils]: 30: Hoare triple {3609#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3637#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:30:59,384 INFO L290 TraceCheckUtils]: 31: Hoare triple {3637#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3641#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:30:59,384 INFO L290 TraceCheckUtils]: 32: Hoare triple {3641#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3641#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:30:59,385 INFO L290 TraceCheckUtils]: 33: Hoare triple {3641#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !!(#t~post6 < 10);havoc #t~post6; {3641#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:30:59,387 INFO L272 TraceCheckUtils]: 34: Hoare triple {3641#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3651#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:30:59,387 INFO L290 TraceCheckUtils]: 35: Hoare triple {3651#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3655#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:30:59,387 INFO L290 TraceCheckUtils]: 36: Hoare triple {3655#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3537#false} is VALID [2022-04-08 07:30:59,387 INFO L290 TraceCheckUtils]: 37: Hoare triple {3537#false} assume !false; {3537#false} is VALID [2022-04-08 07:30:59,388 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 07:30:59,388 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:31:24,790 INFO L290 TraceCheckUtils]: 37: Hoare triple {3537#false} assume !false; {3537#false} is VALID [2022-04-08 07:31:24,791 INFO L290 TraceCheckUtils]: 36: Hoare triple {3655#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3537#false} is VALID [2022-04-08 07:31:24,792 INFO L290 TraceCheckUtils]: 35: Hoare triple {3651#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3655#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:31:24,792 INFO L272 TraceCheckUtils]: 34: Hoare triple {3671#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3651#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:31:24,793 INFO L290 TraceCheckUtils]: 33: Hoare triple {3671#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} assume !!(#t~post6 < 10);havoc #t~post6; {3671#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:31:24,793 INFO L290 TraceCheckUtils]: 32: Hoare triple {3671#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3671#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:31:24,798 INFO L290 TraceCheckUtils]: 31: Hoare triple {3681#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3671#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:31:24,799 INFO L290 TraceCheckUtils]: 30: Hoare triple {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3681#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-08 07:31:24,800 INFO L290 TraceCheckUtils]: 29: Hoare triple {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !!(0 != ~y~0); {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-08 07:31:24,801 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3536#true} {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} #61#return; {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-08 07:31:24,801 INFO L290 TraceCheckUtils]: 27: Hoare triple {3536#true} assume true; {3536#true} is VALID [2022-04-08 07:31:24,801 INFO L290 TraceCheckUtils]: 26: Hoare triple {3536#true} assume !(0 == ~cond); {3536#true} is VALID [2022-04-08 07:31:24,801 INFO L290 TraceCheckUtils]: 25: Hoare triple {3536#true} ~cond := #in~cond; {3536#true} is VALID [2022-04-08 07:31:24,801 INFO L272 TraceCheckUtils]: 24: Hoare triple {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3536#true} is VALID [2022-04-08 07:31:24,802 INFO L290 TraceCheckUtils]: 23: Hoare triple {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-08 07:31:24,802 INFO L290 TraceCheckUtils]: 22: Hoare triple {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-08 07:31:24,817 INFO L290 TraceCheckUtils]: 21: Hoare triple {3713#(and (or (not (< main_~y~0 0)) (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2)))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3685#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-08 07:31:24,818 INFO L290 TraceCheckUtils]: 20: Hoare triple {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3713#(and (or (not (< main_~y~0 0)) (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2)))))} is VALID [2022-04-08 07:31:24,820 INFO L290 TraceCheckUtils]: 19: Hoare triple {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} assume !!(0 != ~y~0); {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} is VALID [2022-04-08 07:31:24,820 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3536#true} {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} #61#return; {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} is VALID [2022-04-08 07:31:24,820 INFO L290 TraceCheckUtils]: 17: Hoare triple {3536#true} assume true; {3536#true} is VALID [2022-04-08 07:31:24,820 INFO L290 TraceCheckUtils]: 16: Hoare triple {3536#true} assume !(0 == ~cond); {3536#true} is VALID [2022-04-08 07:31:24,820 INFO L290 TraceCheckUtils]: 15: Hoare triple {3536#true} ~cond := #in~cond; {3536#true} is VALID [2022-04-08 07:31:24,821 INFO L272 TraceCheckUtils]: 14: Hoare triple {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3536#true} is VALID [2022-04-08 07:31:24,821 INFO L290 TraceCheckUtils]: 13: Hoare triple {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} assume !!(#t~post6 < 10);havoc #t~post6; {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} is VALID [2022-04-08 07:31:24,822 INFO L290 TraceCheckUtils]: 12: Hoare triple {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} is VALID [2022-04-08 07:31:24,825 INFO L290 TraceCheckUtils]: 11: Hoare triple {3745#(or (and (= (mod main_~b~0 2) 0) (= (mod (div main_~b~0 2) 2) 0)) (<= 0 main_~b~0))} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {3717#(or (and (or (and (or (not (= (mod (+ (div main_~y~0 2) 1) 2) 0)) (= (+ main_~z~0 (* (* main_~x~0 4) (div (+ (div main_~y~0 2) 1) 2))) (* main_~b~0 main_~a~0))) (or (= (mod (+ (div main_~y~0 2) 1) 2) 0) (= (+ (* (* main_~x~0 4) (+ (div (+ (div main_~y~0 2) 1) 2) 1)) main_~z~0) (* main_~b~0 main_~a~0)))) (= (mod main_~y~0 2) 0)) (or (and (or (not (= (mod (div main_~y~0 2) 2) 0)) (= (+ main_~z~0 (* (div (div main_~y~0 2) 2) (* main_~x~0 4))) (* main_~b~0 main_~a~0))) (or (= (mod (div main_~y~0 2) 2) 0) (= (+ main_~z~0 (* (* main_~x~0 4) (+ (div (div main_~y~0 2) 2) 1))) (* main_~b~0 main_~a~0)))) (not (= (mod main_~y~0 2) 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))) (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)))} is VALID [2022-04-08 07:31:24,826 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3566#(not (= |assume_abort_if_not_#in~cond| 0))} {3536#true} #59#return; {3745#(or (and (= (mod main_~b~0 2) 0) (= (mod (div main_~b~0 2) 2) 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 07:31:24,826 INFO L290 TraceCheckUtils]: 9: Hoare triple {3566#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3566#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:31:24,826 INFO L290 TraceCheckUtils]: 8: Hoare triple {3758#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {3566#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:31:24,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {3536#true} ~cond := #in~cond; {3758#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 07:31:24,827 INFO L272 TraceCheckUtils]: 6: Hoare triple {3536#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {3536#true} is VALID [2022-04-08 07:31:24,827 INFO L290 TraceCheckUtils]: 5: Hoare triple {3536#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {3536#true} is VALID [2022-04-08 07:31:24,827 INFO L272 TraceCheckUtils]: 4: Hoare triple {3536#true} call #t~ret7 := main(); {3536#true} is VALID [2022-04-08 07:31:24,827 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3536#true} {3536#true} #65#return; {3536#true} is VALID [2022-04-08 07:31:24,827 INFO L290 TraceCheckUtils]: 2: Hoare triple {3536#true} assume true; {3536#true} is VALID [2022-04-08 07:31:24,827 INFO L290 TraceCheckUtils]: 1: Hoare triple {3536#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3536#true} is VALID [2022-04-08 07:31:24,827 INFO L272 TraceCheckUtils]: 0: Hoare triple {3536#true} call ULTIMATE.init(); {3536#true} is VALID [2022-04-08 07:31:24,828 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 07:31:24,828 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:31:24,828 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [179109344] [2022-04-08 07:31:24,828 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:31:24,828 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1302825796] [2022-04-08 07:31:24,828 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1302825796] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:31:24,828 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:31:24,828 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 19 [2022-04-08 07:31:24,828 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:31:24,828 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [456137918] [2022-04-08 07:31:24,828 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [456137918] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:31:24,829 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:31:24,829 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 07:31:24,829 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1192030623] [2022-04-08 07:31:24,829 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:31:24,829 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 38 [2022-04-08 07:31:24,829 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:31:24,829 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:31:24,858 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:31:24,859 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 07:31:24,859 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:31:24,859 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 07:31:24,859 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=271, Unknown=0, NotChecked=0, Total=342 [2022-04-08 07:31:24,859 INFO L87 Difference]: Start difference. First operand 47 states and 51 transitions. Second operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:31:25,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:31:25,793 INFO L93 Difference]: Finished difference Result 70 states and 76 transitions. [2022-04-08 07:31:25,793 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 07:31:25,793 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 38 [2022-04-08 07:31:25,793 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:31:25,793 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:31:25,794 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 56 transitions. [2022-04-08 07:31:25,794 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:31:25,795 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 56 transitions. [2022-04-08 07:31:25,795 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 56 transitions. [2022-04-08 07:31:25,844 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:31:25,845 INFO L225 Difference]: With dead ends: 70 [2022-04-08 07:31:25,845 INFO L226 Difference]: Without dead ends: 68 [2022-04-08 07:31:25,845 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 77 GetRequests, 57 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 88 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=80, Invalid=340, Unknown=0, NotChecked=0, Total=420 [2022-04-08 07:31:25,846 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 26 mSDsluCounter, 143 mSDsCounter, 0 mSdLazyCounter, 228 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 28 SdHoareTripleChecker+Valid, 167 SdHoareTripleChecker+Invalid, 235 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 228 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 07:31:25,846 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [28 Valid, 167 Invalid, 235 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 228 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 07:31:25,846 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 68 states. [2022-04-08 07:31:25,930 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 68 to 65. [2022-04-08 07:31:25,930 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:31:25,930 INFO L82 GeneralOperation]: Start isEquivalent. First operand 68 states. Second operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:31:25,930 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:31:25,930 INFO L87 Difference]: Start difference. First operand 68 states. Second operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:31:25,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:31:25,932 INFO L93 Difference]: Finished difference Result 68 states and 74 transitions. [2022-04-08 07:31:25,932 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 74 transitions. [2022-04-08 07:31:25,932 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:31:25,932 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:31:25,932 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 68 states. [2022-04-08 07:31:25,932 INFO L87 Difference]: Start difference. First operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 68 states. [2022-04-08 07:31:25,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:31:25,933 INFO L93 Difference]: Finished difference Result 68 states and 74 transitions. [2022-04-08 07:31:25,933 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 74 transitions. [2022-04-08 07:31:25,933 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:31:25,933 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:31:25,933 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:31:25,933 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:31:25,934 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:31:25,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 70 transitions. [2022-04-08 07:31:25,935 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 70 transitions. Word has length 38 [2022-04-08 07:31:25,935 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:31:25,935 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 70 transitions. [2022-04-08 07:31:25,935 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:31:25,935 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 65 states and 70 transitions. [2022-04-08 07:31:36,418 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 65 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-08 07:31:36,418 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 70 transitions. [2022-04-08 07:31:36,419 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-08 07:31:36,419 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:31:36,419 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:31:36,435 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-08 07:31:36,619 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-08 07:31:36,620 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:31:36,620 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:31:36,620 INFO L85 PathProgramCache]: Analyzing trace with hash -645753386, now seen corresponding path program 1 times [2022-04-08 07:31:36,620 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:31:36,620 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [943302740] [2022-04-08 07:31:41,092 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:31:41,092 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:31:41,092 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:31:41,092 INFO L85 PathProgramCache]: Analyzing trace with hash -645753386, now seen corresponding path program 2 times [2022-04-08 07:31:41,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:31:41,092 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1568573346] [2022-04-08 07:31:41,092 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:31:41,092 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:31:41,100 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:31:41,101 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2076945606] [2022-04-08 07:31:41,101 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:31:41,101 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:31:41,101 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:31:41,102 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:31:41,105 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-08 07:31:41,144 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 07:31:41,145 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:31:41,145 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-08 07:31:41,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:31:41,159 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:31:58,335 INFO L272 TraceCheckUtils]: 0: Hoare triple {4192#true} call ULTIMATE.init(); {4192#true} is VALID [2022-04-08 07:31:58,335 INFO L290 TraceCheckUtils]: 1: Hoare triple {4192#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4192#true} is VALID [2022-04-08 07:31:58,335 INFO L290 TraceCheckUtils]: 2: Hoare triple {4192#true} assume true; {4192#true} is VALID [2022-04-08 07:31:58,335 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4192#true} {4192#true} #65#return; {4192#true} is VALID [2022-04-08 07:31:58,335 INFO L272 TraceCheckUtils]: 4: Hoare triple {4192#true} call #t~ret7 := main(); {4192#true} is VALID [2022-04-08 07:31:58,335 INFO L290 TraceCheckUtils]: 5: Hoare triple {4192#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {4192#true} is VALID [2022-04-08 07:31:58,335 INFO L272 TraceCheckUtils]: 6: Hoare triple {4192#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {4192#true} is VALID [2022-04-08 07:31:58,335 INFO L290 TraceCheckUtils]: 7: Hoare triple {4192#true} ~cond := #in~cond; {4218#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 07:31:58,336 INFO L290 TraceCheckUtils]: 8: Hoare triple {4218#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4222#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:31:58,336 INFO L290 TraceCheckUtils]: 9: Hoare triple {4222#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4222#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:31:58,337 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4222#(not (= |assume_abort_if_not_#in~cond| 0))} {4192#true} #59#return; {4229#(<= 1 main_~b~0)} is VALID [2022-04-08 07:31:58,337 INFO L290 TraceCheckUtils]: 11: Hoare triple {4229#(<= 1 main_~b~0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:31:58,337 INFO L290 TraceCheckUtils]: 12: Hoare triple {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:31:58,338 INFO L290 TraceCheckUtils]: 13: Hoare triple {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:31:58,338 INFO L272 TraceCheckUtils]: 14: Hoare triple {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {4192#true} is VALID [2022-04-08 07:31:58,338 INFO L290 TraceCheckUtils]: 15: Hoare triple {4192#true} ~cond := #in~cond; {4192#true} is VALID [2022-04-08 07:31:58,338 INFO L290 TraceCheckUtils]: 16: Hoare triple {4192#true} assume !(0 == ~cond); {4192#true} is VALID [2022-04-08 07:31:58,338 INFO L290 TraceCheckUtils]: 17: Hoare triple {4192#true} assume true; {4192#true} is VALID [2022-04-08 07:31:58,338 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4192#true} {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #61#return; {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:31:58,339 INFO L290 TraceCheckUtils]: 19: Hoare triple {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:31:58,339 INFO L290 TraceCheckUtils]: 20: Hoare triple {4233#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {4261#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:31:58,340 INFO L290 TraceCheckUtils]: 21: Hoare triple {4261#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:31:58,340 INFO L290 TraceCheckUtils]: 22: Hoare triple {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:31:58,341 INFO L290 TraceCheckUtils]: 23: Hoare triple {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !!(#t~post6 < 10);havoc #t~post6; {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:31:58,341 INFO L272 TraceCheckUtils]: 24: Hoare triple {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {4192#true} is VALID [2022-04-08 07:31:58,341 INFO L290 TraceCheckUtils]: 25: Hoare triple {4192#true} ~cond := #in~cond; {4278#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:31:58,342 INFO L290 TraceCheckUtils]: 26: Hoare triple {4278#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4282#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:31:58,342 INFO L290 TraceCheckUtils]: 27: Hoare triple {4282#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4282#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:31:58,342 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4282#(not (= |__VERIFIER_assert_#in~cond| 0))} {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} #61#return; {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:31:58,343 INFO L290 TraceCheckUtils]: 29: Hoare triple {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !!(0 != ~y~0); {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:31:58,344 INFO L290 TraceCheckUtils]: 30: Hoare triple {4265#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {4295#(and (= main_~z~0 main_~x~0) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (= (div main_~b~0 2) (+ main_~y~0 1)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} is VALID [2022-04-08 07:31:58,345 INFO L290 TraceCheckUtils]: 31: Hoare triple {4295#(and (= main_~z~0 main_~x~0) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (= (div main_~b~0 2) (+ main_~y~0 1)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {4299#(and (= (div (+ (- 1) (div main_~b~0 2)) 2) main_~y~0) (= (* main_~a~0 2) main_~z~0) (not (= (mod main_~b~0 2) 1)) (= main_~x~0 (* main_~z~0 2)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} is VALID [2022-04-08 07:31:58,345 INFO L290 TraceCheckUtils]: 32: Hoare triple {4299#(and (= (div (+ (- 1) (div main_~b~0 2)) 2) main_~y~0) (= (* main_~a~0 2) main_~z~0) (not (= (mod main_~b~0 2) 1)) (= main_~x~0 (* main_~z~0 2)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4299#(and (= (div (+ (- 1) (div main_~b~0 2)) 2) main_~y~0) (= (* main_~a~0 2) main_~z~0) (not (= (mod main_~b~0 2) 1)) (= main_~x~0 (* main_~z~0 2)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} is VALID [2022-04-08 07:31:58,346 INFO L290 TraceCheckUtils]: 33: Hoare triple {4299#(and (= (div (+ (- 1) (div main_~b~0 2)) 2) main_~y~0) (= (* main_~a~0 2) main_~z~0) (not (= (mod main_~b~0 2) 1)) (= main_~x~0 (* main_~z~0 2)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} assume !!(#t~post6 < 10);havoc #t~post6; {4299#(and (= (div (+ (- 1) (div main_~b~0 2)) 2) main_~y~0) (= (* main_~a~0 2) main_~z~0) (not (= (mod main_~b~0 2) 1)) (= main_~x~0 (* main_~z~0 2)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} is VALID [2022-04-08 07:31:58,468 INFO L272 TraceCheckUtils]: 34: Hoare triple {4299#(and (= (div (+ (- 1) (div main_~b~0 2)) 2) main_~y~0) (= (* main_~a~0 2) main_~z~0) (not (= (mod main_~b~0 2) 1)) (= main_~x~0 (* main_~z~0 2)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {4309#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:31:58,468 INFO L290 TraceCheckUtils]: 35: Hoare triple {4309#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4313#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:31:58,468 INFO L290 TraceCheckUtils]: 36: Hoare triple {4313#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4193#false} is VALID [2022-04-08 07:31:58,468 INFO L290 TraceCheckUtils]: 37: Hoare triple {4193#false} assume !false; {4193#false} is VALID [2022-04-08 07:31:58,469 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 13 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-08 07:31:58,469 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:32:56,168 INFO L290 TraceCheckUtils]: 37: Hoare triple {4193#false} assume !false; {4193#false} is VALID [2022-04-08 07:32:56,168 INFO L290 TraceCheckUtils]: 36: Hoare triple {4313#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4193#false} is VALID [2022-04-08 07:32:56,168 INFO L290 TraceCheckUtils]: 35: Hoare triple {4309#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4313#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:32:56,169 INFO L272 TraceCheckUtils]: 34: Hoare triple {4329#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {4309#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:32:56,169 INFO L290 TraceCheckUtils]: 33: Hoare triple {4329#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} assume !!(#t~post6 < 10);havoc #t~post6; {4329#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:32:56,170 INFO L290 TraceCheckUtils]: 32: Hoare triple {4329#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4329#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:32:56,174 INFO L290 TraceCheckUtils]: 31: Hoare triple {4339#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {4329#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:32:56,177 INFO L290 TraceCheckUtils]: 30: Hoare triple {4343#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {4339#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-08 07:32:56,178 INFO L290 TraceCheckUtils]: 29: Hoare triple {4343#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume !!(0 != ~y~0); {4343#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-08 07:32:56,481 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4282#(not (= |__VERIFIER_assert_#in~cond| 0))} {4192#true} #61#return; {4343#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-08 07:32:56,481 INFO L290 TraceCheckUtils]: 27: Hoare triple {4282#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4282#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:32:56,482 INFO L290 TraceCheckUtils]: 26: Hoare triple {4359#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {4282#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:32:56,482 INFO L290 TraceCheckUtils]: 25: Hoare triple {4192#true} ~cond := #in~cond; {4359#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 07:32:56,482 INFO L272 TraceCheckUtils]: 24: Hoare triple {4192#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {4192#true} is VALID [2022-04-08 07:32:56,482 INFO L290 TraceCheckUtils]: 23: Hoare triple {4192#true} assume !!(#t~post6 < 10);havoc #t~post6; {4192#true} is VALID [2022-04-08 07:32:56,482 INFO L290 TraceCheckUtils]: 22: Hoare triple {4192#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4192#true} is VALID [2022-04-08 07:32:56,482 INFO L290 TraceCheckUtils]: 21: Hoare triple {4192#true} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L290 TraceCheckUtils]: 20: Hoare triple {4192#true} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L290 TraceCheckUtils]: 19: Hoare triple {4192#true} assume !!(0 != ~y~0); {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4192#true} {4192#true} #61#return; {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L290 TraceCheckUtils]: 17: Hoare triple {4192#true} assume true; {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L290 TraceCheckUtils]: 16: Hoare triple {4192#true} assume !(0 == ~cond); {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L290 TraceCheckUtils]: 15: Hoare triple {4192#true} ~cond := #in~cond; {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L272 TraceCheckUtils]: 14: Hoare triple {4192#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L290 TraceCheckUtils]: 13: Hoare triple {4192#true} assume !!(#t~post6 < 10);havoc #t~post6; {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L290 TraceCheckUtils]: 12: Hoare triple {4192#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L290 TraceCheckUtils]: 11: Hoare triple {4192#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4192#true} {4192#true} #59#return; {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L290 TraceCheckUtils]: 9: Hoare triple {4192#true} assume true; {4192#true} is VALID [2022-04-08 07:32:56,483 INFO L290 TraceCheckUtils]: 8: Hoare triple {4192#true} assume !(0 == ~cond); {4192#true} is VALID [2022-04-08 07:32:56,484 INFO L290 TraceCheckUtils]: 7: Hoare triple {4192#true} ~cond := #in~cond; {4192#true} is VALID [2022-04-08 07:32:56,484 INFO L272 TraceCheckUtils]: 6: Hoare triple {4192#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {4192#true} is VALID [2022-04-08 07:32:56,484 INFO L290 TraceCheckUtils]: 5: Hoare triple {4192#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {4192#true} is VALID [2022-04-08 07:32:56,484 INFO L272 TraceCheckUtils]: 4: Hoare triple {4192#true} call #t~ret7 := main(); {4192#true} is VALID [2022-04-08 07:32:56,484 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4192#true} {4192#true} #65#return; {4192#true} is VALID [2022-04-08 07:32:56,484 INFO L290 TraceCheckUtils]: 2: Hoare triple {4192#true} assume true; {4192#true} is VALID [2022-04-08 07:32:56,484 INFO L290 TraceCheckUtils]: 1: Hoare triple {4192#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4192#true} is VALID [2022-04-08 07:32:56,484 INFO L272 TraceCheckUtils]: 0: Hoare triple {4192#true} call ULTIMATE.init(); {4192#true} is VALID [2022-04-08 07:32:56,484 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 15 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 07:32:56,484 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:32:56,484 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1568573346] [2022-04-08 07:32:56,485 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:32:56,485 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2076945606] [2022-04-08 07:32:56,485 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2076945606] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:32:56,485 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:32:56,485 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 9] total 18 [2022-04-08 07:32:56,485 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:32:56,485 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [943302740] [2022-04-08 07:32:56,485 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [943302740] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:32:56,485 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:32:56,485 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 07:32:56,485 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1543228890] [2022-04-08 07:32:56,485 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:32:56,486 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.0) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 38 [2022-04-08 07:32:56,486 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:32:56,486 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.0) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:32:56,636 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:32:56,637 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 07:32:56,637 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:32:56,637 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 07:32:56,637 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=56, Invalid=250, Unknown=0, NotChecked=0, Total=306 [2022-04-08 07:32:56,637 INFO L87 Difference]: Start difference. First operand 65 states and 70 transitions. Second operand has 14 states, 14 states have (on average 2.0) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:33:02,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:33:02,222 INFO L93 Difference]: Finished difference Result 78 states and 84 transitions. [2022-04-08 07:33:02,222 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 07:33:02,222 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.0) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 38 [2022-04-08 07:33:02,222 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:33:02,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.0) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:33:02,223 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 57 transitions. [2022-04-08 07:33:02,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.0) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:33:02,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 57 transitions. [2022-04-08 07:33:02,224 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 57 transitions. [2022-04-08 07:33:02,411 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:33:02,412 INFO L225 Difference]: With dead ends: 78 [2022-04-08 07:33:02,412 INFO L226 Difference]: Without dead ends: 76 [2022-04-08 07:33:02,413 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 56 SyntacticMatches, 3 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 84 ImplicationChecksByTransitivity, 4.0s TimeCoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2022-04-08 07:33:02,413 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 32 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 261 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 164 SdHoareTripleChecker+Invalid, 272 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 261 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.8s IncrementalHoareTripleChecker+Time [2022-04-08 07:33:02,413 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 164 Invalid, 272 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 261 Invalid, 0 Unknown, 0 Unchecked, 2.8s Time] [2022-04-08 07:33:02,413 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-08 07:33:02,492 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 65. [2022-04-08 07:33:02,492 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:33:02,492 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:33:02,493 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:33:02,493 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:33:02,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:33:02,494 INFO L93 Difference]: Finished difference Result 76 states and 82 transitions. [2022-04-08 07:33:02,494 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 82 transitions. [2022-04-08 07:33:02,494 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:33:02,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:33:02,494 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 76 states. [2022-04-08 07:33:02,494 INFO L87 Difference]: Start difference. First operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 76 states. [2022-04-08 07:33:02,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:33:02,495 INFO L93 Difference]: Finished difference Result 76 states and 82 transitions. [2022-04-08 07:33:02,495 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 82 transitions. [2022-04-08 07:33:02,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:33:02,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:33:02,496 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:33:02,496 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:33:02,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:33:02,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 70 transitions. [2022-04-08 07:33:02,497 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 70 transitions. Word has length 38 [2022-04-08 07:33:02,497 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:33:02,497 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 70 transitions. [2022-04-08 07:33:02,497 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.0) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:33:02,497 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 65 states and 70 transitions. [2022-04-08 07:33:12,950 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 65 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-08 07:33:12,950 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 70 transitions. [2022-04-08 07:33:12,950 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-08 07:33:12,950 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:33:12,950 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:33:12,969 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-08 07:33:13,158 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-08 07:33:13,158 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:33:13,159 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:33:13,159 INFO L85 PathProgramCache]: Analyzing trace with hash 539044694, now seen corresponding path program 3 times [2022-04-08 07:33:13,159 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:33:13,159 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [269074355] [2022-04-08 07:33:18,110 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:33:18,110 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:33:18,110 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:33:18,110 INFO L85 PathProgramCache]: Analyzing trace with hash 539044694, now seen corresponding path program 4 times [2022-04-08 07:33:18,111 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:33:18,111 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2107262728] [2022-04-08 07:33:18,111 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:33:18,111 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:33:18,121 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:33:18,121 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1545806495] [2022-04-08 07:33:18,121 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 07:33:18,121 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:33:18,122 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:33:18,122 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:33:18,126 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-08 07:33:18,165 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 07:33:18,165 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:33:18,166 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-08 07:33:18,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:33:18,198 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:33:43,585 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 07:33:46,293 INFO L272 TraceCheckUtils]: 0: Hoare triple {4881#true} call ULTIMATE.init(); {4881#true} is VALID [2022-04-08 07:33:46,293 INFO L290 TraceCheckUtils]: 1: Hoare triple {4881#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4881#true} is VALID [2022-04-08 07:33:46,293 INFO L290 TraceCheckUtils]: 2: Hoare triple {4881#true} assume true; {4881#true} is VALID [2022-04-08 07:33:46,293 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4881#true} {4881#true} #65#return; {4881#true} is VALID [2022-04-08 07:33:46,293 INFO L272 TraceCheckUtils]: 4: Hoare triple {4881#true} call #t~ret7 := main(); {4881#true} is VALID [2022-04-08 07:33:46,293 INFO L290 TraceCheckUtils]: 5: Hoare triple {4881#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {4881#true} is VALID [2022-04-08 07:33:46,293 INFO L272 TraceCheckUtils]: 6: Hoare triple {4881#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {4881#true} is VALID [2022-04-08 07:33:46,294 INFO L290 TraceCheckUtils]: 7: Hoare triple {4881#true} ~cond := #in~cond; {4881#true} is VALID [2022-04-08 07:33:46,294 INFO L290 TraceCheckUtils]: 8: Hoare triple {4881#true} assume !(0 == ~cond); {4881#true} is VALID [2022-04-08 07:33:46,294 INFO L290 TraceCheckUtils]: 9: Hoare triple {4881#true} assume true; {4881#true} is VALID [2022-04-08 07:33:46,294 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4881#true} {4881#true} #59#return; {4881#true} is VALID [2022-04-08 07:33:46,294 INFO L290 TraceCheckUtils]: 11: Hoare triple {4881#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {4919#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:33:46,294 INFO L290 TraceCheckUtils]: 12: Hoare triple {4919#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4919#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:33:46,295 INFO L290 TraceCheckUtils]: 13: Hoare triple {4919#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {4919#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:33:46,295 INFO L272 TraceCheckUtils]: 14: Hoare triple {4919#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {4881#true} is VALID [2022-04-08 07:33:46,295 INFO L290 TraceCheckUtils]: 15: Hoare triple {4881#true} ~cond := #in~cond; {4881#true} is VALID [2022-04-08 07:33:46,295 INFO L290 TraceCheckUtils]: 16: Hoare triple {4881#true} assume !(0 == ~cond); {4881#true} is VALID [2022-04-08 07:33:46,295 INFO L290 TraceCheckUtils]: 17: Hoare triple {4881#true} assume true; {4881#true} is VALID [2022-04-08 07:33:46,296 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4881#true} {4919#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} #61#return; {4919#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:33:46,296 INFO L290 TraceCheckUtils]: 19: Hoare triple {4919#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {4944#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:33:46,297 INFO L290 TraceCheckUtils]: 20: Hoare triple {4944#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~a~0 main_~x~0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {4948#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 07:33:46,300 INFO L290 TraceCheckUtils]: 21: Hoare triple {4948#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {4952#(and (= main_~a~0 main_~z~0) (exists ((aux_div_v_main_~y~0_89_28 Int) (aux_mod_v_main_~y~0_89_28 Int)) (and (<= 0 (+ (* aux_div_v_main_~y~0_89_28 2) aux_mod_v_main_~y~0_89_28)) (<= 1 aux_mod_v_main_~y~0_89_28) (< aux_mod_v_main_~y~0_89_28 2) (= main_~y~0 (div (+ (- 1) (* aux_div_v_main_~y~0_89_28 2) aux_mod_v_main_~y~0_89_28) 2)))) (= (* main_~a~0 2) main_~x~0))} is VALID [2022-04-08 07:33:46,301 INFO L290 TraceCheckUtils]: 22: Hoare triple {4952#(and (= main_~a~0 main_~z~0) (exists ((aux_div_v_main_~y~0_89_28 Int) (aux_mod_v_main_~y~0_89_28 Int)) (and (<= 0 (+ (* aux_div_v_main_~y~0_89_28 2) aux_mod_v_main_~y~0_89_28)) (<= 1 aux_mod_v_main_~y~0_89_28) (< aux_mod_v_main_~y~0_89_28 2) (= main_~y~0 (div (+ (- 1) (* aux_div_v_main_~y~0_89_28 2) aux_mod_v_main_~y~0_89_28) 2)))) (= (* main_~a~0 2) main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4956#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-08 07:33:46,301 INFO L290 TraceCheckUtils]: 23: Hoare triple {4956#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} assume !!(#t~post6 < 10);havoc #t~post6; {4956#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-08 07:33:46,301 INFO L272 TraceCheckUtils]: 24: Hoare triple {4956#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {4881#true} is VALID [2022-04-08 07:33:46,301 INFO L290 TraceCheckUtils]: 25: Hoare triple {4881#true} ~cond := #in~cond; {4966#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:33:46,302 INFO L290 TraceCheckUtils]: 26: Hoare triple {4966#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4970#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:33:46,302 INFO L290 TraceCheckUtils]: 27: Hoare triple {4970#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4970#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:33:46,303 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4970#(not (= |__VERIFIER_assert_#in~cond| 0))} {4956#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} #61#return; {4977#(and (= main_~a~0 main_~z~0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-08 07:33:46,303 INFO L290 TraceCheckUtils]: 29: Hoare triple {4977#(and (= main_~a~0 main_~z~0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} assume !!(0 != ~y~0); {4977#(and (= main_~a~0 main_~z~0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-08 07:33:46,304 INFO L290 TraceCheckUtils]: 30: Hoare triple {4977#(and (= main_~a~0 main_~z~0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {4984#(and (= main_~a~0 main_~z~0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-08 07:33:46,317 INFO L290 TraceCheckUtils]: 31: Hoare triple {4984#(and (= main_~a~0 main_~z~0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {4988#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 4) main_~x~0) (exists ((aux_div_v_main_~y~0_90_22 Int) (aux_mod_v_main_~y~0_90_22 Int)) (and (not (= aux_mod_v_main_~y~0_90_22 1)) (<= 0 aux_mod_v_main_~y~0_90_22) (< 0 (+ (* aux_div_v_main_~y~0_90_22 2) aux_mod_v_main_~y~0_90_22 1)) (< aux_mod_v_main_~y~0_90_22 2) (= (+ (* (* main_~a~0 2) (+ (* aux_div_v_main_~y~0_90_22 2) aux_mod_v_main_~y~0_90_22)) main_~z~0) (* main_~b~0 main_~a~0)) (= (div (+ (* aux_div_v_main_~y~0_90_22 2) aux_mod_v_main_~y~0_90_22) 2) main_~y~0))))} is VALID [2022-04-08 07:33:47,806 INFO L290 TraceCheckUtils]: 32: Hoare triple {4988#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 4) main_~x~0) (exists ((aux_div_v_main_~y~0_90_22 Int) (aux_mod_v_main_~y~0_90_22 Int)) (and (not (= aux_mod_v_main_~y~0_90_22 1)) (<= 0 aux_mod_v_main_~y~0_90_22) (< 0 (+ (* aux_div_v_main_~y~0_90_22 2) aux_mod_v_main_~y~0_90_22 1)) (< aux_mod_v_main_~y~0_90_22 2) (= (+ (* (* main_~a~0 2) (+ (* aux_div_v_main_~y~0_90_22 2) aux_mod_v_main_~y~0_90_22)) main_~z~0) (* main_~b~0 main_~a~0)) (= (div (+ (* aux_div_v_main_~y~0_90_22 2) aux_mod_v_main_~y~0_90_22) 2) main_~y~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4992#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 4) main_~x~0) (or (and (= main_~a~0 0) (< 0 (+ main_~y~0 1))) (and (< (div (* (- 1) (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0)) (- 2)) (+ (div (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 2) 1)) (= (mod (+ main_~z~0 (* main_~a~0 main_~y~0 (- 4)) (* main_~b~0 main_~a~0)) 2) 0) (< (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 2) (< 0 (+ (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) (* main_~y~0 2) 1)) (= (mod (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 0) (<= 0 (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0)))))} is VALID [2022-04-08 07:33:47,807 INFO L290 TraceCheckUtils]: 33: Hoare triple {4992#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 4) main_~x~0) (or (and (= main_~a~0 0) (< 0 (+ main_~y~0 1))) (and (< (div (* (- 1) (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0)) (- 2)) (+ (div (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 2) 1)) (= (mod (+ main_~z~0 (* main_~a~0 main_~y~0 (- 4)) (* main_~b~0 main_~a~0)) 2) 0) (< (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 2) (< 0 (+ (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) (* main_~y~0 2) 1)) (= (mod (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 0) (<= 0 (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {4992#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 4) main_~x~0) (or (and (= main_~a~0 0) (< 0 (+ main_~y~0 1))) (and (< (div (* (- 1) (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0)) (- 2)) (+ (div (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 2) 1)) (= (mod (+ main_~z~0 (* main_~a~0 main_~y~0 (- 4)) (* main_~b~0 main_~a~0)) 2) 0) (< (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 2) (< 0 (+ (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) (* main_~y~0 2) 1)) (= (mod (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 0) (<= 0 (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0)))))} is VALID [2022-04-08 07:33:48,620 INFO L272 TraceCheckUtils]: 34: Hoare triple {4992#(and (= main_~a~0 main_~z~0) (= (* main_~a~0 4) main_~x~0) (or (and (= main_~a~0 0) (< 0 (+ main_~y~0 1))) (and (< (div (* (- 1) (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0)) (- 2)) (+ (div (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 2) 1)) (= (mod (+ main_~z~0 (* main_~a~0 main_~y~0 (- 4)) (* main_~b~0 main_~a~0)) 2) 0) (< (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 2) (< 0 (+ (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) (* main_~y~0 2) 1)) (= (mod (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0) 0) (<= 0 (div (+ (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* (- 2) main_~a~0 main_~y~0)) main_~a~0)))))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {4999#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:33:48,620 INFO L290 TraceCheckUtils]: 35: Hoare triple {4999#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5003#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:33:48,621 INFO L290 TraceCheckUtils]: 36: Hoare triple {5003#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4882#false} is VALID [2022-04-08 07:33:48,621 INFO L290 TraceCheckUtils]: 37: Hoare triple {4882#false} assume !false; {4882#false} is VALID [2022-04-08 07:33:48,621 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 13 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-08 07:33:48,621 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:34:25,952 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 07:34:52,952 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:34:52,952 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2107262728] [2022-04-08 07:34:52,952 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:34:52,952 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1545806495] [2022-04-08 07:34:52,952 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1545806495] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 07:34:52,952 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 07:34:52,952 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2022-04-08 07:34:52,953 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:34:52,953 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [269074355] [2022-04-08 07:34:52,953 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [269074355] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:34:52,953 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:34:52,953 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 07:34:52,953 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [233380512] [2022-04-08 07:34:52,953 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:34:52,953 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 38 [2022-04-08 07:34:52,953 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:34:52,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:34:55,041 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:34:55,041 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 07:34:55,041 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:34:55,042 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 07:34:55,042 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=63, Invalid=279, Unknown=0, NotChecked=0, Total=342 [2022-04-08 07:34:55,042 INFO L87 Difference]: Start difference. First operand 65 states and 70 transitions. Second operand has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:35:00,270 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:35:09,265 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.21s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:35:11,230 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.27s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:35:11,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:35:11,565 INFO L93 Difference]: Finished difference Result 78 states and 84 transitions. [2022-04-08 07:35:11,565 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 07:35:11,565 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 38 [2022-04-08 07:35:11,565 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:35:11,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:35:11,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 57 transitions. [2022-04-08 07:35:11,566 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:35:11,567 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 57 transitions. [2022-04-08 07:35:11,567 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 57 transitions. [2022-04-08 07:35:13,240 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:35:13,241 INFO L225 Difference]: With dead ends: 78 [2022-04-08 07:35:13,241 INFO L226 Difference]: Without dead ends: 76 [2022-04-08 07:35:13,241 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 29 SyntacticMatches, 3 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 2 DeprecatedPredicates, 107 ImplicationChecksByTransitivity, 5.8s TimeCoverageRelationStatistics Valid=74, Invalid=346, Unknown=0, NotChecked=0, Total=420 [2022-04-08 07:35:13,241 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 22 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 185 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 9.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 178 SdHoareTripleChecker+Invalid, 189 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 185 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 9.5s IncrementalHoareTripleChecker+Time [2022-04-08 07:35:13,242 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 178 Invalid, 189 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 185 Invalid, 1 Unknown, 0 Unchecked, 9.5s Time] [2022-04-08 07:35:13,242 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-08 07:35:13,324 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 65. [2022-04-08 07:35:13,324 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:35:13,324 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:35:13,325 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:35:13,325 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:35:13,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:35:13,326 INFO L93 Difference]: Finished difference Result 76 states and 82 transitions. [2022-04-08 07:35:13,326 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 82 transitions. [2022-04-08 07:35:13,326 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:35:13,326 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:35:13,326 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 76 states. [2022-04-08 07:35:13,326 INFO L87 Difference]: Start difference. First operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 76 states. [2022-04-08 07:35:13,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:35:13,327 INFO L93 Difference]: Finished difference Result 76 states and 82 transitions. [2022-04-08 07:35:13,327 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 82 transitions. [2022-04-08 07:35:13,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:35:13,328 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:35:13,328 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:35:13,328 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:35:13,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 48 states have (on average 1.125) internal successors, (54), 50 states have internal predecessors, (54), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 07:35:13,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 70 transitions. [2022-04-08 07:35:13,329 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 70 transitions. Word has length 38 [2022-04-08 07:35:13,329 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:35:13,329 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 70 transitions. [2022-04-08 07:35:13,329 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:35:13,329 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 65 states and 70 transitions. [2022-04-08 07:35:25,630 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 65 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-08 07:35:25,630 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 70 transitions. [2022-04-08 07:35:25,630 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-08 07:35:25,630 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:35:25,631 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:35:25,646 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-08 07:35:25,831 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-08 07:35:25,831 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:35:25,832 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:35:25,832 INFO L85 PathProgramCache]: Analyzing trace with hash 1348391320, now seen corresponding path program 3 times [2022-04-08 07:35:25,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:35:25,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [318586444] [2022-04-08 07:35:29,877 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:35:29,877 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:35:29,877 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:35:29,877 INFO L85 PathProgramCache]: Analyzing trace with hash 1348391320, now seen corresponding path program 4 times [2022-04-08 07:35:29,877 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:35:29,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1928496420] [2022-04-08 07:35:29,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:35:29,877 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:35:29,885 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:35:29,885 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1666402005] [2022-04-08 07:35:29,885 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 07:35:29,885 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:35:29,885 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:35:29,886 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:35:29,887 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-08 07:35:29,925 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 07:35:29,925 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:35:29,926 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-08 07:35:29,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:35:29,950 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:35:36,457 INFO L272 TraceCheckUtils]: 0: Hoare triple {5487#true} call ULTIMATE.init(); {5487#true} is VALID [2022-04-08 07:35:36,457 INFO L290 TraceCheckUtils]: 1: Hoare triple {5487#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5487#true} is VALID [2022-04-08 07:35:36,457 INFO L290 TraceCheckUtils]: 2: Hoare triple {5487#true} assume true; {5487#true} is VALID [2022-04-08 07:35:36,457 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5487#true} {5487#true} #65#return; {5487#true} is VALID [2022-04-08 07:35:36,457 INFO L272 TraceCheckUtils]: 4: Hoare triple {5487#true} call #t~ret7 := main(); {5487#true} is VALID [2022-04-08 07:35:36,457 INFO L290 TraceCheckUtils]: 5: Hoare triple {5487#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {5487#true} is VALID [2022-04-08 07:35:36,458 INFO L272 TraceCheckUtils]: 6: Hoare triple {5487#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {5487#true} is VALID [2022-04-08 07:35:36,458 INFO L290 TraceCheckUtils]: 7: Hoare triple {5487#true} ~cond := #in~cond; {5487#true} is VALID [2022-04-08 07:35:36,458 INFO L290 TraceCheckUtils]: 8: Hoare triple {5487#true} assume !(0 == ~cond); {5487#true} is VALID [2022-04-08 07:35:36,458 INFO L290 TraceCheckUtils]: 9: Hoare triple {5487#true} assume true; {5487#true} is VALID [2022-04-08 07:35:36,458 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5487#true} {5487#true} #59#return; {5487#true} is VALID [2022-04-08 07:35:36,458 INFO L290 TraceCheckUtils]: 11: Hoare triple {5487#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {5525#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:35:36,459 INFO L290 TraceCheckUtils]: 12: Hoare triple {5525#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5525#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:35:36,459 INFO L290 TraceCheckUtils]: 13: Hoare triple {5525#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {5525#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:35:36,459 INFO L272 TraceCheckUtils]: 14: Hoare triple {5525#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {5487#true} is VALID [2022-04-08 07:35:36,459 INFO L290 TraceCheckUtils]: 15: Hoare triple {5487#true} ~cond := #in~cond; {5487#true} is VALID [2022-04-08 07:35:36,459 INFO L290 TraceCheckUtils]: 16: Hoare triple {5487#true} assume !(0 == ~cond); {5487#true} is VALID [2022-04-08 07:35:36,459 INFO L290 TraceCheckUtils]: 17: Hoare triple {5487#true} assume true; {5487#true} is VALID [2022-04-08 07:35:36,460 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5487#true} {5525#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} #61#return; {5525#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:35:36,460 INFO L290 TraceCheckUtils]: 19: Hoare triple {5525#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {5550#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:35:36,461 INFO L290 TraceCheckUtils]: 20: Hoare triple {5550#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {5554#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 07:35:36,462 INFO L290 TraceCheckUtils]: 21: Hoare triple {5554#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {5558#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 07:35:36,463 INFO L290 TraceCheckUtils]: 22: Hoare triple {5558#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5558#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 07:35:36,463 INFO L290 TraceCheckUtils]: 23: Hoare triple {5558#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {5558#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 07:35:36,463 INFO L272 TraceCheckUtils]: 24: Hoare triple {5558#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {5487#true} is VALID [2022-04-08 07:35:36,464 INFO L290 TraceCheckUtils]: 25: Hoare triple {5487#true} ~cond := #in~cond; {5571#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:35:36,464 INFO L290 TraceCheckUtils]: 26: Hoare triple {5571#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {5575#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:35:36,464 INFO L290 TraceCheckUtils]: 27: Hoare triple {5575#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5575#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:35:36,465 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5575#(not (= |__VERIFIER_assert_#in~cond| 0))} {5558#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} #61#return; {5558#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 07:35:36,465 INFO L290 TraceCheckUtils]: 29: Hoare triple {5558#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} assume !!(0 != ~y~0); {5585#(and (not (= main_~y~0 0)) (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-08 07:35:36,466 INFO L290 TraceCheckUtils]: 30: Hoare triple {5585#(and (not (= main_~y~0 0)) (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {5589#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= (* main_~x~0 3) (* main_~z~0 2)) (<= 1 (mod main_~b~0 2)) (= (+ main_~a~0 main_~x~0) main_~z~0) (= (div (+ (- 1) main_~b~0) 2) (+ main_~y~0 1)) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-08 07:35:36,468 INFO L290 TraceCheckUtils]: 31: Hoare triple {5589#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= (* main_~x~0 3) (* main_~z~0 2)) (<= 1 (mod main_~b~0 2)) (= (+ main_~a~0 main_~x~0) main_~z~0) (= (div (+ (- 1) main_~b~0) 2) (+ main_~y~0 1)) (<= 0 (+ main_~y~0 1)))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {5593#(and (= main_~x~0 (+ (* main_~z~0 2) (* (- 2) main_~a~0))) (<= 1 (mod main_~b~0 2)) (<= 0 (div (+ (- 1) main_~b~0) 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* main_~z~0 2) (+ (* main_~a~0 (- 3)) (* main_~z~0 3))))} is VALID [2022-04-08 07:35:36,468 INFO L290 TraceCheckUtils]: 32: Hoare triple {5593#(and (= main_~x~0 (+ (* main_~z~0 2) (* (- 2) main_~a~0))) (<= 1 (mod main_~b~0 2)) (<= 0 (div (+ (- 1) main_~b~0) 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* main_~z~0 2) (+ (* main_~a~0 (- 3)) (* main_~z~0 3))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5593#(and (= main_~x~0 (+ (* main_~z~0 2) (* (- 2) main_~a~0))) (<= 1 (mod main_~b~0 2)) (<= 0 (div (+ (- 1) main_~b~0) 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* main_~z~0 2) (+ (* main_~a~0 (- 3)) (* main_~z~0 3))))} is VALID [2022-04-08 07:35:36,469 INFO L290 TraceCheckUtils]: 33: Hoare triple {5593#(and (= main_~x~0 (+ (* main_~z~0 2) (* (- 2) main_~a~0))) (<= 1 (mod main_~b~0 2)) (<= 0 (div (+ (- 1) main_~b~0) 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* main_~z~0 2) (+ (* main_~a~0 (- 3)) (* main_~z~0 3))))} assume !!(#t~post6 < 10);havoc #t~post6; {5593#(and (= main_~x~0 (+ (* main_~z~0 2) (* (- 2) main_~a~0))) (<= 1 (mod main_~b~0 2)) (<= 0 (div (+ (- 1) main_~b~0) 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* main_~z~0 2) (+ (* main_~a~0 (- 3)) (* main_~z~0 3))))} is VALID [2022-04-08 07:35:36,958 INFO L272 TraceCheckUtils]: 34: Hoare triple {5593#(and (= main_~x~0 (+ (* main_~z~0 2) (* (- 2) main_~a~0))) (<= 1 (mod main_~b~0 2)) (<= 0 (div (+ (- 1) main_~b~0) 2)) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (= (* main_~z~0 2) (+ (* main_~a~0 (- 3)) (* main_~z~0 3))))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {5603#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:35:36,958 INFO L290 TraceCheckUtils]: 35: Hoare triple {5603#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5607#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:35:36,959 INFO L290 TraceCheckUtils]: 36: Hoare triple {5607#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5488#false} is VALID [2022-04-08 07:35:36,959 INFO L290 TraceCheckUtils]: 37: Hoare triple {5488#false} assume !false; {5488#false} is VALID [2022-04-08 07:35:36,959 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 13 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-08 07:35:36,959 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:36:30,176 INFO L290 TraceCheckUtils]: 37: Hoare triple {5488#false} assume !false; {5488#false} is VALID [2022-04-08 07:36:30,176 INFO L290 TraceCheckUtils]: 36: Hoare triple {5607#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5488#false} is VALID [2022-04-08 07:36:30,176 INFO L290 TraceCheckUtils]: 35: Hoare triple {5603#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5607#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:36:30,177 INFO L272 TraceCheckUtils]: 34: Hoare triple {5623#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {5603#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:36:30,177 INFO L290 TraceCheckUtils]: 33: Hoare triple {5623#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} assume !!(#t~post6 < 10);havoc #t~post6; {5623#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:36:30,178 INFO L290 TraceCheckUtils]: 32: Hoare triple {5623#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5623#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:36:30,182 INFO L290 TraceCheckUtils]: 31: Hoare triple {5633#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {5623#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-08 07:36:30,184 INFO L290 TraceCheckUtils]: 30: Hoare triple {5637#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {5633#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-08 07:36:30,184 INFO L290 TraceCheckUtils]: 29: Hoare triple {5637#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume !!(0 != ~y~0); {5637#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-08 07:36:31,441 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5575#(not (= |__VERIFIER_assert_#in~cond| 0))} {5487#true} #61#return; {5637#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-08 07:36:31,442 INFO L290 TraceCheckUtils]: 27: Hoare triple {5575#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5575#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:36:31,442 INFO L290 TraceCheckUtils]: 26: Hoare triple {5653#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {5575#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:36:31,442 INFO L290 TraceCheckUtils]: 25: Hoare triple {5487#true} ~cond := #in~cond; {5653#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 07:36:31,442 INFO L272 TraceCheckUtils]: 24: Hoare triple {5487#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {5487#true} is VALID [2022-04-08 07:36:31,442 INFO L290 TraceCheckUtils]: 23: Hoare triple {5487#true} assume !!(#t~post6 < 10);havoc #t~post6; {5487#true} is VALID [2022-04-08 07:36:31,442 INFO L290 TraceCheckUtils]: 22: Hoare triple {5487#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L290 TraceCheckUtils]: 21: Hoare triple {5487#true} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L290 TraceCheckUtils]: 20: Hoare triple {5487#true} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L290 TraceCheckUtils]: 19: Hoare triple {5487#true} assume !!(0 != ~y~0); {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5487#true} {5487#true} #61#return; {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L290 TraceCheckUtils]: 17: Hoare triple {5487#true} assume true; {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L290 TraceCheckUtils]: 16: Hoare triple {5487#true} assume !(0 == ~cond); {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L290 TraceCheckUtils]: 15: Hoare triple {5487#true} ~cond := #in~cond; {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L272 TraceCheckUtils]: 14: Hoare triple {5487#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L290 TraceCheckUtils]: 13: Hoare triple {5487#true} assume !!(#t~post6 < 10);havoc #t~post6; {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L290 TraceCheckUtils]: 12: Hoare triple {5487#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L290 TraceCheckUtils]: 11: Hoare triple {5487#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5487#true} {5487#true} #59#return; {5487#true} is VALID [2022-04-08 07:36:31,443 INFO L290 TraceCheckUtils]: 9: Hoare triple {5487#true} assume true; {5487#true} is VALID [2022-04-08 07:36:31,444 INFO L290 TraceCheckUtils]: 8: Hoare triple {5487#true} assume !(0 == ~cond); {5487#true} is VALID [2022-04-08 07:36:31,444 INFO L290 TraceCheckUtils]: 7: Hoare triple {5487#true} ~cond := #in~cond; {5487#true} is VALID [2022-04-08 07:36:31,444 INFO L272 TraceCheckUtils]: 6: Hoare triple {5487#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {5487#true} is VALID [2022-04-08 07:36:31,444 INFO L290 TraceCheckUtils]: 5: Hoare triple {5487#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {5487#true} is VALID [2022-04-08 07:36:31,444 INFO L272 TraceCheckUtils]: 4: Hoare triple {5487#true} call #t~ret7 := main(); {5487#true} is VALID [2022-04-08 07:36:31,444 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5487#true} {5487#true} #65#return; {5487#true} is VALID [2022-04-08 07:36:31,444 INFO L290 TraceCheckUtils]: 2: Hoare triple {5487#true} assume true; {5487#true} is VALID [2022-04-08 07:36:31,444 INFO L290 TraceCheckUtils]: 1: Hoare triple {5487#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5487#true} is VALID [2022-04-08 07:36:31,444 INFO L272 TraceCheckUtils]: 0: Hoare triple {5487#true} call ULTIMATE.init(); {5487#true} is VALID [2022-04-08 07:36:31,444 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 15 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 07:36:31,444 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:36:31,444 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1928496420] [2022-04-08 07:36:31,445 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:36:31,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1666402005] [2022-04-08 07:36:31,445 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1666402005] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:36:31,445 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:36:31,445 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 17 [2022-04-08 07:36:31,445 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:36:31,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [318586444] [2022-04-08 07:36:31,445 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [318586444] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:36:31,445 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:36:31,445 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 07:36:31,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [92904839] [2022-04-08 07:36:31,445 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:36:31,446 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 38 [2022-04-08 07:36:31,446 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:36:31,446 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:36:33,482 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 37 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 07:36:33,483 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 07:36:33,483 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:36:33,483 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 07:36:33,483 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=218, Unknown=3, NotChecked=0, Total=272 [2022-04-08 07:36:33,483 INFO L87 Difference]: Start difference. First operand 65 states and 70 transitions. Second operand has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:36:35,997 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:36:38,601 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.56s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:36:40,603 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:36:46,250 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.50s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:37:02,144 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:37:02,144 INFO L93 Difference]: Finished difference Result 76 states and 82 transitions. [2022-04-08 07:37:02,144 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 07:37:02,144 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 38 [2022-04-08 07:37:02,144 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:37:02,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:37:02,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 58 transitions. [2022-04-08 07:37:02,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:37:02,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 58 transitions. [2022-04-08 07:37:02,146 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 58 transitions. [2022-04-08 07:37:06,129 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 57 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 07:37:06,130 INFO L225 Difference]: With dead ends: 76 [2022-04-08 07:37:06,130 INFO L226 Difference]: Without dead ends: 74 [2022-04-08 07:37:06,130 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 77 GetRequests, 57 SyntacticMatches, 3 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 49 ImplicationChecksByTransitivity, 15.3s TimeCoverageRelationStatistics Valid=64, Invalid=275, Unknown=3, NotChecked=0, Total=342 [2022-04-08 07:37:06,131 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 18 mSDsluCounter, 188 mSDsCounter, 0 mSdLazyCounter, 269 mSolverCounterSat, 3 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 13.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 213 SdHoareTripleChecker+Invalid, 274 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 269 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 13.9s IncrementalHoareTripleChecker+Time [2022-04-08 07:37:06,131 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 213 Invalid, 274 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 269 Invalid, 2 Unknown, 0 Unchecked, 13.9s Time] [2022-04-08 07:37:06,131 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-08 07:37:06,221 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 52. [2022-04-08 07:37:06,222 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:37:06,222 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 52 states, 37 states have (on average 1.135135135135135) internal successors, (42), 39 states have internal predecessors, (42), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:37:06,222 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 52 states, 37 states have (on average 1.135135135135135) internal successors, (42), 39 states have internal predecessors, (42), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:37:06,222 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 52 states, 37 states have (on average 1.135135135135135) internal successors, (42), 39 states have internal predecessors, (42), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:37:06,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:37:06,223 INFO L93 Difference]: Finished difference Result 74 states and 80 transitions. [2022-04-08 07:37:06,223 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 80 transitions. [2022-04-08 07:37:06,223 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:37:06,223 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:37:06,223 INFO L74 IsIncluded]: Start isIncluded. First operand has 52 states, 37 states have (on average 1.135135135135135) internal successors, (42), 39 states have internal predecessors, (42), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 74 states. [2022-04-08 07:37:06,223 INFO L87 Difference]: Start difference. First operand has 52 states, 37 states have (on average 1.135135135135135) internal successors, (42), 39 states have internal predecessors, (42), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 74 states. [2022-04-08 07:37:06,224 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:37:06,224 INFO L93 Difference]: Finished difference Result 74 states and 80 transitions. [2022-04-08 07:37:06,225 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 80 transitions. [2022-04-08 07:37:06,225 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:37:06,225 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:37:06,225 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:37:06,225 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:37:06,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 37 states have (on average 1.135135135135135) internal successors, (42), 39 states have internal predecessors, (42), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:37:06,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 56 transitions. [2022-04-08 07:37:06,226 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 56 transitions. Word has length 38 [2022-04-08 07:37:06,226 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:37:06,226 INFO L478 AbstractCegarLoop]: Abstraction has 52 states and 56 transitions. [2022-04-08 07:37:06,226 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 07:37:06,226 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 52 states and 56 transitions. [2022-04-08 07:37:15,707 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 52 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 07:37:15,707 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 56 transitions. [2022-04-08 07:37:15,707 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-08 07:37:15,707 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:37:15,707 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:37:15,724 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-08 07:37:15,908 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-08 07:37:15,908 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:37:15,908 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:37:15,908 INFO L85 PathProgramCache]: Analyzing trace with hash -1258071893, now seen corresponding path program 5 times [2022-04-08 07:37:15,909 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:37:15,909 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [468309589] [2022-04-08 07:37:18,233 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:37:18,233 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:37:18,233 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:37:18,233 INFO L85 PathProgramCache]: Analyzing trace with hash -1258071893, now seen corresponding path program 6 times [2022-04-08 07:37:18,233 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:37:18,233 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [69167984] [2022-04-08 07:37:18,233 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:37:18,233 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:37:18,243 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:37:18,243 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1887380592] [2022-04-08 07:37:18,243 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 07:37:18,244 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:37:18,244 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:37:18,244 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:37:18,245 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-08 07:37:18,285 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-08 07:37:18,285 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:37:18,286 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 07:37:18,295 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:37:18,295 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:37:18,467 INFO L272 TraceCheckUtils]: 0: Hoare triple {6139#true} call ULTIMATE.init(); {6139#true} is VALID [2022-04-08 07:37:18,468 INFO L290 TraceCheckUtils]: 1: Hoare triple {6139#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,468 INFO L290 TraceCheckUtils]: 2: Hoare triple {6147#(<= ~counter~0 0)} assume true; {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,468 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6147#(<= ~counter~0 0)} {6139#true} #65#return; {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,469 INFO L272 TraceCheckUtils]: 4: Hoare triple {6147#(<= ~counter~0 0)} call #t~ret7 := main(); {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,469 INFO L290 TraceCheckUtils]: 5: Hoare triple {6147#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,469 INFO L272 TraceCheckUtils]: 6: Hoare triple {6147#(<= ~counter~0 0)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,470 INFO L290 TraceCheckUtils]: 7: Hoare triple {6147#(<= ~counter~0 0)} ~cond := #in~cond; {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,470 INFO L290 TraceCheckUtils]: 8: Hoare triple {6147#(<= ~counter~0 0)} assume !(0 == ~cond); {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,470 INFO L290 TraceCheckUtils]: 9: Hoare triple {6147#(<= ~counter~0 0)} assume true; {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,471 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6147#(<= ~counter~0 0)} {6147#(<= ~counter~0 0)} #59#return; {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,471 INFO L290 TraceCheckUtils]: 11: Hoare triple {6147#(<= ~counter~0 0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {6147#(<= ~counter~0 0)} is VALID [2022-04-08 07:37:18,471 INFO L290 TraceCheckUtils]: 12: Hoare triple {6147#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6181#(<= ~counter~0 1)} is VALID [2022-04-08 07:37:18,472 INFO L290 TraceCheckUtils]: 13: Hoare triple {6181#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {6181#(<= ~counter~0 1)} is VALID [2022-04-08 07:37:18,472 INFO L272 TraceCheckUtils]: 14: Hoare triple {6181#(<= ~counter~0 1)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {6181#(<= ~counter~0 1)} is VALID [2022-04-08 07:37:18,473 INFO L290 TraceCheckUtils]: 15: Hoare triple {6181#(<= ~counter~0 1)} ~cond := #in~cond; {6181#(<= ~counter~0 1)} is VALID [2022-04-08 07:37:18,473 INFO L290 TraceCheckUtils]: 16: Hoare triple {6181#(<= ~counter~0 1)} assume !(0 == ~cond); {6181#(<= ~counter~0 1)} is VALID [2022-04-08 07:37:18,473 INFO L290 TraceCheckUtils]: 17: Hoare triple {6181#(<= ~counter~0 1)} assume true; {6181#(<= ~counter~0 1)} is VALID [2022-04-08 07:37:18,474 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6181#(<= ~counter~0 1)} {6181#(<= ~counter~0 1)} #61#return; {6181#(<= ~counter~0 1)} is VALID [2022-04-08 07:37:18,474 INFO L290 TraceCheckUtils]: 19: Hoare triple {6181#(<= ~counter~0 1)} assume !!(0 != ~y~0); {6181#(<= ~counter~0 1)} is VALID [2022-04-08 07:37:18,474 INFO L290 TraceCheckUtils]: 20: Hoare triple {6181#(<= ~counter~0 1)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {6181#(<= ~counter~0 1)} is VALID [2022-04-08 07:37:18,475 INFO L290 TraceCheckUtils]: 21: Hoare triple {6181#(<= ~counter~0 1)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {6181#(<= ~counter~0 1)} is VALID [2022-04-08 07:37:18,475 INFO L290 TraceCheckUtils]: 22: Hoare triple {6181#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6212#(<= ~counter~0 2)} is VALID [2022-04-08 07:37:18,475 INFO L290 TraceCheckUtils]: 23: Hoare triple {6212#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {6212#(<= ~counter~0 2)} is VALID [2022-04-08 07:37:18,476 INFO L272 TraceCheckUtils]: 24: Hoare triple {6212#(<= ~counter~0 2)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {6212#(<= ~counter~0 2)} is VALID [2022-04-08 07:37:18,476 INFO L290 TraceCheckUtils]: 25: Hoare triple {6212#(<= ~counter~0 2)} ~cond := #in~cond; {6212#(<= ~counter~0 2)} is VALID [2022-04-08 07:37:18,476 INFO L290 TraceCheckUtils]: 26: Hoare triple {6212#(<= ~counter~0 2)} assume !(0 == ~cond); {6212#(<= ~counter~0 2)} is VALID [2022-04-08 07:37:18,476 INFO L290 TraceCheckUtils]: 27: Hoare triple {6212#(<= ~counter~0 2)} assume true; {6212#(<= ~counter~0 2)} is VALID [2022-04-08 07:37:18,477 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6212#(<= ~counter~0 2)} {6212#(<= ~counter~0 2)} #61#return; {6212#(<= ~counter~0 2)} is VALID [2022-04-08 07:37:18,477 INFO L290 TraceCheckUtils]: 29: Hoare triple {6212#(<= ~counter~0 2)} assume !!(0 != ~y~0); {6212#(<= ~counter~0 2)} is VALID [2022-04-08 07:37:18,477 INFO L290 TraceCheckUtils]: 30: Hoare triple {6212#(<= ~counter~0 2)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {6212#(<= ~counter~0 2)} is VALID [2022-04-08 07:37:18,478 INFO L290 TraceCheckUtils]: 31: Hoare triple {6212#(<= ~counter~0 2)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {6212#(<= ~counter~0 2)} is VALID [2022-04-08 07:37:18,478 INFO L290 TraceCheckUtils]: 32: Hoare triple {6212#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6243#(<= ~counter~0 3)} is VALID [2022-04-08 07:37:18,478 INFO L290 TraceCheckUtils]: 33: Hoare triple {6243#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {6243#(<= ~counter~0 3)} is VALID [2022-04-08 07:37:18,479 INFO L272 TraceCheckUtils]: 34: Hoare triple {6243#(<= ~counter~0 3)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {6243#(<= ~counter~0 3)} is VALID [2022-04-08 07:37:18,479 INFO L290 TraceCheckUtils]: 35: Hoare triple {6243#(<= ~counter~0 3)} ~cond := #in~cond; {6243#(<= ~counter~0 3)} is VALID [2022-04-08 07:37:18,479 INFO L290 TraceCheckUtils]: 36: Hoare triple {6243#(<= ~counter~0 3)} assume !(0 == ~cond); {6243#(<= ~counter~0 3)} is VALID [2022-04-08 07:37:18,480 INFO L290 TraceCheckUtils]: 37: Hoare triple {6243#(<= ~counter~0 3)} assume true; {6243#(<= ~counter~0 3)} is VALID [2022-04-08 07:37:18,480 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {6243#(<= ~counter~0 3)} {6243#(<= ~counter~0 3)} #61#return; {6243#(<= ~counter~0 3)} is VALID [2022-04-08 07:37:18,480 INFO L290 TraceCheckUtils]: 39: Hoare triple {6243#(<= ~counter~0 3)} assume !!(0 != ~y~0); {6243#(<= ~counter~0 3)} is VALID [2022-04-08 07:37:18,481 INFO L290 TraceCheckUtils]: 40: Hoare triple {6243#(<= ~counter~0 3)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {6243#(<= ~counter~0 3)} is VALID [2022-04-08 07:37:18,481 INFO L290 TraceCheckUtils]: 41: Hoare triple {6243#(<= ~counter~0 3)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {6243#(<= ~counter~0 3)} is VALID [2022-04-08 07:37:18,481 INFO L290 TraceCheckUtils]: 42: Hoare triple {6243#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6274#(<= |main_#t~post6| 3)} is VALID [2022-04-08 07:37:18,493 INFO L290 TraceCheckUtils]: 43: Hoare triple {6274#(<= |main_#t~post6| 3)} assume !(#t~post6 < 10);havoc #t~post6; {6140#false} is VALID [2022-04-08 07:37:18,493 INFO L272 TraceCheckUtils]: 44: Hoare triple {6140#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {6140#false} is VALID [2022-04-08 07:37:18,493 INFO L290 TraceCheckUtils]: 45: Hoare triple {6140#false} ~cond := #in~cond; {6140#false} is VALID [2022-04-08 07:37:18,493 INFO L290 TraceCheckUtils]: 46: Hoare triple {6140#false} assume 0 == ~cond; {6140#false} is VALID [2022-04-08 07:37:18,493 INFO L290 TraceCheckUtils]: 47: Hoare triple {6140#false} assume !false; {6140#false} is VALID [2022-04-08 07:37:18,493 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 36 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 07:37:18,493 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:37:18,692 INFO L290 TraceCheckUtils]: 47: Hoare triple {6140#false} assume !false; {6140#false} is VALID [2022-04-08 07:37:18,692 INFO L290 TraceCheckUtils]: 46: Hoare triple {6140#false} assume 0 == ~cond; {6140#false} is VALID [2022-04-08 07:37:18,693 INFO L290 TraceCheckUtils]: 45: Hoare triple {6140#false} ~cond := #in~cond; {6140#false} is VALID [2022-04-08 07:37:18,693 INFO L272 TraceCheckUtils]: 44: Hoare triple {6140#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {6140#false} is VALID [2022-04-08 07:37:18,694 INFO L290 TraceCheckUtils]: 43: Hoare triple {6302#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {6140#false} is VALID [2022-04-08 07:37:18,695 INFO L290 TraceCheckUtils]: 42: Hoare triple {6306#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6302#(< |main_#t~post6| 10)} is VALID [2022-04-08 07:37:18,695 INFO L290 TraceCheckUtils]: 41: Hoare triple {6306#(< ~counter~0 10)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {6306#(< ~counter~0 10)} is VALID [2022-04-08 07:37:18,695 INFO L290 TraceCheckUtils]: 40: Hoare triple {6306#(< ~counter~0 10)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {6306#(< ~counter~0 10)} is VALID [2022-04-08 07:37:18,695 INFO L290 TraceCheckUtils]: 39: Hoare triple {6306#(< ~counter~0 10)} assume !!(0 != ~y~0); {6306#(< ~counter~0 10)} is VALID [2022-04-08 07:37:18,696 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {6139#true} {6306#(< ~counter~0 10)} #61#return; {6306#(< ~counter~0 10)} is VALID [2022-04-08 07:37:18,696 INFO L290 TraceCheckUtils]: 37: Hoare triple {6139#true} assume true; {6139#true} is VALID [2022-04-08 07:37:18,696 INFO L290 TraceCheckUtils]: 36: Hoare triple {6139#true} assume !(0 == ~cond); {6139#true} is VALID [2022-04-08 07:37:18,696 INFO L290 TraceCheckUtils]: 35: Hoare triple {6139#true} ~cond := #in~cond; {6139#true} is VALID [2022-04-08 07:37:18,696 INFO L272 TraceCheckUtils]: 34: Hoare triple {6306#(< ~counter~0 10)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {6139#true} is VALID [2022-04-08 07:37:18,697 INFO L290 TraceCheckUtils]: 33: Hoare triple {6306#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {6306#(< ~counter~0 10)} is VALID [2022-04-08 07:37:18,697 INFO L290 TraceCheckUtils]: 32: Hoare triple {6337#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6306#(< ~counter~0 10)} is VALID [2022-04-08 07:37:18,697 INFO L290 TraceCheckUtils]: 31: Hoare triple {6337#(< ~counter~0 9)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {6337#(< ~counter~0 9)} is VALID [2022-04-08 07:37:18,698 INFO L290 TraceCheckUtils]: 30: Hoare triple {6337#(< ~counter~0 9)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {6337#(< ~counter~0 9)} is VALID [2022-04-08 07:37:18,698 INFO L290 TraceCheckUtils]: 29: Hoare triple {6337#(< ~counter~0 9)} assume !!(0 != ~y~0); {6337#(< ~counter~0 9)} is VALID [2022-04-08 07:37:18,698 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6139#true} {6337#(< ~counter~0 9)} #61#return; {6337#(< ~counter~0 9)} is VALID [2022-04-08 07:37:18,698 INFO L290 TraceCheckUtils]: 27: Hoare triple {6139#true} assume true; {6139#true} is VALID [2022-04-08 07:37:18,699 INFO L290 TraceCheckUtils]: 26: Hoare triple {6139#true} assume !(0 == ~cond); {6139#true} is VALID [2022-04-08 07:37:18,699 INFO L290 TraceCheckUtils]: 25: Hoare triple {6139#true} ~cond := #in~cond; {6139#true} is VALID [2022-04-08 07:37:18,699 INFO L272 TraceCheckUtils]: 24: Hoare triple {6337#(< ~counter~0 9)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {6139#true} is VALID [2022-04-08 07:37:18,699 INFO L290 TraceCheckUtils]: 23: Hoare triple {6337#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {6337#(< ~counter~0 9)} is VALID [2022-04-08 07:37:18,699 INFO L290 TraceCheckUtils]: 22: Hoare triple {6368#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6337#(< ~counter~0 9)} is VALID [2022-04-08 07:37:18,700 INFO L290 TraceCheckUtils]: 21: Hoare triple {6368#(< ~counter~0 8)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {6368#(< ~counter~0 8)} is VALID [2022-04-08 07:37:18,700 INFO L290 TraceCheckUtils]: 20: Hoare triple {6368#(< ~counter~0 8)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {6368#(< ~counter~0 8)} is VALID [2022-04-08 07:37:18,700 INFO L290 TraceCheckUtils]: 19: Hoare triple {6368#(< ~counter~0 8)} assume !!(0 != ~y~0); {6368#(< ~counter~0 8)} is VALID [2022-04-08 07:37:18,701 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6139#true} {6368#(< ~counter~0 8)} #61#return; {6368#(< ~counter~0 8)} is VALID [2022-04-08 07:37:18,701 INFO L290 TraceCheckUtils]: 17: Hoare triple {6139#true} assume true; {6139#true} is VALID [2022-04-08 07:37:18,701 INFO L290 TraceCheckUtils]: 16: Hoare triple {6139#true} assume !(0 == ~cond); {6139#true} is VALID [2022-04-08 07:37:18,701 INFO L290 TraceCheckUtils]: 15: Hoare triple {6139#true} ~cond := #in~cond; {6139#true} is VALID [2022-04-08 07:37:18,701 INFO L272 TraceCheckUtils]: 14: Hoare triple {6368#(< ~counter~0 8)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {6139#true} is VALID [2022-04-08 07:37:18,701 INFO L290 TraceCheckUtils]: 13: Hoare triple {6368#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {6368#(< ~counter~0 8)} is VALID [2022-04-08 07:37:18,702 INFO L290 TraceCheckUtils]: 12: Hoare triple {6399#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6368#(< ~counter~0 8)} is VALID [2022-04-08 07:37:18,702 INFO L290 TraceCheckUtils]: 11: Hoare triple {6399#(< ~counter~0 7)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {6399#(< ~counter~0 7)} is VALID [2022-04-08 07:37:18,702 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6139#true} {6399#(< ~counter~0 7)} #59#return; {6399#(< ~counter~0 7)} is VALID [2022-04-08 07:37:18,702 INFO L290 TraceCheckUtils]: 9: Hoare triple {6139#true} assume true; {6139#true} is VALID [2022-04-08 07:37:18,702 INFO L290 TraceCheckUtils]: 8: Hoare triple {6139#true} assume !(0 == ~cond); {6139#true} is VALID [2022-04-08 07:37:18,702 INFO L290 TraceCheckUtils]: 7: Hoare triple {6139#true} ~cond := #in~cond; {6139#true} is VALID [2022-04-08 07:37:18,702 INFO L272 TraceCheckUtils]: 6: Hoare triple {6399#(< ~counter~0 7)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {6139#true} is VALID [2022-04-08 07:37:18,703 INFO L290 TraceCheckUtils]: 5: Hoare triple {6399#(< ~counter~0 7)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {6399#(< ~counter~0 7)} is VALID [2022-04-08 07:37:18,703 INFO L272 TraceCheckUtils]: 4: Hoare triple {6399#(< ~counter~0 7)} call #t~ret7 := main(); {6399#(< ~counter~0 7)} is VALID [2022-04-08 07:37:18,703 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6399#(< ~counter~0 7)} {6139#true} #65#return; {6399#(< ~counter~0 7)} is VALID [2022-04-08 07:37:18,704 INFO L290 TraceCheckUtils]: 2: Hoare triple {6399#(< ~counter~0 7)} assume true; {6399#(< ~counter~0 7)} is VALID [2022-04-08 07:37:18,704 INFO L290 TraceCheckUtils]: 1: Hoare triple {6139#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6399#(< ~counter~0 7)} is VALID [2022-04-08 07:37:18,704 INFO L272 TraceCheckUtils]: 0: Hoare triple {6139#true} call ULTIMATE.init(); {6139#true} is VALID [2022-04-08 07:37:18,704 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 24 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 07:37:18,704 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:37:18,704 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [69167984] [2022-04-08 07:37:18,705 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:37:18,705 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1887380592] [2022-04-08 07:37:18,705 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1887380592] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:37:18,705 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:37:18,705 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 07:37:18,705 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:37:18,705 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [468309589] [2022-04-08 07:37:18,705 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [468309589] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:37:18,705 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:37:18,705 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 07:37:18,705 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [729856988] [2022-04-08 07:37:18,705 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:37:18,706 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 6 states have internal predecessors, (36), 6 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Word has length 48 [2022-04-08 07:37:18,706 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:37:18,706 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 6 states have internal predecessors, (36), 6 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:37:18,737 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:37:18,737 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 07:37:18,737 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:37:18,737 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 07:37:18,737 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 07:37:18,737 INFO L87 Difference]: Start difference. First operand 52 states and 56 transitions. Second operand has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 6 states have internal predecessors, (36), 6 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:37:18,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:37:18,942 INFO L93 Difference]: Finished difference Result 64 states and 69 transitions. [2022-04-08 07:37:18,942 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 07:37:18,942 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 6 states have internal predecessors, (36), 6 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Word has length 48 [2022-04-08 07:37:18,943 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:37:18,943 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 6 states have internal predecessors, (36), 6 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:37:18,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 69 transitions. [2022-04-08 07:37:18,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 6 states have internal predecessors, (36), 6 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:37:18,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 69 transitions. [2022-04-08 07:37:18,944 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 69 transitions. [2022-04-08 07:37:18,993 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:37:18,993 INFO L225 Difference]: With dead ends: 64 [2022-04-08 07:37:18,994 INFO L226 Difference]: Without dead ends: 57 [2022-04-08 07:37:18,994 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 85 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=83, Invalid=127, Unknown=0, NotChecked=0, Total=210 [2022-04-08 07:37:18,994 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 16 mSDsluCounter, 68 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 96 SdHoareTripleChecker+Invalid, 29 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 07:37:18,994 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 96 Invalid, 29 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 07:37:18,995 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-04-08 07:37:19,099 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2022-04-08 07:37:19,099 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:37:19,100 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 57 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:37:19,100 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 57 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:37:19,100 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 57 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:37:19,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:37:19,101 INFO L93 Difference]: Finished difference Result 57 states and 62 transitions. [2022-04-08 07:37:19,101 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 62 transitions. [2022-04-08 07:37:19,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:37:19,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:37:19,101 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 57 states. [2022-04-08 07:37:19,102 INFO L87 Difference]: Start difference. First operand has 57 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 57 states. [2022-04-08 07:37:19,102 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:37:19,102 INFO L93 Difference]: Finished difference Result 57 states and 62 transitions. [2022-04-08 07:37:19,102 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 62 transitions. [2022-04-08 07:37:19,103 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:37:19,103 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:37:19,103 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:37:19,103 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:37:19,103 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 42 states have (on average 1.1428571428571428) internal successors, (48), 43 states have internal predecessors, (48), 8 states have call successors, (8), 7 states have call predecessors, (8), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 07:37:19,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 62 transitions. [2022-04-08 07:37:19,104 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 62 transitions. Word has length 48 [2022-04-08 07:37:19,104 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:37:19,104 INFO L478 AbstractCegarLoop]: Abstraction has 57 states and 62 transitions. [2022-04-08 07:37:19,104 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 6 states have internal predecessors, (36), 6 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 07:37:19,104 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 57 states and 62 transitions. [2022-04-08 07:37:30,192 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 58 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 07:37:30,193 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 62 transitions. [2022-04-08 07:37:30,193 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-08 07:37:30,193 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:37:30,193 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:37:30,209 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-08 07:37:30,393 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-08 07:37:30,394 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:37:30,394 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:37:30,394 INFO L85 PathProgramCache]: Analyzing trace with hash -1256284433, now seen corresponding path program 5 times [2022-04-08 07:37:30,394 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:37:30,394 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [910626906] [2022-04-08 07:37:33,891 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:37:33,891 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:37:33,891 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:37:33,892 INFO L85 PathProgramCache]: Analyzing trace with hash -1256284433, now seen corresponding path program 6 times [2022-04-08 07:37:33,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:37:33,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [587239981] [2022-04-08 07:37:33,892 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:37:33,892 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:37:33,900 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:37:33,900 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1874834684] [2022-04-08 07:37:33,900 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 07:37:33,900 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:37:33,900 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:37:33,901 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:37:33,902 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-08 07:37:33,944 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-08 07:37:33,944 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:37:33,945 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-08 07:37:33,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:37:33,959 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:37:55,804 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 07:38:41,013 INFO L272 TraceCheckUtils]: 0: Hoare triple {6800#true} call ULTIMATE.init(); {6800#true} is VALID [2022-04-08 07:38:41,014 INFO L290 TraceCheckUtils]: 1: Hoare triple {6800#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6800#true} is VALID [2022-04-08 07:38:41,014 INFO L290 TraceCheckUtils]: 2: Hoare triple {6800#true} assume true; {6800#true} is VALID [2022-04-08 07:38:41,014 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6800#true} {6800#true} #65#return; {6800#true} is VALID [2022-04-08 07:38:41,014 INFO L272 TraceCheckUtils]: 4: Hoare triple {6800#true} call #t~ret7 := main(); {6800#true} is VALID [2022-04-08 07:38:41,014 INFO L290 TraceCheckUtils]: 5: Hoare triple {6800#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {6800#true} is VALID [2022-04-08 07:38:41,014 INFO L272 TraceCheckUtils]: 6: Hoare triple {6800#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {6800#true} is VALID [2022-04-08 07:38:41,015 INFO L290 TraceCheckUtils]: 7: Hoare triple {6800#true} ~cond := #in~cond; {6826#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 07:38:41,027 INFO L290 TraceCheckUtils]: 8: Hoare triple {6826#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {6830#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:38:41,028 INFO L290 TraceCheckUtils]: 9: Hoare triple {6830#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {6830#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 07:38:41,028 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6830#(not (= |assume_abort_if_not_#in~cond| 0))} {6800#true} #59#return; {6837#(<= 1 main_~b~0)} is VALID [2022-04-08 07:38:41,028 INFO L290 TraceCheckUtils]: 11: Hoare triple {6837#(<= 1 main_~b~0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:38:41,029 INFO L290 TraceCheckUtils]: 12: Hoare triple {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:38:41,029 INFO L290 TraceCheckUtils]: 13: Hoare triple {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:38:41,029 INFO L272 TraceCheckUtils]: 14: Hoare triple {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {6800#true} is VALID [2022-04-08 07:38:41,029 INFO L290 TraceCheckUtils]: 15: Hoare triple {6800#true} ~cond := #in~cond; {6800#true} is VALID [2022-04-08 07:38:41,029 INFO L290 TraceCheckUtils]: 16: Hoare triple {6800#true} assume !(0 == ~cond); {6800#true} is VALID [2022-04-08 07:38:41,029 INFO L290 TraceCheckUtils]: 17: Hoare triple {6800#true} assume true; {6800#true} is VALID [2022-04-08 07:38:41,030 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6800#true} {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #61#return; {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:38:41,030 INFO L290 TraceCheckUtils]: 19: Hoare triple {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:38:41,031 INFO L290 TraceCheckUtils]: 20: Hoare triple {6841#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {6869#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 07:38:41,032 INFO L290 TraceCheckUtils]: 21: Hoare triple {6869#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,033 INFO L290 TraceCheckUtils]: 22: Hoare triple {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,033 INFO L290 TraceCheckUtils]: 23: Hoare triple {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !!(#t~post6 < 10);havoc #t~post6; {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,033 INFO L272 TraceCheckUtils]: 24: Hoare triple {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {6800#true} is VALID [2022-04-08 07:38:41,033 INFO L290 TraceCheckUtils]: 25: Hoare triple {6800#true} ~cond := #in~cond; {6800#true} is VALID [2022-04-08 07:38:41,033 INFO L290 TraceCheckUtils]: 26: Hoare triple {6800#true} assume !(0 == ~cond); {6800#true} is VALID [2022-04-08 07:38:41,033 INFO L290 TraceCheckUtils]: 27: Hoare triple {6800#true} assume true; {6800#true} is VALID [2022-04-08 07:38:41,034 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6800#true} {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} #61#return; {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,034 INFO L290 TraceCheckUtils]: 29: Hoare triple {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !!(0 != ~y~0); {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,036 INFO L290 TraceCheckUtils]: 30: Hoare triple {6873#(and (= main_~z~0 0) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {6901#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,039 INFO L290 TraceCheckUtils]: 31: Hoare triple {6901#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (<= (div main_~b~0 2) main_~y~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {6905#(and (= main_~z~0 0) (exists ((aux_div_v_main_~y~0_121_23 Int) (aux_mod_v_main_~y~0_121_23 Int)) (and (<= (div main_~b~0 2) (+ (* 2 aux_div_v_main_~y~0_121_23) aux_mod_v_main_~y~0_121_23)) (not (= aux_mod_v_main_~y~0_121_23 1)) (<= (div (+ (* 2 aux_div_v_main_~y~0_121_23) aux_mod_v_main_~y~0_121_23) 2) main_~y~0) (< aux_mod_v_main_~y~0_121_23 2) (<= 0 aux_mod_v_main_~y~0_121_23))) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,040 INFO L290 TraceCheckUtils]: 32: Hoare triple {6905#(and (= main_~z~0 0) (exists ((aux_div_v_main_~y~0_121_23 Int) (aux_mod_v_main_~y~0_121_23 Int)) (and (<= (div main_~b~0 2) (+ (* 2 aux_div_v_main_~y~0_121_23) aux_mod_v_main_~y~0_121_23)) (not (= aux_mod_v_main_~y~0_121_23 1)) (<= (div (+ (* 2 aux_div_v_main_~y~0_121_23) aux_mod_v_main_~y~0_121_23) 2) main_~y~0) (< aux_mod_v_main_~y~0_121_23 2) (<= 0 aux_mod_v_main_~y~0_121_23))) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6909#(and (= main_~z~0 0) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,041 INFO L290 TraceCheckUtils]: 33: Hoare triple {6909#(and (= main_~z~0 0) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !!(#t~post6 < 10);havoc #t~post6; {6909#(and (= main_~z~0 0) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,041 INFO L272 TraceCheckUtils]: 34: Hoare triple {6909#(and (= main_~z~0 0) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {6800#true} is VALID [2022-04-08 07:38:41,041 INFO L290 TraceCheckUtils]: 35: Hoare triple {6800#true} ~cond := #in~cond; {6919#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:38:41,041 INFO L290 TraceCheckUtils]: 36: Hoare triple {6919#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6923#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:38:41,042 INFO L290 TraceCheckUtils]: 37: Hoare triple {6923#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6923#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 07:38:41,042 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {6923#(not (= |__VERIFIER_assert_#in~cond| 0))} {6909#(and (= main_~z~0 0) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} #61#return; {6930#(and (= main_~z~0 0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,043 INFO L290 TraceCheckUtils]: 39: Hoare triple {6930#(and (= main_~z~0 0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !!(0 != ~y~0); {6930#(and (= main_~z~0 0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,044 INFO L290 TraceCheckUtils]: 40: Hoare triple {6930#(and (= main_~z~0 0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {6937#(and (= main_~z~0 0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~y~0 2) 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-08 07:38:41,891 INFO L290 TraceCheckUtils]: 41: Hoare triple {6937#(and (= main_~z~0 0) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~y~0 2) 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {6941#(and (= main_~z~0 0) (exists ((aux_div_v_main_~y~0_122_23 Int) (aux_mod_v_main_~y~0_122_23 Int)) (and (not (= aux_mod_v_main_~y~0_122_23 1)) (<= 0 aux_mod_v_main_~y~0_122_23) (= (div (+ aux_mod_v_main_~y~0_122_23 (* 2 aux_div_v_main_~y~0_122_23)) 2) main_~y~0) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ aux_mod_v_main_~y~0_122_23 (* 2 aux_div_v_main_~y~0_122_23) 1)) (= (+ (* (div (- main_~x~0) (- 2)) (+ aux_mod_v_main_~y~0_122_23 (* 2 aux_div_v_main_~y~0_122_23))) main_~z~0) (* main_~b~0 main_~a~0)) (< aux_mod_v_main_~y~0_122_23 2))) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-08 07:38:41,895 INFO L290 TraceCheckUtils]: 42: Hoare triple {6941#(and (= main_~z~0 0) (exists ((aux_div_v_main_~y~0_122_23 Int) (aux_mod_v_main_~y~0_122_23 Int)) (and (not (= aux_mod_v_main_~y~0_122_23 1)) (<= 0 aux_mod_v_main_~y~0_122_23) (= (div (+ aux_mod_v_main_~y~0_122_23 (* 2 aux_div_v_main_~y~0_122_23)) 2) main_~y~0) (< (div (* (- 1) (div main_~b~0 2)) (- 2)) (+ aux_mod_v_main_~y~0_122_23 (* 2 aux_div_v_main_~y~0_122_23) 1)) (= (+ (* (div (- main_~x~0) (- 2)) (+ aux_mod_v_main_~y~0_122_23 (* 2 aux_div_v_main_~y~0_122_23))) main_~z~0) (* main_~b~0 main_~a~0)) (< aux_mod_v_main_~y~0_122_23 2))) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6945#(and (= main_~z~0 0) (= (+ main_~z~0 (* 2 (* (div (* (- 1) main_~x~0) (- 2)) main_~y~0))) (* main_~b~0 main_~a~0)) (< (div (* (div (* (- 1) (div main_~b~0 2)) (- 2)) (- 1)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-08 07:38:41,895 INFO L290 TraceCheckUtils]: 43: Hoare triple {6945#(and (= main_~z~0 0) (= (+ main_~z~0 (* 2 (* (div (* (- 1) main_~x~0) (- 2)) main_~y~0))) (* main_~b~0 main_~a~0)) (< (div (* (div (* (- 1) (div main_~b~0 2)) (- 2)) (- 1)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0))} assume !!(#t~post6 < 10);havoc #t~post6; {6945#(and (= main_~z~0 0) (= (+ main_~z~0 (* 2 (* (div (* (- 1) main_~x~0) (- 2)) main_~y~0))) (* main_~b~0 main_~a~0)) (< (div (* (div (* (- 1) (div main_~b~0 2)) (- 2)) (- 1)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-08 07:38:42,324 INFO L272 TraceCheckUtils]: 44: Hoare triple {6945#(and (= main_~z~0 0) (= (+ main_~z~0 (* 2 (* (div (* (- 1) main_~x~0) (- 2)) main_~y~0))) (* main_~b~0 main_~a~0)) (< (div (* (div (* (- 1) (div main_~b~0 2)) (- 2)) (- 1)) (- 2)) (+ main_~y~0 1)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {6952#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 07:38:42,324 INFO L290 TraceCheckUtils]: 45: Hoare triple {6952#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6956#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:38:42,324 INFO L290 TraceCheckUtils]: 46: Hoare triple {6956#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6801#false} is VALID [2022-04-08 07:38:42,325 INFO L290 TraceCheckUtils]: 47: Hoare triple {6801#false} assume !false; {6801#false} is VALID [2022-04-08 07:38:42,325 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 11 proven. 28 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-08 07:38:42,325 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:39:10,794 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 07:40:55,191 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:40:55,191 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [587239981] [2022-04-08 07:40:55,191 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:40:55,191 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1874834684] [2022-04-08 07:40:55,192 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1874834684] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 07:40:55,192 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 07:40:55,192 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19] total 19 [2022-04-08 07:40:55,192 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:40:55,192 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [910626906] [2022-04-08 07:40:55,192 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [910626906] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:40:55,192 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:40:55,192 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-08 07:40:55,192 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [444231491] [2022-04-08 07:40:55,192 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:40:55,193 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.736842105263158) internal successors, (33), 17 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Word has length 48 [2022-04-08 07:40:55,193 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:40:55,193 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 1.736842105263158) internal successors, (33), 17 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 07:40:58,423 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:40:58,424 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-08 07:40:58,424 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:40:58,424 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-08 07:40:58,424 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=115, Invalid=483, Unknown=2, NotChecked=0, Total=600 [2022-04-08 07:40:58,424 INFO L87 Difference]: Start difference. First operand 57 states and 62 transitions. Second operand has 19 states, 19 states have (on average 1.736842105263158) internal successors, (33), 17 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 07:41:00,184 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.22s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:41:12,481 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.81s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 07:41:21,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:41:21,229 INFO L93 Difference]: Finished difference Result 87 states and 94 transitions. [2022-04-08 07:41:21,229 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-08 07:41:21,229 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.736842105263158) internal successors, (33), 17 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Word has length 48 [2022-04-08 07:41:21,229 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:41:21,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.736842105263158) internal successors, (33), 17 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 07:41:21,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 60 transitions. [2022-04-08 07:41:21,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.736842105263158) internal successors, (33), 17 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 07:41:21,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 60 transitions. [2022-04-08 07:41:21,231 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 60 transitions. [2022-04-08 07:41:25,188 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 07:41:25,190 INFO L225 Difference]: With dead ends: 87 [2022-04-08 07:41:25,190 INFO L226 Difference]: Without dead ends: 85 [2022-04-08 07:41:25,190 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 42 SyntacticMatches, 3 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 304 ImplicationChecksByTransitivity, 13.5s TimeCoverageRelationStatistics Valid=186, Invalid=803, Unknown=3, NotChecked=0, Total=992 [2022-04-08 07:41:25,190 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 33 mSDsluCounter, 176 mSDsCounter, 0 mSdLazyCounter, 215 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 198 SdHoareTripleChecker+Invalid, 261 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 215 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 31 IncrementalHoareTripleChecker+Unchecked, 6.1s IncrementalHoareTripleChecker+Time [2022-04-08 07:41:25,191 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 198 Invalid, 261 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 215 Invalid, 0 Unknown, 31 Unchecked, 6.1s Time] [2022-04-08 07:41:25,191 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-04-08 07:41:25,383 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 85. [2022-04-08 07:41:25,383 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:41:25,383 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 85 states, 64 states have (on average 1.125) internal successors, (72), 66 states have internal predecessors, (72), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 07:41:25,386 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 85 states, 64 states have (on average 1.125) internal successors, (72), 66 states have internal predecessors, (72), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 07:41:25,386 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 85 states, 64 states have (on average 1.125) internal successors, (72), 66 states have internal predecessors, (72), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 07:41:25,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:41:25,392 INFO L93 Difference]: Finished difference Result 85 states and 92 transitions. [2022-04-08 07:41:25,392 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 92 transitions. [2022-04-08 07:41:25,392 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:41:25,392 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:41:25,392 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 64 states have (on average 1.125) internal successors, (72), 66 states have internal predecessors, (72), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 85 states. [2022-04-08 07:41:25,393 INFO L87 Difference]: Start difference. First operand has 85 states, 64 states have (on average 1.125) internal successors, (72), 66 states have internal predecessors, (72), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 85 states. [2022-04-08 07:41:25,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:41:25,394 INFO L93 Difference]: Finished difference Result 85 states and 92 transitions. [2022-04-08 07:41:25,394 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 92 transitions. [2022-04-08 07:41:25,394 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:41:25,395 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:41:25,395 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:41:25,395 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:41:25,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 64 states have (on average 1.125) internal successors, (72), 66 states have internal predecessors, (72), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 07:41:25,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 92 transitions. [2022-04-08 07:41:25,396 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 92 transitions. Word has length 48 [2022-04-08 07:41:25,396 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:41:25,396 INFO L478 AbstractCegarLoop]: Abstraction has 85 states and 92 transitions. [2022-04-08 07:41:25,396 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 1.736842105263158) internal successors, (33), 17 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 07:41:25,397 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 85 states and 92 transitions. [2022-04-08 07:41:45,943 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 84 inductive. 0 not inductive. 8 times theorem prover too weak to decide inductivity. [2022-04-08 07:41:45,944 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 92 transitions. [2022-04-08 07:41:45,944 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-08 07:41:45,944 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:41:45,944 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 07:41:45,960 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-08 07:41:46,146 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:41:46,147 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:41:46,147 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:41:46,147 INFO L85 PathProgramCache]: Analyzing trace with hash -446937807, now seen corresponding path program 5 times [2022-04-08 07:41:46,147 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:41:46,147 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1540750025] [2022-04-08 07:41:54,231 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 07:41:54,231 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-08 07:41:54,231 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 07:41:54,231 INFO L85 PathProgramCache]: Analyzing trace with hash -446937807, now seen corresponding path program 6 times [2022-04-08 07:41:54,231 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:41:54,231 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1425703499] [2022-04-08 07:41:54,231 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:41:54,232 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:41:54,240 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:41:54,240 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [908605036] [2022-04-08 07:41:54,240 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 07:41:54,240 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:41:54,240 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:41:54,241 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 07:41:54,241 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-08 07:41:54,286 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 3 check-sat command(s) [2022-04-08 07:41:54,286 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:41:54,286 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-08 07:41:54,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:41:54,315 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:42:13,982 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful