/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/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 13:58:01,193 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 13:58:01,200 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 13:58:01,240 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 13:58:01,240 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 13:58:01,241 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 13:58:01,243 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 13:58:01,247 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 13:58:01,248 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 13:58:01,251 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 13:58:01,251 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 13:58:01,253 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 13:58:01,253 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 13:58:01,254 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 13:58:01,255 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 13:58:01,258 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 13:58:01,258 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 13:58:01,259 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 13:58:01,260 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 13:58:01,264 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 13:58:01,265 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 13:58:01,266 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 13:58:01,267 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 13:58:01,267 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 13:58:01,268 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 13:58:01,273 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 13:58:01,273 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 13:58:01,274 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 13:58:01,274 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 13:58:01,275 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 13:58:01,275 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 13:58:01,276 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 13:58:01,277 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 13:58:01,277 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 13:58:01,278 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 13:58:01,278 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 13:58:01,278 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 13:58:01,279 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 13:58:01,279 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 13:58:01,279 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 13:58:01,280 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 13:58:01,281 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 13:58:01,281 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-28 13:58:01,290 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 13:58:01,290 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 13:58:01,291 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 13:58:01,291 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 13:58:01,291 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 13:58:01,291 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 13:58:01,291 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 13:58:01,292 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 13:58:01,292 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 13:58:01,292 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 13:58:01,292 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 13:58:01,292 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 13:58:01,293 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 13:58:01,293 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 13:58:01,293 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 13:58:01,293 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 13:58:01,293 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 13:58:01,293 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 13:58:01,293 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 13:58:01,293 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 13:58:01,293 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 13:58:01,294 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-28 13:58:01,294 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-28 13:58:01,465 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 13:58:01,481 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 13:58:01,482 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 13:58:01,483 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 13:58:01,484 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 13:58:01,484 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound10.c [2022-04-28 13:58:01,524 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/65725ced5/0c7b263764b541ac84292191bc6e41f3/FLAG0cdcf309d [2022-04-28 13:58:01,882 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 13:58:01,882 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound10.c [2022-04-28 13:58:01,886 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/65725ced5/0c7b263764b541ac84292191bc6e41f3/FLAG0cdcf309d [2022-04-28 13:58:01,895 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/65725ced5/0c7b263764b541ac84292191bc6e41f3 [2022-04-28 13:58:01,896 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 13:58:01,897 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 13:58:01,898 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 13:58:01,898 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 13:58:01,900 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 13:58:01,901 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 01:58:01" (1/1) ... [2022-04-28 13:58:01,902 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@87811a1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:01, skipping insertion in model container [2022-04-28 13:58:01,902 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 01:58:01" (1/1) ... [2022-04-28 13:58:01,906 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 13:58:01,914 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 13:58:02,018 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/prod4br-ll_unwindbound10.c[524,537] [2022-04-28 13:58:02,032 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 13:58:02,037 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 13:58:02,045 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/prod4br-ll_unwindbound10.c[524,537] [2022-04-28 13:58:02,054 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 13:58:02,065 INFO L208 MainTranslator]: Completed translation [2022-04-28 13:58:02,065 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:02 WrapperNode [2022-04-28 13:58:02,065 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 13:58:02,066 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 13:58:02,066 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 13:58:02,066 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 13:58:02,073 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:02" (1/1) ... [2022-04-28 13:58:02,073 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:02" (1/1) ... [2022-04-28 13:58:02,077 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:02" (1/1) ... [2022-04-28 13:58:02,077 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:02" (1/1) ... [2022-04-28 13:58:02,082 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:02" (1/1) ... [2022-04-28 13:58:02,084 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:02" (1/1) ... [2022-04-28 13:58:02,085 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:02" (1/1) ... [2022-04-28 13:58:02,086 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 13:58:02,087 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 13:58:02,087 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 13:58:02,087 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 13:58:02,087 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:02" (1/1) ... [2022-04-28 13:58:02,100 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 13:58:02,110 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 13:58:02,119 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-28 13:58:02,124 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-28 13:58:02,145 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 13:58:02,145 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 13:58:02,145 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 13:58:02,145 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 13:58:02,145 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 13:58:02,145 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 13:58:02,145 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 13:58:02,145 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 13:58:02,146 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 13:58:02,187 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 13:58:02,188 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 13:58:02,343 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 13:58:02,353 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 13:58:02,353 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 13:58:02,354 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:58:02 BoogieIcfgContainer [2022-04-28 13:58:02,354 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 13:58:02,358 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 13:58:02,358 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 13:58:02,361 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 13:58:02,361 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 01:58:01" (1/3) ... [2022-04-28 13:58:02,362 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3706d0ab and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 01:58:02, skipping insertion in model container [2022-04-28 13:58:02,362 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:58:02" (2/3) ... [2022-04-28 13:58:02,362 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3706d0ab and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 01:58:02, skipping insertion in model container [2022-04-28 13:58:02,362 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:58:02" (3/3) ... [2022-04-28 13:58:02,363 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound10.c [2022-04-28 13:58:02,371 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 13:58:02,372 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 13:58:02,402 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 13:58:02,406 INFO L357 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@4448a6bd, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@5117d481 [2022-04-28 13:58:02,407 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 13:58:02,412 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 13:58:02,416 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-28 13:58:02,416 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 13:58:02,417 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 13:58:02,417 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 13:58:02,422 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 13:58:02,423 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 1 times [2022-04-28 13:58:02,429 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 13:58:02,430 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1266004602] [2022-04-28 13:58:02,439 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 13:58:02,439 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 2 times [2022-04-28 13:58:02,441 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 13:58:02,441 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2103562780] [2022-04-28 13:58:02,441 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 13:58:02,442 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 13:58:02,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 13:58:02,591 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 13:58:02,594 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 13:58:02,620 INFO L290 TraceCheckUtils]: 0: Hoare triple {44#(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; {35#true} is VALID [2022-04-28 13:58:02,620 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-28 13:58:02,620 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-28 13:58:02,621 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 13:58:02,622 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 13:58:02,626 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 13:58:02,627 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 13:58:02,627 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 13:58:02,627 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-28 13:58:02,628 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} call ULTIMATE.init(); {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 13:58:02,628 INFO L290 TraceCheckUtils]: 1: Hoare triple {44#(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; {35#true} is VALID [2022-04-28 13:58:02,629 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-28 13:58:02,629 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-28 13:58:02,629 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} call #t~ret7 := main(); {35#true} is VALID [2022-04-28 13:58:02,629 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {35#true} is VALID [2022-04-28 13:58:02,629 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {35#true} is VALID [2022-04-28 13:58:02,629 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 13:58:02,630 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 13:58:02,630 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 13:58:02,630 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-28 13:58:02,630 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {36#false} is VALID [2022-04-28 13:58:02,631 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} assume !true; {36#false} is VALID [2022-04-28 13:58:02,631 INFO L272 TraceCheckUtils]: 13: Hoare triple {36#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {36#false} is VALID [2022-04-28 13:58:02,631 INFO L290 TraceCheckUtils]: 14: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-04-28 13:58:02,631 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-04-28 13:58:02,631 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-04-28 13:58:02,632 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-28 13:58:02,632 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 13:58:02,632 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2103562780] [2022-04-28 13:58:02,633 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2103562780] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 13:58:02,633 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 13:58:02,633 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 13:58:02,634 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 13:58:02,635 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1266004602] [2022-04-28 13:58:02,635 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1266004602] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 13:58:02,635 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 13:58:02,635 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 13:58:02,635 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1774805442] [2022-04-28 13:58:02,635 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 13:58:02,639 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-28 13:58:02,640 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 13:58:02,641 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-28 13:58:02,661 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-28 13:58:02,661 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 13:58:02,662 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 13:58:02,674 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 13:58:02,675 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 13:58:02,679 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) 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-28 13:58:02,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:58:02,866 INFO L93 Difference]: Finished difference Result 56 states and 77 transitions. [2022-04-28 13:58:02,867 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 13:58:02,867 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-28 13:58:02,868 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 13:58:02,869 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-28 13:58:02,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 13:58:02,879 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-28 13:58:02,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 13:58:02,889 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-28 13:58:02,974 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 13:58:02,983 INFO L225 Difference]: With dead ends: 56 [2022-04-28 13:58:02,983 INFO L226 Difference]: Without dead ends: 28 [2022-04-28 13:58:02,985 INFO L412 NwaCegarLoop]: 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-28 13:58:02,991 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 13:58:02,992 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 40 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 13:58:03,013 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-28 13:58:03,033 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-04-28 13:58:03,034 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 13:58:03,034 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 13:58:03,035 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 13:58:03,035 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 13:58:03,044 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:58:03,045 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-28 13:58:03,045 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-28 13:58:03,045 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 13:58:03,045 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 13:58:03,045 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-28 13:58:03,046 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-28 13:58:03,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:58:03,048 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-28 13:58:03,048 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-28 13:58:03,048 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 13:58:03,048 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 13:58:03,049 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 13:58:03,049 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 13:58:03,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 13:58:03,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-28 13:58:03,051 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 17 [2022-04-28 13:58:03,052 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 13:58:03,052 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-28 13:58:03,052 INFO L496 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-28 13:58:03,052 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 33 transitions. [2022-04-28 13:58:03,094 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 13:58:03,094 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-28 13:58:03,095 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-28 13:58:03,095 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 13:58:03,095 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 13:58:03,096 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 13:58:03,096 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 13:58:03,097 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 13:58:03,097 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 1 times [2022-04-28 13:58:03,097 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 13:58:03,097 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2141527754] [2022-04-28 13:58:03,098 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 13:58:03,098 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 2 times [2022-04-28 13:58:03,099 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 13:58:03,101 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [437953593] [2022-04-28 13:58:03,102 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 13:58:03,102 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 13:58:03,142 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 13:58:03,143 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [409415645] [2022-04-28 13:58:03,143 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 13:58:03,143 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 13:58:03,143 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 13:58:03,148 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 13:58:03,149 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-28 13:58:03,202 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 13:58:03,202 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 13:58:03,216 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 13:58:03,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 13:58:03,225 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 13:58:03,393 INFO L272 TraceCheckUtils]: 0: Hoare triple {269#true} call ULTIMATE.init(); {269#true} is VALID [2022-04-28 13:58:03,393 INFO L290 TraceCheckUtils]: 1: Hoare triple {269#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; {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,394 INFO L290 TraceCheckUtils]: 2: Hoare triple {277#(<= ~counter~0 0)} assume true; {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,394 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {277#(<= ~counter~0 0)} {269#true} #77#return; {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,395 INFO L272 TraceCheckUtils]: 4: Hoare triple {277#(<= ~counter~0 0)} call #t~ret7 := main(); {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,395 INFO L290 TraceCheckUtils]: 5: Hoare triple {277#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,396 INFO L272 TraceCheckUtils]: 6: Hoare triple {277#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,396 INFO L290 TraceCheckUtils]: 7: Hoare triple {277#(<= ~counter~0 0)} ~cond := #in~cond; {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,397 INFO L290 TraceCheckUtils]: 8: Hoare triple {277#(<= ~counter~0 0)} assume !(0 == ~cond); {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,397 INFO L290 TraceCheckUtils]: 9: Hoare triple {277#(<= ~counter~0 0)} assume true; {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,397 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {277#(<= ~counter~0 0)} {277#(<= ~counter~0 0)} #69#return; {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,398 INFO L290 TraceCheckUtils]: 11: Hoare triple {277#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {277#(<= ~counter~0 0)} is VALID [2022-04-28 13:58:03,398 INFO L290 TraceCheckUtils]: 12: Hoare triple {277#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {311#(<= |main_#t~post6| 0)} is VALID [2022-04-28 13:58:03,399 INFO L290 TraceCheckUtils]: 13: Hoare triple {311#(<= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {270#false} is VALID [2022-04-28 13:58:03,399 INFO L272 TraceCheckUtils]: 14: Hoare triple {270#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {270#false} is VALID [2022-04-28 13:58:03,399 INFO L290 TraceCheckUtils]: 15: Hoare triple {270#false} ~cond := #in~cond; {270#false} is VALID [2022-04-28 13:58:03,399 INFO L290 TraceCheckUtils]: 16: Hoare triple {270#false} assume 0 == ~cond; {270#false} is VALID [2022-04-28 13:58:03,400 INFO L290 TraceCheckUtils]: 17: Hoare triple {270#false} assume !false; {270#false} is VALID [2022-04-28 13:58:03,400 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-28 13:58:03,400 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 13:58:03,400 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 13:58:03,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [437953593] [2022-04-28 13:58:03,401 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 13:58:03,401 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [409415645] [2022-04-28 13:58:03,401 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [409415645] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 13:58:03,401 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 13:58:03,401 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 13:58:03,402 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 13:58:03,402 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2141527754] [2022-04-28 13:58:03,402 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2141527754] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 13:58:03,402 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 13:58:03,402 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 13:58:03,402 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [671217043] [2022-04-28 13:58:03,403 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 13:58:03,403 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-28 13:58:03,403 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 13:58:03,403 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-28 13:58:03,423 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-28 13:58:03,423 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 13:58:03,423 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 13:58:03,424 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 13:58:03,425 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 13:58:03,426 INFO L87 Difference]: Start difference. First operand 27 states and 33 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-28 13:58:03,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:58:03,496 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-28 13:58:03,496 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 13:58:03,496 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-28 13:58:03,497 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 13:58:03,498 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-28 13:58:03,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-28 13:58:03,500 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-28 13:58:03,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-28 13:58:03,501 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-04-28 13:58:03,531 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 13:58:03,532 INFO L225 Difference]: With dead ends: 37 [2022-04-28 13:58:03,532 INFO L226 Difference]: Without dead ends: 29 [2022-04-28 13:58:03,533 INFO L412 NwaCegarLoop]: 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-28 13:58:03,534 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 0 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 81 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-28 13:58:03,534 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 81 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 13:58:03,535 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-28 13:58:03,552 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-28 13:58:03,552 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 13:58:03,553 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 13:58:03,554 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 13:58:03,555 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 13:58:03,558 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:58:03,558 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-28 13:58:03,558 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 13:58:03,559 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 13:58:03,559 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 13:58:03,561 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-28 13:58:03,561 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-28 13:58:03,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:58:03,564 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-28 13:58:03,564 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 13:58:03,565 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 13:58:03,565 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 13:58:03,565 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 13:58:03,565 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 13:58:03,566 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 13:58:03,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2022-04-28 13:58:03,571 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 35 transitions. Word has length 18 [2022-04-28 13:58:03,571 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 13:58:03,571 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 35 transitions. [2022-04-28 13:58:03,572 INFO L496 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-28 13:58:03,572 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 35 transitions. [2022-04-28 13:58:03,600 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-28 13:58:03,600 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 13:58:03,600 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-28 13:58:03,601 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 13:58:03,601 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 13:58:03,621 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 13:58:03,817 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 13:58:03,817 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 13:58:03,818 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 13:58:03,818 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 1 times [2022-04-28 13:58:03,818 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 13:58:03,818 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1565360018] [2022-04-28 13:58:03,818 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 13:58:03,818 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 2 times [2022-04-28 13:58:03,818 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 13:58:03,819 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [768747051] [2022-04-28 13:58:03,819 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 13:58:03,819 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 13:58:03,833 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 13:58:03,833 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1038885658] [2022-04-28 13:58:03,833 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 13:58:03,833 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 13:58:03,834 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 13:58:03,838 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 13:58:03,839 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-28 13:58:03,871 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 13:58:03,871 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 13:58:03,872 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 13:58:03,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 13:58:03,880 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 13:58:04,027 INFO L272 TraceCheckUtils]: 0: Hoare triple {516#true} call ULTIMATE.init(); {516#true} is VALID [2022-04-28 13:58:04,028 INFO L290 TraceCheckUtils]: 1: Hoare triple {516#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; {516#true} is VALID [2022-04-28 13:58:04,029 INFO L290 TraceCheckUtils]: 2: Hoare triple {516#true} assume true; {516#true} is VALID [2022-04-28 13:58:04,029 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {516#true} {516#true} #77#return; {516#true} is VALID [2022-04-28 13:58:04,029 INFO L272 TraceCheckUtils]: 4: Hoare triple {516#true} call #t~ret7 := main(); {516#true} is VALID [2022-04-28 13:58:04,029 INFO L290 TraceCheckUtils]: 5: Hoare triple {516#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {516#true} is VALID [2022-04-28 13:58:04,029 INFO L272 TraceCheckUtils]: 6: Hoare triple {516#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {516#true} is VALID [2022-04-28 13:58:04,035 INFO L290 TraceCheckUtils]: 7: Hoare triple {516#true} ~cond := #in~cond; {516#true} is VALID [2022-04-28 13:58:04,036 INFO L290 TraceCheckUtils]: 8: Hoare triple {516#true} assume !(0 == ~cond); {516#true} is VALID [2022-04-28 13:58:04,037 INFO L290 TraceCheckUtils]: 9: Hoare triple {516#true} assume true; {516#true} is VALID [2022-04-28 13:58:04,037 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {516#true} {516#true} #69#return; {516#true} is VALID [2022-04-28 13:58:04,038 INFO L290 TraceCheckUtils]: 11: Hoare triple {516#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 13:58:04,039 INFO L290 TraceCheckUtils]: 12: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 13:58:04,040 INFO L290 TraceCheckUtils]: 13: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 13:58:04,041 INFO L272 TraceCheckUtils]: 14: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {564#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 13:58:04,042 INFO L290 TraceCheckUtils]: 15: Hoare triple {564#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {568#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 13:58:04,042 INFO L290 TraceCheckUtils]: 16: Hoare triple {568#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {517#false} is VALID [2022-04-28 13:58:04,043 INFO L290 TraceCheckUtils]: 17: Hoare triple {517#false} assume !false; {517#false} is VALID [2022-04-28 13:58:04,043 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-28 13:58:04,043 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 13:58:04,044 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 13:58:04,044 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [768747051] [2022-04-28 13:58:04,044 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 13:58:04,044 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1038885658] [2022-04-28 13:58:04,044 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1038885658] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 13:58:04,044 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 13:58:04,044 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 13:58:04,044 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 13:58:04,044 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1565360018] [2022-04-28 13:58:04,044 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1565360018] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 13:58:04,044 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 13:58:04,044 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 13:58:04,045 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1472716911] [2022-04-28 13:58:04,045 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 13:58:04,046 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-28 13:58:04,046 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 13:58:04,046 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-28 13:58:04,063 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-28 13:58:04,063 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 13:58:04,063 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 13:58:04,064 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 13:58:04,064 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 13:58:04,064 INFO L87 Difference]: Start difference. First operand 29 states and 35 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-28 13:58:04,219 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:58:04,219 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-04-28 13:58:04,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 13:58:04,219 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-28 13:58:04,219 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 13:58:04,220 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-28 13:58:04,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 13:58:04,221 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-28 13:58:04,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 13:58:04,222 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-28 13:58:04,266 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 13:58:04,267 INFO L225 Difference]: With dead ends: 42 [2022-04-28 13:58:04,268 INFO L226 Difference]: Without dead ends: 40 [2022-04-28 13:58:04,268 INFO L412 NwaCegarLoop]: 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-28 13:58:04,268 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 9 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 13:58:04,269 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 83 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 13:58:04,269 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-28 13:58:04,281 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-28 13:58:04,281 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 13:58:04,281 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 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-28 13:58:04,281 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 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-28 13:58:04,282 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 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-28 13:58:04,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:58:04,283 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-28 13:58:04,283 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-28 13:58:04,284 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 13:58:04,284 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 13:58:04,284 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-28 13:58:04,284 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-28 13:58:04,286 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:58:04,286 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-28 13:58:04,286 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-28 13:58:04,286 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 13:58:04,286 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 13:58:04,286 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 13:58:04,286 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 13:58:04,287 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 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-28 13:58:04,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-28 13:58:04,296 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 18 [2022-04-28 13:58:04,296 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 13:58:04,296 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-28 13:58:04,296 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (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-28 13:58:04,296 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 40 transitions. [2022-04-28 13:58:04,333 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 13:58:04,333 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-28 13:58:04,338 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 13:58:04,338 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 13:58:04,338 INFO L195 NwaCegarLoop]: 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-28 13:58:04,354 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 13:58:04,539 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-28 13:58:04,540 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 13:58:04,540 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 13:58:04,540 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 1 times [2022-04-28 13:58:04,540 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 13:58:04,541 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1670559892] [2022-04-28 13:58:04,541 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 13:58:04,541 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 2 times [2022-04-28 13:58:04,541 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 13:58:04,541 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [455391384] [2022-04-28 13:58:04,541 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 13:58:04,541 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 13:58:04,554 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 13:58:04,554 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1163269057] [2022-04-28 13:58:04,554 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 13:58:04,554 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 13:58:04,555 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 13:58:04,555 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 13:58:04,556 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 13:58:04,599 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 13:58:04,599 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 13:58:04,600 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 13:58:04,609 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 13:58:04,610 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 13:58:15,047 INFO L272 TraceCheckUtils]: 0: Hoare triple {808#true} call ULTIMATE.init(); {808#true} is VALID [2022-04-28 13:58:15,047 INFO L290 TraceCheckUtils]: 1: Hoare triple {808#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; {808#true} is VALID [2022-04-28 13:58:15,048 INFO L290 TraceCheckUtils]: 2: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-28 13:58:15,048 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {808#true} {808#true} #77#return; {808#true} is VALID [2022-04-28 13:58:15,048 INFO L272 TraceCheckUtils]: 4: Hoare triple {808#true} call #t~ret7 := main(); {808#true} is VALID [2022-04-28 13:58:15,048 INFO L290 TraceCheckUtils]: 5: Hoare triple {808#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {808#true} is VALID [2022-04-28 13:58:15,048 INFO L272 TraceCheckUtils]: 6: Hoare triple {808#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {808#true} is VALID [2022-04-28 13:58:15,048 INFO L290 TraceCheckUtils]: 7: Hoare triple {808#true} ~cond := #in~cond; {834#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 13:58:15,049 INFO L290 TraceCheckUtils]: 8: Hoare triple {834#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {838#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 13:58:15,049 INFO L290 TraceCheckUtils]: 9: Hoare triple {838#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {838#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 13:58:15,051 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {838#(not (= |assume_abort_if_not_#in~cond| 0))} {808#true} #69#return; {845#(<= 1 main_~y~0)} is VALID [2022-04-28 13:58:15,051 INFO L290 TraceCheckUtils]: 11: Hoare triple {845#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 13:58:15,052 INFO L290 TraceCheckUtils]: 12: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 13:58:15,052 INFO L290 TraceCheckUtils]: 13: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 13:58:15,052 INFO L272 TraceCheckUtils]: 14: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {808#true} is VALID [2022-04-28 13:58:15,053 INFO L290 TraceCheckUtils]: 15: Hoare triple {808#true} ~cond := #in~cond; {862#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 13:58:15,053 INFO L290 TraceCheckUtils]: 16: Hoare triple {862#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 13:58:15,053 INFO L290 TraceCheckUtils]: 17: Hoare triple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 13:58:17,055 WARN L284 TraceCheckUtils]: 18: Hoare quadruple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #71#return; {873#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is UNKNOWN [2022-04-28 13:58:17,056 INFO L290 TraceCheckUtils]: 19: Hoare triple {873#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !(0 != ~a~0 && 0 != ~b~0); {877#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 13:58:17,057 INFO L272 TraceCheckUtils]: 20: Hoare triple {877#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {881#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 13:58:17,058 INFO L290 TraceCheckUtils]: 21: Hoare triple {881#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {885#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 13:58:17,058 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {809#false} is VALID [2022-04-28 13:58:17,058 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#false} assume !false; {809#false} is VALID [2022-04-28 13:58:17,058 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 13:58:17,058 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 13:58:53,899 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#false} assume !false; {809#false} is VALID [2022-04-28 13:58:53,899 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {809#false} is VALID [2022-04-28 13:58:53,900 INFO L290 TraceCheckUtils]: 21: Hoare triple {881#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {885#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 13:58:53,901 INFO L272 TraceCheckUtils]: 20: Hoare triple {901#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {881#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 13:58:53,901 INFO L290 TraceCheckUtils]: 19: Hoare triple {905#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {901#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-28 13:58:53,902 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} {808#true} #71#return; {905#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-28 13:58:53,903 INFO L290 TraceCheckUtils]: 17: Hoare triple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 13:58:53,903 INFO L290 TraceCheckUtils]: 16: Hoare triple {918#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 13:58:53,903 INFO L290 TraceCheckUtils]: 15: Hoare triple {808#true} ~cond := #in~cond; {918#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 13:58:53,904 INFO L272 TraceCheckUtils]: 14: Hoare triple {808#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {808#true} is VALID [2022-04-28 13:58:53,904 INFO L290 TraceCheckUtils]: 13: Hoare triple {808#true} assume !!(#t~post6 < 10);havoc #t~post6; {808#true} is VALID [2022-04-28 13:58:53,904 INFO L290 TraceCheckUtils]: 12: Hoare triple {808#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {808#true} is VALID [2022-04-28 13:58:53,904 INFO L290 TraceCheckUtils]: 11: Hoare triple {808#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {808#true} is VALID [2022-04-28 13:58:53,904 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {808#true} {808#true} #69#return; {808#true} is VALID [2022-04-28 13:58:53,904 INFO L290 TraceCheckUtils]: 9: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-28 13:58:53,904 INFO L290 TraceCheckUtils]: 8: Hoare triple {808#true} assume !(0 == ~cond); {808#true} is VALID [2022-04-28 13:58:53,904 INFO L290 TraceCheckUtils]: 7: Hoare triple {808#true} ~cond := #in~cond; {808#true} is VALID [2022-04-28 13:58:53,904 INFO L272 TraceCheckUtils]: 6: Hoare triple {808#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {808#true} is VALID [2022-04-28 13:58:53,905 INFO L290 TraceCheckUtils]: 5: Hoare triple {808#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {808#true} is VALID [2022-04-28 13:58:53,905 INFO L272 TraceCheckUtils]: 4: Hoare triple {808#true} call #t~ret7 := main(); {808#true} is VALID [2022-04-28 13:58:53,905 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {808#true} {808#true} #77#return; {808#true} is VALID [2022-04-28 13:58:53,905 INFO L290 TraceCheckUtils]: 2: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-28 13:58:53,905 INFO L290 TraceCheckUtils]: 1: Hoare triple {808#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; {808#true} is VALID [2022-04-28 13:58:53,905 INFO L272 TraceCheckUtils]: 0: Hoare triple {808#true} call ULTIMATE.init(); {808#true} is VALID [2022-04-28 13:58:53,905 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 13:58:53,905 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 13:58:53,906 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [455391384] [2022-04-28 13:58:53,906 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 13:58:53,906 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1163269057] [2022-04-28 13:58:53,906 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1163269057] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 13:58:53,906 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 13:58:53,906 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-28 13:58:53,906 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 13:58:53,906 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1670559892] [2022-04-28 13:58:53,906 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1670559892] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 13:58:53,906 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 13:58:53,906 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 13:58:53,906 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1462800499] [2022-04-28 13:58:53,906 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 13:58:53,907 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 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 24 [2022-04-28 13:58:53,907 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 13:58:53,907 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 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-28 13:58:55,926 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 23 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 13:58:55,926 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 13:58:55,926 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 13:58:55,926 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 13:58:55,927 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-28 13:58:55,927 INFO L87 Difference]: Start difference. First operand 34 states and 40 transitions. Second operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 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-28 13:58:58,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:58:58,024 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-28 13:58:58,024 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 13:58:58,024 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 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 24 [2022-04-28 13:58:58,024 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 13:58:58,025 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 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-28 13:58:58,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-28 13:58:58,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 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-28 13:58:58,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-28 13:58:58,028 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 60 transitions. [2022-04-28 13:59:00,074 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 59 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 13:59:00,076 INFO L225 Difference]: With dead ends: 50 [2022-04-28 13:59:00,076 INFO L226 Difference]: Without dead ends: 48 [2022-04-28 13:59:00,076 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 33 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=64, Invalid=278, Unknown=0, NotChecked=0, Total=342 [2022-04-28 13:59:00,077 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 36 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 204 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 221 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 204 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-28 13:59:00,077 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [39 Valid, 130 Invalid, 221 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 204 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-28 13:59:00,077 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-28 13:59:00,108 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 45. [2022-04-28 13:59:00,108 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 13:59:00,108 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 13:59:00,109 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 13:59:00,109 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 13:59:00,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:59:00,114 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-28 13:59:00,114 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-28 13:59:00,115 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 13:59:00,115 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 13:59:00,116 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-28 13:59:00,116 INFO L87 Difference]: Start difference. First operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-28 13:59:00,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:59:00,122 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-28 13:59:00,122 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-28 13:59:00,122 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 13:59:00,122 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 13:59:00,123 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 13:59:00,123 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 13:59:00,123 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 13:59:00,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 56 transitions. [2022-04-28 13:59:00,124 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 56 transitions. Word has length 24 [2022-04-28 13:59:00,124 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 13:59:00,125 INFO L495 AbstractCegarLoop]: Abstraction has 45 states and 56 transitions. [2022-04-28 13:59:00,125 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 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-28 13:59:00,128 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 45 states and 56 transitions. [2022-04-28 13:59:02,178 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 55 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 13:59:02,179 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 56 transitions. [2022-04-28 13:59:02,179 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-28 13:59:02,179 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 13:59:02,180 INFO L195 NwaCegarLoop]: 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] [2022-04-28 13:59:02,196 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-28 13:59:02,380 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 13:59:02,380 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 13:59:02,381 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 13:59:02,381 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 1 times [2022-04-28 13:59:02,381 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 13:59:02,381 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [949980653] [2022-04-28 13:59:08,464 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 13:59:08,464 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 13:59:08,464 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 2 times [2022-04-28 13:59:08,464 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 13:59:08,464 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2084115885] [2022-04-28 13:59:08,464 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 13:59:08,464 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 13:59:08,485 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 13:59:08,485 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1768982235] [2022-04-28 13:59:08,485 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 13:59:08,485 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 13:59:08,485 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 13:59:08,496 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 13:59:08,497 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 13:59:08,536 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 13:59:08,537 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 13:59:08,537 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 13:59:08,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 13:59:08,556 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 13:59:08,720 INFO L272 TraceCheckUtils]: 0: Hoare triple {1260#true} call ULTIMATE.init(); {1260#true} is VALID [2022-04-28 13:59:08,721 INFO L290 TraceCheckUtils]: 1: Hoare triple {1260#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; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,722 INFO L290 TraceCheckUtils]: 2: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,722 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1268#(<= ~counter~0 0)} {1260#true} #77#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,723 INFO L272 TraceCheckUtils]: 4: Hoare triple {1268#(<= ~counter~0 0)} call #t~ret7 := main(); {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,723 INFO L290 TraceCheckUtils]: 5: Hoare triple {1268#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,724 INFO L272 TraceCheckUtils]: 6: Hoare triple {1268#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,725 INFO L290 TraceCheckUtils]: 7: Hoare triple {1268#(<= ~counter~0 0)} ~cond := #in~cond; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,726 INFO L290 TraceCheckUtils]: 8: Hoare triple {1268#(<= ~counter~0 0)} assume !(0 == ~cond); {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,726 INFO L290 TraceCheckUtils]: 9: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,728 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1268#(<= ~counter~0 0)} {1268#(<= ~counter~0 0)} #69#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,728 INFO L290 TraceCheckUtils]: 11: Hoare triple {1268#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 13:59:08,736 INFO L290 TraceCheckUtils]: 12: Hoare triple {1268#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 13:59:08,736 INFO L290 TraceCheckUtils]: 13: Hoare triple {1302#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 13:59:08,737 INFO L272 TraceCheckUtils]: 14: Hoare triple {1302#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1302#(<= ~counter~0 1)} is VALID [2022-04-28 13:59:08,737 INFO L290 TraceCheckUtils]: 15: Hoare triple {1302#(<= ~counter~0 1)} ~cond := #in~cond; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 13:59:08,738 INFO L290 TraceCheckUtils]: 16: Hoare triple {1302#(<= ~counter~0 1)} assume !(0 == ~cond); {1302#(<= ~counter~0 1)} is VALID [2022-04-28 13:59:08,738 INFO L290 TraceCheckUtils]: 17: Hoare triple {1302#(<= ~counter~0 1)} assume true; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 13:59:08,739 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1302#(<= ~counter~0 1)} {1302#(<= ~counter~0 1)} #71#return; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 13:59:08,739 INFO L290 TraceCheckUtils]: 19: Hoare triple {1302#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {1302#(<= ~counter~0 1)} is VALID [2022-04-28 13:59:08,740 INFO L290 TraceCheckUtils]: 20: Hoare triple {1302#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 13:59:08,740 INFO L290 TraceCheckUtils]: 21: Hoare triple {1302#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1330#(<= |main_#t~post6| 1)} is VALID [2022-04-28 13:59:08,740 INFO L290 TraceCheckUtils]: 22: Hoare triple {1330#(<= |main_#t~post6| 1)} assume !(#t~post6 < 10);havoc #t~post6; {1261#false} is VALID [2022-04-28 13:59:08,741 INFO L272 TraceCheckUtils]: 23: Hoare triple {1261#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1261#false} is VALID [2022-04-28 13:59:08,741 INFO L290 TraceCheckUtils]: 24: Hoare triple {1261#false} ~cond := #in~cond; {1261#false} is VALID [2022-04-28 13:59:08,741 INFO L290 TraceCheckUtils]: 25: Hoare triple {1261#false} assume 0 == ~cond; {1261#false} is VALID [2022-04-28 13:59:08,741 INFO L290 TraceCheckUtils]: 26: Hoare triple {1261#false} assume !false; {1261#false} is VALID [2022-04-28 13:59:08,741 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-28 13:59:08,741 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 13:59:08,896 INFO L290 TraceCheckUtils]: 26: Hoare triple {1261#false} assume !false; {1261#false} is VALID [2022-04-28 13:59:08,896 INFO L290 TraceCheckUtils]: 25: Hoare triple {1261#false} assume 0 == ~cond; {1261#false} is VALID [2022-04-28 13:59:08,897 INFO L290 TraceCheckUtils]: 24: Hoare triple {1261#false} ~cond := #in~cond; {1261#false} is VALID [2022-04-28 13:59:08,897 INFO L272 TraceCheckUtils]: 23: Hoare triple {1261#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1261#false} is VALID [2022-04-28 13:59:08,897 INFO L290 TraceCheckUtils]: 22: Hoare triple {1358#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {1261#false} is VALID [2022-04-28 13:59:08,897 INFO L290 TraceCheckUtils]: 21: Hoare triple {1362#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1358#(< |main_#t~post6| 10)} is VALID [2022-04-28 13:59:08,898 INFO L290 TraceCheckUtils]: 20: Hoare triple {1362#(< ~counter~0 10)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1362#(< ~counter~0 10)} is VALID [2022-04-28 13:59:08,898 INFO L290 TraceCheckUtils]: 19: Hoare triple {1362#(< ~counter~0 10)} assume !!(0 != ~a~0 && 0 != ~b~0); {1362#(< ~counter~0 10)} is VALID [2022-04-28 13:59:08,899 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1260#true} {1362#(< ~counter~0 10)} #71#return; {1362#(< ~counter~0 10)} is VALID [2022-04-28 13:59:08,899 INFO L290 TraceCheckUtils]: 17: Hoare triple {1260#true} assume true; {1260#true} is VALID [2022-04-28 13:59:08,899 INFO L290 TraceCheckUtils]: 16: Hoare triple {1260#true} assume !(0 == ~cond); {1260#true} is VALID [2022-04-28 13:59:08,899 INFO L290 TraceCheckUtils]: 15: Hoare triple {1260#true} ~cond := #in~cond; {1260#true} is VALID [2022-04-28 13:59:08,899 INFO L272 TraceCheckUtils]: 14: Hoare triple {1362#(< ~counter~0 10)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1260#true} is VALID [2022-04-28 13:59:08,900 INFO L290 TraceCheckUtils]: 13: Hoare triple {1362#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {1362#(< ~counter~0 10)} is VALID [2022-04-28 13:59:08,900 INFO L290 TraceCheckUtils]: 12: Hoare triple {1390#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1362#(< ~counter~0 10)} is VALID [2022-04-28 13:59:08,901 INFO L290 TraceCheckUtils]: 11: Hoare triple {1390#(< ~counter~0 9)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1390#(< ~counter~0 9)} is VALID [2022-04-28 13:59:08,901 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1260#true} {1390#(< ~counter~0 9)} #69#return; {1390#(< ~counter~0 9)} is VALID [2022-04-28 13:59:08,901 INFO L290 TraceCheckUtils]: 9: Hoare triple {1260#true} assume true; {1260#true} is VALID [2022-04-28 13:59:08,901 INFO L290 TraceCheckUtils]: 8: Hoare triple {1260#true} assume !(0 == ~cond); {1260#true} is VALID [2022-04-28 13:59:08,901 INFO L290 TraceCheckUtils]: 7: Hoare triple {1260#true} ~cond := #in~cond; {1260#true} is VALID [2022-04-28 13:59:08,901 INFO L272 TraceCheckUtils]: 6: Hoare triple {1390#(< ~counter~0 9)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1260#true} is VALID [2022-04-28 13:59:08,902 INFO L290 TraceCheckUtils]: 5: Hoare triple {1390#(< ~counter~0 9)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1390#(< ~counter~0 9)} is VALID [2022-04-28 13:59:08,902 INFO L272 TraceCheckUtils]: 4: Hoare triple {1390#(< ~counter~0 9)} call #t~ret7 := main(); {1390#(< ~counter~0 9)} is VALID [2022-04-28 13:59:08,903 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1390#(< ~counter~0 9)} {1260#true} #77#return; {1390#(< ~counter~0 9)} is VALID [2022-04-28 13:59:08,903 INFO L290 TraceCheckUtils]: 2: Hoare triple {1390#(< ~counter~0 9)} assume true; {1390#(< ~counter~0 9)} is VALID [2022-04-28 13:59:08,904 INFO L290 TraceCheckUtils]: 1: Hoare triple {1260#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; {1390#(< ~counter~0 9)} is VALID [2022-04-28 13:59:08,904 INFO L272 TraceCheckUtils]: 0: Hoare triple {1260#true} call ULTIMATE.init(); {1260#true} is VALID [2022-04-28 13:59:08,905 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-28 13:59:08,905 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 13:59:08,905 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2084115885] [2022-04-28 13:59:08,905 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 13:59:08,905 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1768982235] [2022-04-28 13:59:08,905 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1768982235] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 13:59:08,905 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 13:59:08,905 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-28 13:59:08,905 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 13:59:08,905 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [949980653] [2022-04-28 13:59:08,905 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [949980653] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 13:59:08,905 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 13:59:08,905 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 13:59:08,906 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [379644176] [2022-04-28 13:59:08,906 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 13:59:08,906 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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 27 [2022-04-28 13:59:08,906 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 13:59:08,906 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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-28 13:59:08,927 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 13:59:08,927 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 13:59:08,927 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 13:59:08,927 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 13:59:08,927 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-28 13:59:08,928 INFO L87 Difference]: Start difference. First operand 45 states and 56 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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-28 13:59:09,095 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:59:09,095 INFO L93 Difference]: Finished difference Result 73 states and 89 transitions. [2022-04-28 13:59:09,095 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 13:59:09,095 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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 27 [2022-04-28 13:59:09,096 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 13:59:09,096 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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-28 13:59:09,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-28 13:59:09,100 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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-28 13:59:09,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-28 13:59:09,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 64 transitions. [2022-04-28 13:59:09,164 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 13:59:09,168 INFO L225 Difference]: With dead ends: 73 [2022-04-28 13:59:09,168 INFO L226 Difference]: Without dead ends: 63 [2022-04-28 13:59:09,168 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 47 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-28 13:59:09,171 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 17 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 13:59:09,171 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 108 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 13:59:09,173 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-28 13:59:09,243 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 61. [2022-04-28 13:59:09,243 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 13:59:09,244 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 13:59:09,244 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 13:59:09,244 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 13:59:09,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:59:09,249 INFO L93 Difference]: Finished difference Result 63 states and 77 transitions. [2022-04-28 13:59:09,249 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-28 13:59:09,249 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 13:59:09,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 13:59:09,250 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 63 states. [2022-04-28 13:59:09,251 INFO L87 Difference]: Start difference. First operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 63 states. [2022-04-28 13:59:09,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 13:59:09,254 INFO L93 Difference]: Finished difference Result 63 states and 77 transitions. [2022-04-28 13:59:09,254 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-28 13:59:09,254 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 13:59:09,254 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 13:59:09,254 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 13:59:09,254 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 13:59:09,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 13:59:09,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 76 transitions. [2022-04-28 13:59:09,257 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 76 transitions. Word has length 27 [2022-04-28 13:59:09,258 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 13:59:09,258 INFO L495 AbstractCegarLoop]: Abstraction has 61 states and 76 transitions. [2022-04-28 13:59:09,258 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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-28 13:59:09,258 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 61 states and 76 transitions. [2022-04-28 13:59:11,334 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 75 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 13:59:11,334 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 76 transitions. [2022-04-28 13:59:11,334 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-28 13:59:11,334 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 13:59:11,334 INFO L195 NwaCegarLoop]: 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] [2022-04-28 13:59:11,352 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-28 13:59:11,535 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 13:59:11,535 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 13:59:11,535 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 13:59:11,535 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 1 times [2022-04-28 13:59:11,536 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 13:59:11,536 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [664644275] [2022-04-28 13:59:15,622 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 13:59:15,622 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 13:59:15,622 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 2 times [2022-04-28 13:59:15,623 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 13:59:15,623 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [978747611] [2022-04-28 13:59:15,623 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 13:59:15,623 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 13:59:15,632 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 13:59:15,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1111997567] [2022-04-28 13:59:15,632 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 13:59:15,632 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 13:59:15,632 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 13:59:15,643 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 13:59:15,645 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 13:59:15,684 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 13:59:15,684 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 13:59:15,685 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-28 13:59:15,695 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 13:59:15,697 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 13:59:16,005 INFO L272 TraceCheckUtils]: 0: Hoare triple {1825#true} call ULTIMATE.init(); {1825#true} is VALID [2022-04-28 13:59:16,005 INFO L290 TraceCheckUtils]: 1: Hoare triple {1825#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; {1825#true} is VALID [2022-04-28 13:59:16,005 INFO L290 TraceCheckUtils]: 2: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 13:59:16,005 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1825#true} {1825#true} #77#return; {1825#true} is VALID [2022-04-28 13:59:16,005 INFO L272 TraceCheckUtils]: 4: Hoare triple {1825#true} call #t~ret7 := main(); {1825#true} is VALID [2022-04-28 13:59:16,006 INFO L290 TraceCheckUtils]: 5: Hoare triple {1825#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1825#true} is VALID [2022-04-28 13:59:16,006 INFO L272 TraceCheckUtils]: 6: Hoare triple {1825#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1825#true} is VALID [2022-04-28 13:59:16,006 INFO L290 TraceCheckUtils]: 7: Hoare triple {1825#true} ~cond := #in~cond; {1825#true} is VALID [2022-04-28 13:59:16,006 INFO L290 TraceCheckUtils]: 8: Hoare triple {1825#true} assume !(0 == ~cond); {1825#true} is VALID [2022-04-28 13:59:16,006 INFO L290 TraceCheckUtils]: 9: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 13:59:16,006 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1825#true} {1825#true} #69#return; {1825#true} is VALID [2022-04-28 13:59:16,007 INFO L290 TraceCheckUtils]: 11: Hoare triple {1825#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 13:59:16,007 INFO L290 TraceCheckUtils]: 12: Hoare triple {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 13:59:16,008 INFO L290 TraceCheckUtils]: 13: Hoare triple {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 13:59:16,008 INFO L272 TraceCheckUtils]: 14: Hoare triple {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1825#true} is VALID [2022-04-28 13:59:16,008 INFO L290 TraceCheckUtils]: 15: Hoare triple {1825#true} ~cond := #in~cond; {1876#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 13:59:16,008 INFO L290 TraceCheckUtils]: 16: Hoare triple {1876#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 13:59:16,009 INFO L290 TraceCheckUtils]: 17: Hoare triple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 13:59:16,009 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #71#return; {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 13:59:16,010 INFO L290 TraceCheckUtils]: 19: Hoare triple {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 13:59:16,011 INFO L290 TraceCheckUtils]: 20: Hoare triple {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 13:59:16,011 INFO L290 TraceCheckUtils]: 21: Hoare triple {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 13:59:16,012 INFO L290 TraceCheckUtils]: 22: Hoare triple {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} assume !!(#t~post6 < 10);havoc #t~post6; {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 13:59:16,015 INFO L272 TraceCheckUtils]: 23: Hoare triple {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 13:59:16,015 INFO L290 TraceCheckUtils]: 24: Hoare triple {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1908#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 13:59:16,016 INFO L290 TraceCheckUtils]: 25: Hoare triple {1908#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1826#false} is VALID [2022-04-28 13:59:16,016 INFO L290 TraceCheckUtils]: 26: Hoare triple {1826#false} assume !false; {1826#false} is VALID [2022-04-28 13:59:16,016 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-28 13:59:16,016 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:00:11,528 INFO L290 TraceCheckUtils]: 26: Hoare triple {1826#false} assume !false; {1826#false} is VALID [2022-04-28 14:00:11,529 INFO L290 TraceCheckUtils]: 25: Hoare triple {1908#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1826#false} is VALID [2022-04-28 14:00:11,529 INFO L290 TraceCheckUtils]: 24: Hoare triple {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1908#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:00:11,530 INFO L272 TraceCheckUtils]: 23: Hoare triple {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:00:11,530 INFO L290 TraceCheckUtils]: 22: Hoare triple {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:00:11,530 INFO L290 TraceCheckUtils]: 21: Hoare triple {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:00:11,539 INFO L290 TraceCheckUtils]: 20: Hoare triple {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:00:11,546 INFO L290 TraceCheckUtils]: 19: Hoare triple {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} assume !!(0 != ~a~0 && 0 != ~b~0); {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} is VALID [2022-04-28 14:00:11,550 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} {1825#true} #71#return; {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} is VALID [2022-04-28 14:00:11,550 INFO L290 TraceCheckUtils]: 17: Hoare triple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:00:11,551 INFO L290 TraceCheckUtils]: 16: Hoare triple {1950#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:00:11,551 INFO L290 TraceCheckUtils]: 15: Hoare triple {1825#true} ~cond := #in~cond; {1950#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 14:00:11,551 INFO L272 TraceCheckUtils]: 14: Hoare triple {1825#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1825#true} is VALID [2022-04-28 14:00:11,551 INFO L290 TraceCheckUtils]: 13: Hoare triple {1825#true} assume !!(#t~post6 < 10);havoc #t~post6; {1825#true} is VALID [2022-04-28 14:00:11,551 INFO L290 TraceCheckUtils]: 12: Hoare triple {1825#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L290 TraceCheckUtils]: 11: Hoare triple {1825#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1825#true} {1825#true} #69#return; {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L290 TraceCheckUtils]: 9: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L290 TraceCheckUtils]: 8: Hoare triple {1825#true} assume !(0 == ~cond); {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L290 TraceCheckUtils]: 7: Hoare triple {1825#true} ~cond := #in~cond; {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L272 TraceCheckUtils]: 6: Hoare triple {1825#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L290 TraceCheckUtils]: 5: Hoare triple {1825#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L272 TraceCheckUtils]: 4: Hoare triple {1825#true} call #t~ret7 := main(); {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1825#true} {1825#true} #77#return; {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L290 TraceCheckUtils]: 2: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L290 TraceCheckUtils]: 1: Hoare triple {1825#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; {1825#true} is VALID [2022-04-28 14:00:11,552 INFO L272 TraceCheckUtils]: 0: Hoare triple {1825#true} call ULTIMATE.init(); {1825#true} is VALID [2022-04-28 14:00:11,553 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-28 14:00:11,553 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:00:11,553 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [978747611] [2022-04-28 14:00:11,553 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:00:11,553 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1111997567] [2022-04-28 14:00:11,553 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1111997567] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:00:11,553 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:00:11,553 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-28 14:00:11,553 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:00:11,553 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [664644275] [2022-04-28 14:00:11,553 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [664644275] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:00:11,553 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:00:11,553 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 14:00:11,553 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [496800946] [2022-04-28 14:00:11,553 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:00:11,554 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-28 14:00:11,554 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:00:11,554 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:00:11,578 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:00:11,578 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 14:00:11,578 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:00:11,579 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 14:00:11,579 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=101, Unknown=0, NotChecked=0, Total=132 [2022-04-28 14:00:11,579 INFO L87 Difference]: Start difference. First operand 61 states and 76 transitions. Second operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:00:12,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:00:12,141 INFO L93 Difference]: Finished difference Result 76 states and 96 transitions. [2022-04-28 14:00:12,141 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 14:00:12,142 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-28 14:00:12,142 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:00:12,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:00:12,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-28 14:00:12,143 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:00:12,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-28 14:00:12,144 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 68 transitions. [2022-04-28 14:00:12,205 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:00:12,206 INFO L225 Difference]: With dead ends: 76 [2022-04-28 14:00:12,207 INFO L226 Difference]: Without dead ends: 74 [2022-04-28 14:00:12,207 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 42 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=138, Unknown=0, NotChecked=0, Total=182 [2022-04-28 14:00:12,207 INFO L413 NwaCegarLoop]: 25 mSDtfsCounter, 24 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 197 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 202 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 197 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 14:00:12,208 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [27 Valid, 126 Invalid, 202 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 197 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 14:00:12,208 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-28 14:00:12,273 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 68. [2022-04-28 14:00:12,273 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:00:12,274 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:00:12,274 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:00:12,274 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:00:12,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:00:12,276 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-28 14:00:12,276 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-28 14:00:12,277 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:00:12,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:00:12,277 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-28 14:00:12,277 INFO L87 Difference]: Start difference. First operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-28 14:00:12,279 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:00:12,279 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-28 14:00:12,279 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-28 14:00:12,279 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:00:12,279 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:00:12,279 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:00:12,279 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:00:12,279 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:00:12,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 83 transitions. [2022-04-28 14:00:12,281 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 83 transitions. Word has length 27 [2022-04-28 14:00:12,281 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:00:12,281 INFO L495 AbstractCegarLoop]: Abstraction has 68 states and 83 transitions. [2022-04-28 14:00:12,281 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:00:12,281 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 83 transitions. [2022-04-28 14:00:14,364 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 82 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 14:00:14,364 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 83 transitions. [2022-04-28 14:00:14,364 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 14:00:14,364 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:00:14,364 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 14:00:14,383 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 14:00:14,565 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:00:14,565 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:00:14,566 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:00:14,566 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 1 times [2022-04-28 14:00:14,566 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:00:14,566 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2062706864] [2022-04-28 14:00:14,566 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 14:00:14,566 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 2 times [2022-04-28 14:00:14,567 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:00:14,567 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1268728959] [2022-04-28 14:00:14,567 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:00:14,567 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:00:14,585 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:00:14,585 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1734842948] [2022-04-28 14:00:14,585 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:00:14,586 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:00:14,586 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:00:14,590 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:00:14,591 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 14:00:14,620 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:00:14,620 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:00:14,621 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 14:00:14,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:00:14,629 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:00:14,797 INFO L272 TraceCheckUtils]: 0: Hoare triple {2438#true} call ULTIMATE.init(); {2438#true} is VALID [2022-04-28 14:00:14,797 INFO L290 TraceCheckUtils]: 1: Hoare triple {2438#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; {2438#true} is VALID [2022-04-28 14:00:14,797 INFO L290 TraceCheckUtils]: 2: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-28 14:00:14,797 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2438#true} {2438#true} #77#return; {2438#true} is VALID [2022-04-28 14:00:14,797 INFO L272 TraceCheckUtils]: 4: Hoare triple {2438#true} call #t~ret7 := main(); {2438#true} is VALID [2022-04-28 14:00:14,797 INFO L290 TraceCheckUtils]: 5: Hoare triple {2438#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2438#true} is VALID [2022-04-28 14:00:14,797 INFO L272 TraceCheckUtils]: 6: Hoare triple {2438#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2438#true} is VALID [2022-04-28 14:00:14,797 INFO L290 TraceCheckUtils]: 7: Hoare triple {2438#true} ~cond := #in~cond; {2464#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 14:00:14,798 INFO L290 TraceCheckUtils]: 8: Hoare triple {2464#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 14:00:14,798 INFO L290 TraceCheckUtils]: 9: Hoare triple {2468#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 14:00:14,799 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2468#(not (= |assume_abort_if_not_#in~cond| 0))} {2438#true} #69#return; {2475#(<= 1 main_~y~0)} is VALID [2022-04-28 14:00:14,799 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2479#(<= 1 main_~b~0)} is VALID [2022-04-28 14:00:14,799 INFO L290 TraceCheckUtils]: 12: Hoare triple {2479#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2479#(<= 1 main_~b~0)} is VALID [2022-04-28 14:00:14,799 INFO L290 TraceCheckUtils]: 13: Hoare triple {2479#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {2479#(<= 1 main_~b~0)} is VALID [2022-04-28 14:00:14,800 INFO L272 TraceCheckUtils]: 14: Hoare triple {2479#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2438#true} is VALID [2022-04-28 14:00:14,800 INFO L290 TraceCheckUtils]: 15: Hoare triple {2438#true} ~cond := #in~cond; {2438#true} is VALID [2022-04-28 14:00:14,800 INFO L290 TraceCheckUtils]: 16: Hoare triple {2438#true} assume !(0 == ~cond); {2438#true} is VALID [2022-04-28 14:00:14,800 INFO L290 TraceCheckUtils]: 17: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-28 14:00:14,800 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2438#true} {2479#(<= 1 main_~b~0)} #71#return; {2479#(<= 1 main_~b~0)} is VALID [2022-04-28 14:00:14,801 INFO L290 TraceCheckUtils]: 19: Hoare triple {2479#(<= 1 main_~b~0)} assume !(0 != ~a~0 && 0 != ~b~0); {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 14:00:14,801 INFO L272 TraceCheckUtils]: 20: Hoare triple {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {2438#true} is VALID [2022-04-28 14:00:14,801 INFO L290 TraceCheckUtils]: 21: Hoare triple {2438#true} ~cond := #in~cond; {2438#true} is VALID [2022-04-28 14:00:14,801 INFO L290 TraceCheckUtils]: 22: Hoare triple {2438#true} assume !(0 == ~cond); {2438#true} is VALID [2022-04-28 14:00:14,801 INFO L290 TraceCheckUtils]: 23: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-28 14:00:14,801 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2438#true} {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} #73#return; {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 14:00:14,802 INFO L272 TraceCheckUtils]: 25: Hoare triple {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {2523#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:00:14,802 INFO L290 TraceCheckUtils]: 26: Hoare triple {2523#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2527#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:00:14,803 INFO L290 TraceCheckUtils]: 27: Hoare triple {2527#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2439#false} is VALID [2022-04-28 14:00:14,803 INFO L290 TraceCheckUtils]: 28: Hoare triple {2439#false} assume !false; {2439#false} is VALID [2022-04-28 14:00:14,803 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 14:00:14,803 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 14:00:14,803 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:00:14,803 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1268728959] [2022-04-28 14:00:14,803 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:00:14,803 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1734842948] [2022-04-28 14:00:14,803 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1734842948] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:00:14,803 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:00:14,803 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 14:00:14,804 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:00:14,804 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2062706864] [2022-04-28 14:00:14,804 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2062706864] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:00:14,804 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:00:14,804 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 14:00:14,804 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1016530048] [2022-04-28 14:00:14,804 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:00:14,804 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 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 29 [2022-04-28 14:00:14,804 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:00:14,804 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 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-28 14:00:14,822 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:00:14,822 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 14:00:14,822 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:00:14,822 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 14:00:14,823 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-28 14:00:14,823 INFO L87 Difference]: Start difference. First operand 68 states and 83 transitions. Second operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 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-28 14:00:15,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:00:15,223 INFO L93 Difference]: Finished difference Result 85 states and 107 transitions. [2022-04-28 14:00:15,223 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 14:00:15,223 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 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 29 [2022-04-28 14:00:15,224 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:00:15,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 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-28 14:00:15,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-28 14:00:15,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 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-28 14:00:15,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-28 14:00:15,226 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 57 transitions. [2022-04-28 14:00:15,269 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-28 14:00:15,270 INFO L225 Difference]: With dead ends: 85 [2022-04-28 14:00:15,270 INFO L226 Difference]: Without dead ends: 65 [2022-04-28 14:00:15,271 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-28 14:00:15,271 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 33 mSDsluCounter, 131 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 131 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 14:00:15,272 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 157 Invalid, 131 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 14:00:15,272 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-28 14:00:15,335 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 62. [2022-04-28 14:00:15,335 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:00:15,335 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:00:15,335 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:00:15,335 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:00:15,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:00:15,337 INFO L93 Difference]: Finished difference Result 65 states and 85 transitions. [2022-04-28 14:00:15,337 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 85 transitions. [2022-04-28 14:00:15,337 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:00:15,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:00:15,338 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-28 14:00:15,338 INFO L87 Difference]: Start difference. First operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-28 14:00:15,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:00:15,339 INFO L93 Difference]: Finished difference Result 65 states and 85 transitions. [2022-04-28 14:00:15,339 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 85 transitions. [2022-04-28 14:00:15,339 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:00:15,339 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:00:15,339 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:00:15,339 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:00:15,340 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:00:15,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 80 transitions. [2022-04-28 14:00:15,341 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 80 transitions. Word has length 29 [2022-04-28 14:00:15,341 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:00:15,341 INFO L495 AbstractCegarLoop]: Abstraction has 62 states and 80 transitions. [2022-04-28 14:00:15,341 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 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-28 14:00:15,341 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 62 states and 80 transitions. [2022-04-28 14:00:17,434 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 79 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 14:00:17,434 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 80 transitions. [2022-04-28 14:00:17,435 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 14:00:17,435 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:00:17,435 INFO L195 NwaCegarLoop]: 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-28 14:00:17,451 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 14:00:17,643 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:00:17,643 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:00:17,644 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:00:17,644 INFO L85 PathProgramCache]: Analyzing trace with hash -1357155568, now seen corresponding path program 1 times [2022-04-28 14:00:17,644 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:00:17,644 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1968727785] [2022-04-28 14:00:23,698 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:00:23,698 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:00:23,698 INFO L85 PathProgramCache]: Analyzing trace with hash -1357155568, now seen corresponding path program 2 times [2022-04-28 14:00:23,698 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:00:23,698 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [449300578] [2022-04-28 14:00:23,698 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:00:23,699 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:00:23,709 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:00:23,709 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1877375761] [2022-04-28 14:00:23,709 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:00:23,709 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:00:23,710 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:00:23,724 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:00:23,726 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 14:00:23,760 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:00:23,760 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:00:23,761 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-28 14:00:23,771 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:00:23,772 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:00:24,032 INFO L272 TraceCheckUtils]: 0: Hoare triple {2965#true} call ULTIMATE.init(); {2965#true} is VALID [2022-04-28 14:00:24,032 INFO L290 TraceCheckUtils]: 1: Hoare triple {2965#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; {2965#true} is VALID [2022-04-28 14:00:24,032 INFO L290 TraceCheckUtils]: 2: Hoare triple {2965#true} assume true; {2965#true} is VALID [2022-04-28 14:00:24,033 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2965#true} {2965#true} #77#return; {2965#true} is VALID [2022-04-28 14:00:24,033 INFO L272 TraceCheckUtils]: 4: Hoare triple {2965#true} call #t~ret7 := main(); {2965#true} is VALID [2022-04-28 14:00:24,033 INFO L290 TraceCheckUtils]: 5: Hoare triple {2965#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2965#true} is VALID [2022-04-28 14:00:24,033 INFO L272 TraceCheckUtils]: 6: Hoare triple {2965#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2965#true} is VALID [2022-04-28 14:00:24,033 INFO L290 TraceCheckUtils]: 7: Hoare triple {2965#true} ~cond := #in~cond; {2965#true} is VALID [2022-04-28 14:00:24,033 INFO L290 TraceCheckUtils]: 8: Hoare triple {2965#true} assume !(0 == ~cond); {2965#true} is VALID [2022-04-28 14:00:24,033 INFO L290 TraceCheckUtils]: 9: Hoare triple {2965#true} assume true; {2965#true} is VALID [2022-04-28 14:00:24,033 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2965#true} {2965#true} #69#return; {2965#true} is VALID [2022-04-28 14:00:24,037 INFO L290 TraceCheckUtils]: 11: Hoare triple {2965#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:24,038 INFO L290 TraceCheckUtils]: 12: Hoare triple {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:24,038 INFO L290 TraceCheckUtils]: 13: Hoare triple {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:24,038 INFO L272 TraceCheckUtils]: 14: Hoare triple {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2965#true} is VALID [2022-04-28 14:00:24,039 INFO L290 TraceCheckUtils]: 15: Hoare triple {2965#true} ~cond := #in~cond; {3016#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:00:24,039 INFO L290 TraceCheckUtils]: 16: Hoare triple {3016#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3020#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:00:24,039 INFO L290 TraceCheckUtils]: 17: Hoare triple {3020#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3020#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:00:24,040 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3020#(not (= |__VERIFIER_assert_#in~cond| 0))} {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #71#return; {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:24,040 INFO L290 TraceCheckUtils]: 19: Hoare triple {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:24,041 INFO L290 TraceCheckUtils]: 20: Hoare triple {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:24,048 INFO L290 TraceCheckUtils]: 21: Hoare triple {3003#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume 1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := ~a~0 - 1;~q~0 := ~q~0 + ~b~0 * ~p~0; {3036#(and (= main_~b~0 main_~y~0) (= (+ main_~a~0 1) main_~x~0) (= 0 (+ main_~q~0 (* (- 1) main_~b~0 main_~p~0))) (= main_~p~0 1))} is VALID [2022-04-28 14:00:24,048 INFO L290 TraceCheckUtils]: 22: Hoare triple {3036#(and (= main_~b~0 main_~y~0) (= (+ main_~a~0 1) main_~x~0) (= 0 (+ main_~q~0 (* (- 1) main_~b~0 main_~p~0))) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3036#(and (= main_~b~0 main_~y~0) (= (+ main_~a~0 1) main_~x~0) (= 0 (+ main_~q~0 (* (- 1) main_~b~0 main_~p~0))) (= main_~p~0 1))} is VALID [2022-04-28 14:00:24,049 INFO L290 TraceCheckUtils]: 23: Hoare triple {3036#(and (= main_~b~0 main_~y~0) (= (+ main_~a~0 1) main_~x~0) (= 0 (+ main_~q~0 (* (- 1) main_~b~0 main_~p~0))) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {3036#(and (= main_~b~0 main_~y~0) (= (+ main_~a~0 1) main_~x~0) (= 0 (+ main_~q~0 (* (- 1) main_~b~0 main_~p~0))) (= main_~p~0 1))} is VALID [2022-04-28 14:00:24,051 INFO L272 TraceCheckUtils]: 24: Hoare triple {3036#(and (= main_~b~0 main_~y~0) (= (+ main_~a~0 1) main_~x~0) (= 0 (+ main_~q~0 (* (- 1) main_~b~0 main_~p~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3046#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:00:24,051 INFO L290 TraceCheckUtils]: 25: Hoare triple {3046#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3050#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:00:24,052 INFO L290 TraceCheckUtils]: 26: Hoare triple {3050#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2966#false} is VALID [2022-04-28 14:00:24,052 INFO L290 TraceCheckUtils]: 27: Hoare triple {2966#false} assume !false; {2966#false} is VALID [2022-04-28 14:00:24,052 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-28 14:00:24,052 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:00:44,941 INFO L290 TraceCheckUtils]: 27: Hoare triple {2966#false} assume !false; {2966#false} is VALID [2022-04-28 14:00:44,942 INFO L290 TraceCheckUtils]: 26: Hoare triple {3050#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2966#false} is VALID [2022-04-28 14:00:44,942 INFO L290 TraceCheckUtils]: 25: Hoare triple {3046#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3050#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:00:44,943 INFO L272 TraceCheckUtils]: 24: Hoare triple {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3046#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:00:44,943 INFO L290 TraceCheckUtils]: 23: Hoare triple {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:00:44,943 INFO L290 TraceCheckUtils]: 22: Hoare triple {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:00:44,949 INFO L290 TraceCheckUtils]: 21: Hoare triple {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume 1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := ~a~0 - 1;~q~0 := ~q~0 + ~b~0 * ~p~0; {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:00:44,949 INFO L290 TraceCheckUtils]: 20: Hoare triple {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:00:44,950 INFO L290 TraceCheckUtils]: 19: Hoare triple {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(0 != ~a~0 && 0 != ~b~0); {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:00:44,950 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3020#(not (= |__VERIFIER_assert_#in~cond| 0))} {2965#true} #71#return; {3066#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:00:44,951 INFO L290 TraceCheckUtils]: 17: Hoare triple {3020#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3020#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:00:44,951 INFO L290 TraceCheckUtils]: 16: Hoare triple {3094#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {3020#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:00:44,951 INFO L290 TraceCheckUtils]: 15: Hoare triple {2965#true} ~cond := #in~cond; {3094#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 14:00:44,951 INFO L272 TraceCheckUtils]: 14: Hoare triple {2965#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2965#true} is VALID [2022-04-28 14:00:44,951 INFO L290 TraceCheckUtils]: 13: Hoare triple {2965#true} assume !!(#t~post6 < 10);havoc #t~post6; {2965#true} is VALID [2022-04-28 14:00:44,951 INFO L290 TraceCheckUtils]: 12: Hoare triple {2965#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2965#true} is VALID [2022-04-28 14:00:44,951 INFO L290 TraceCheckUtils]: 11: Hoare triple {2965#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2965#true} is VALID [2022-04-28 14:00:44,952 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2965#true} {2965#true} #69#return; {2965#true} is VALID [2022-04-28 14:00:44,952 INFO L290 TraceCheckUtils]: 9: Hoare triple {2965#true} assume true; {2965#true} is VALID [2022-04-28 14:00:44,952 INFO L290 TraceCheckUtils]: 8: Hoare triple {2965#true} assume !(0 == ~cond); {2965#true} is VALID [2022-04-28 14:00:44,952 INFO L290 TraceCheckUtils]: 7: Hoare triple {2965#true} ~cond := #in~cond; {2965#true} is VALID [2022-04-28 14:00:44,952 INFO L272 TraceCheckUtils]: 6: Hoare triple {2965#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2965#true} is VALID [2022-04-28 14:00:44,952 INFO L290 TraceCheckUtils]: 5: Hoare triple {2965#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2965#true} is VALID [2022-04-28 14:00:44,952 INFO L272 TraceCheckUtils]: 4: Hoare triple {2965#true} call #t~ret7 := main(); {2965#true} is VALID [2022-04-28 14:00:44,953 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2965#true} {2965#true} #77#return; {2965#true} is VALID [2022-04-28 14:00:44,953 INFO L290 TraceCheckUtils]: 2: Hoare triple {2965#true} assume true; {2965#true} is VALID [2022-04-28 14:00:44,953 INFO L290 TraceCheckUtils]: 1: Hoare triple {2965#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; {2965#true} is VALID [2022-04-28 14:00:44,953 INFO L272 TraceCheckUtils]: 0: Hoare triple {2965#true} call ULTIMATE.init(); {2965#true} is VALID [2022-04-28 14:00:44,953 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-28 14:00:44,953 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:00:44,953 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [449300578] [2022-04-28 14:00:44,953 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:00:44,953 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1877375761] [2022-04-28 14:00:44,953 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1877375761] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:00:44,953 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:00:44,953 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 10 [2022-04-28 14:00:44,954 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:00:44,954 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1968727785] [2022-04-28 14:00:44,954 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1968727785] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:00:44,954 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:00:44,954 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 14:00:44,954 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1093635806] [2022-04-28 14:00:44,954 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:00:44,955 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-28 14:00:44,955 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:00:44,955 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:00:44,976 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-28 14:00:44,977 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 14:00:44,977 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:00:44,977 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 14:00:44,977 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-28 14:00:44,977 INFO L87 Difference]: Start difference. First operand 62 states and 80 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:00:45,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:00:45,466 INFO L93 Difference]: Finished difference Result 73 states and 94 transitions. [2022-04-28 14:00:45,466 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 14:00:45,467 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-28 14:00:45,468 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:00:45,468 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:00:45,469 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 60 transitions. [2022-04-28 14:00:45,469 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:00:45,471 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 60 transitions. [2022-04-28 14:00:45,471 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 60 transitions. [2022-04-28 14:00:45,527 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-28 14:00:45,528 INFO L225 Difference]: With dead ends: 73 [2022-04-28 14:00:45,528 INFO L226 Difference]: Without dead ends: 71 [2022-04-28 14:00:45,528 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 45 SyntacticMatches, 2 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-28 14:00:45,529 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 16 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 142 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 114 SdHoareTripleChecker+Invalid, 145 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 142 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 14:00:45,529 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 114 Invalid, 145 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 142 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 14:00:45,529 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-28 14:00:45,594 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 67. [2022-04-28 14:00:45,595 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:00:45,595 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 67 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 52 states have internal predecessors, (64), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:00:45,595 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 67 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 52 states have internal predecessors, (64), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:00:45,595 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 67 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 52 states have internal predecessors, (64), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:00:45,597 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:00:45,597 INFO L93 Difference]: Finished difference Result 71 states and 92 transitions. [2022-04-28 14:00:45,597 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 92 transitions. [2022-04-28 14:00:45,597 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:00:45,597 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:00:45,597 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 52 states have internal predecessors, (64), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 71 states. [2022-04-28 14:00:45,598 INFO L87 Difference]: Start difference. First operand has 67 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 52 states have internal predecessors, (64), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 71 states. [2022-04-28 14:00:45,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:00:45,599 INFO L93 Difference]: Finished difference Result 71 states and 92 transitions. [2022-04-28 14:00:45,599 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 92 transitions. [2022-04-28 14:00:45,599 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:00:45,599 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:00:45,599 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:00:45,600 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:00:45,600 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 52 states have internal predecessors, (64), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:00:45,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 85 transitions. [2022-04-28 14:00:45,601 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 85 transitions. Word has length 28 [2022-04-28 14:00:45,601 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:00:45,601 INFO L495 AbstractCegarLoop]: Abstraction has 67 states and 85 transitions. [2022-04-28 14:00:45,601 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:00:45,601 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 67 states and 85 transitions. [2022-04-28 14:00:47,718 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 84 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 14:00:47,719 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 85 transitions. [2022-04-28 14:00:47,719 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 14:00:47,719 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:00:47,719 INFO L195 NwaCegarLoop]: 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, 1] [2022-04-28 14:00:47,735 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 14:00:47,919 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:00:47,920 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:00:47,920 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:00:47,920 INFO L85 PathProgramCache]: Analyzing trace with hash -293334773, now seen corresponding path program 1 times [2022-04-28 14:00:47,920 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:00:47,920 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [867587682] [2022-04-28 14:00:53,978 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:00:53,978 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:00:53,978 INFO L85 PathProgramCache]: Analyzing trace with hash -293334773, now seen corresponding path program 2 times [2022-04-28 14:00:53,979 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:00:53,979 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [552049515] [2022-04-28 14:00:53,979 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:00:53,979 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:00:54,001 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:00:54,002 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [696760119] [2022-04-28 14:00:54,002 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:00:54,002 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:00:54,002 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:00:54,004 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:00:54,006 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 14:00:54,047 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:00:54,048 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:00:54,048 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-28 14:00:54,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:00:54,062 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:00:54,346 INFO L272 TraceCheckUtils]: 0: Hoare triple {3568#true} call ULTIMATE.init(); {3568#true} is VALID [2022-04-28 14:00:54,347 INFO L290 TraceCheckUtils]: 1: Hoare triple {3568#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; {3568#true} is VALID [2022-04-28 14:00:54,347 INFO L290 TraceCheckUtils]: 2: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-28 14:00:54,347 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3568#true} {3568#true} #77#return; {3568#true} is VALID [2022-04-28 14:00:54,347 INFO L272 TraceCheckUtils]: 4: Hoare triple {3568#true} call #t~ret7 := main(); {3568#true} is VALID [2022-04-28 14:00:54,347 INFO L290 TraceCheckUtils]: 5: Hoare triple {3568#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3568#true} is VALID [2022-04-28 14:00:54,347 INFO L272 TraceCheckUtils]: 6: Hoare triple {3568#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3568#true} is VALID [2022-04-28 14:00:54,347 INFO L290 TraceCheckUtils]: 7: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-28 14:00:54,347 INFO L290 TraceCheckUtils]: 8: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-28 14:00:54,347 INFO L290 TraceCheckUtils]: 9: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-28 14:00:54,347 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3568#true} {3568#true} #69#return; {3568#true} is VALID [2022-04-28 14:00:54,348 INFO L290 TraceCheckUtils]: 11: Hoare triple {3568#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:54,348 INFO L290 TraceCheckUtils]: 12: Hoare triple {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:54,349 INFO L290 TraceCheckUtils]: 13: Hoare triple {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:54,349 INFO L272 TraceCheckUtils]: 14: Hoare triple {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3568#true} is VALID [2022-04-28 14:00:54,349 INFO L290 TraceCheckUtils]: 15: Hoare triple {3568#true} ~cond := #in~cond; {3619#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:00:54,349 INFO L290 TraceCheckUtils]: 16: Hoare triple {3619#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:00:54,350 INFO L290 TraceCheckUtils]: 17: Hoare triple {3623#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:00:54,351 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3623#(not (= |__VERIFIER_assert_#in~cond| 0))} {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #71#return; {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:54,351 INFO L290 TraceCheckUtils]: 19: Hoare triple {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:54,352 INFO L290 TraceCheckUtils]: 20: Hoare triple {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:54,353 INFO L290 TraceCheckUtils]: 21: Hoare triple {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:54,353 INFO L290 TraceCheckUtils]: 22: Hoare triple {3606#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~b~0 := ~b~0 - 1;~q~0 := ~q~0 + ~a~0 * ~p~0; {3642#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (mod main_~a~0 2) 0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0)) 0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:54,354 INFO L290 TraceCheckUtils]: 23: Hoare triple {3642#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (mod main_~a~0 2) 0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0)) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3642#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (mod main_~a~0 2) 0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0)) 0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:54,355 INFO L290 TraceCheckUtils]: 24: Hoare triple {3642#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (mod main_~a~0 2) 0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0)) 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {3642#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (mod main_~a~0 2) 0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0)) 0) (= main_~p~0 1))} is VALID [2022-04-28 14:00:54,358 INFO L272 TraceCheckUtils]: 25: Hoare triple {3642#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (mod main_~a~0 2) 0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0)) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3652#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:00:54,358 INFO L290 TraceCheckUtils]: 26: Hoare triple {3652#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3656#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:00:54,359 INFO L290 TraceCheckUtils]: 27: Hoare triple {3656#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3569#false} is VALID [2022-04-28 14:00:54,359 INFO L290 TraceCheckUtils]: 28: Hoare triple {3569#false} assume !false; {3569#false} is VALID [2022-04-28 14:00:54,359 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-28 14:00:54,359 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:01:06,885 INFO L290 TraceCheckUtils]: 28: Hoare triple {3569#false} assume !false; {3569#false} is VALID [2022-04-28 14:01:06,886 INFO L290 TraceCheckUtils]: 27: Hoare triple {3656#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3569#false} is VALID [2022-04-28 14:01:06,886 INFO L290 TraceCheckUtils]: 26: Hoare triple {3652#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3656#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:01:06,887 INFO L272 TraceCheckUtils]: 25: Hoare triple {3672#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3652#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:01:06,887 INFO L290 TraceCheckUtils]: 24: Hoare triple {3672#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {3672#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:06,888 INFO L290 TraceCheckUtils]: 23: Hoare triple {3672#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3672#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:06,898 INFO L290 TraceCheckUtils]: 22: Hoare triple {3682#(or (not (= (mod main_~a~0 2) 0)) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~b~0 := ~b~0 - 1;~q~0 := ~q~0 + ~a~0 * ~p~0; {3672#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:06,899 INFO L290 TraceCheckUtils]: 21: Hoare triple {3682#(or (not (= (mod main_~a~0 2) 0)) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))))} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3682#(or (not (= (mod main_~a~0 2) 0)) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))))} is VALID [2022-04-28 14:01:06,899 INFO L290 TraceCheckUtils]: 20: Hoare triple {3682#(or (not (= (mod main_~a~0 2) 0)) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3682#(or (not (= (mod main_~a~0 2) 0)) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))))} is VALID [2022-04-28 14:01:06,900 INFO L290 TraceCheckUtils]: 19: Hoare triple {3682#(or (not (= (mod main_~a~0 2) 0)) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))))} assume !!(0 != ~a~0 && 0 != ~b~0); {3682#(or (not (= (mod main_~a~0 2) 0)) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))))} is VALID [2022-04-28 14:01:06,900 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3623#(not (= |__VERIFIER_assert_#in~cond| 0))} {3568#true} #71#return; {3682#(or (not (= (mod main_~a~0 2) 0)) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))))} is VALID [2022-04-28 14:01:06,901 INFO L290 TraceCheckUtils]: 17: Hoare triple {3623#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:01:06,901 INFO L290 TraceCheckUtils]: 16: Hoare triple {3704#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {3623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:01:06,901 INFO L290 TraceCheckUtils]: 15: Hoare triple {3568#true} ~cond := #in~cond; {3704#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 14:01:06,902 INFO L272 TraceCheckUtils]: 14: Hoare triple {3568#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L290 TraceCheckUtils]: 13: Hoare triple {3568#true} assume !!(#t~post6 < 10);havoc #t~post6; {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L290 TraceCheckUtils]: 12: Hoare triple {3568#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L290 TraceCheckUtils]: 11: Hoare triple {3568#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3568#true} {3568#true} #69#return; {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L290 TraceCheckUtils]: 9: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L290 TraceCheckUtils]: 8: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L290 TraceCheckUtils]: 7: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L272 TraceCheckUtils]: 6: Hoare triple {3568#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L290 TraceCheckUtils]: 5: Hoare triple {3568#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L272 TraceCheckUtils]: 4: Hoare triple {3568#true} call #t~ret7 := main(); {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3568#true} {3568#true} #77#return; {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L290 TraceCheckUtils]: 2: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L290 TraceCheckUtils]: 1: Hoare triple {3568#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; {3568#true} is VALID [2022-04-28 14:01:06,902 INFO L272 TraceCheckUtils]: 0: Hoare triple {3568#true} call ULTIMATE.init(); {3568#true} is VALID [2022-04-28 14:01:06,903 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-28 14:01:06,903 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:01:06,903 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [552049515] [2022-04-28 14:01:06,903 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:01:06,903 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [696760119] [2022-04-28 14:01:06,903 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [696760119] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:01:06,903 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:01:06,903 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 11 [2022-04-28 14:01:06,903 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:01:06,903 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [867587682] [2022-04-28 14:01:06,904 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [867587682] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:01:06,904 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:01:06,904 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 14:01:06,904 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1737660371] [2022-04-28 14:01:06,904 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:01:06,904 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-28 14:01:06,904 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:01:06,904 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:01:06,928 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:01:06,929 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 14:01:06,929 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:01:06,929 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 14:01:06,929 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=82, Unknown=0, NotChecked=0, Total=110 [2022-04-28 14:01:06,929 INFO L87 Difference]: Start difference. First operand 67 states and 85 transitions. Second operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:01:07,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:01:07,820 INFO L93 Difference]: Finished difference Result 95 states and 125 transitions. [2022-04-28 14:01:07,820 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 14:01:07,820 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-28 14:01:07,820 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:01:07,820 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:01:07,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 84 transitions. [2022-04-28 14:01:07,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:01:07,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 84 transitions. [2022-04-28 14:01:07,822 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 84 transitions. [2022-04-28 14:01:07,896 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:01:07,897 INFO L225 Difference]: With dead ends: 95 [2022-04-28 14:01:07,897 INFO L226 Difference]: Without dead ends: 80 [2022-04-28 14:01:07,897 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 59 GetRequests, 47 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2022-04-28 14:01:07,898 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 16 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 156 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 160 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 156 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 14:01:07,898 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 116 Invalid, 160 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 156 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 14:01:07,898 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2022-04-28 14:01:07,965 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 77. [2022-04-28 14:01:07,965 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:01:07,971 INFO L82 GeneralOperation]: Start isEquivalent. First operand 80 states. Second operand has 77 states, 56 states have (on average 1.3214285714285714) internal successors, (74), 60 states have internal predecessors, (74), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:01:07,972 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand has 77 states, 56 states have (on average 1.3214285714285714) internal successors, (74), 60 states have internal predecessors, (74), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:01:07,973 INFO L87 Difference]: Start difference. First operand 80 states. Second operand has 77 states, 56 states have (on average 1.3214285714285714) internal successors, (74), 60 states have internal predecessors, (74), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:01:07,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:01:07,978 INFO L93 Difference]: Finished difference Result 80 states and 102 transitions. [2022-04-28 14:01:07,978 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 102 transitions. [2022-04-28 14:01:07,979 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:01:07,979 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:01:07,979 INFO L74 IsIncluded]: Start isIncluded. First operand has 77 states, 56 states have (on average 1.3214285714285714) internal successors, (74), 60 states have internal predecessors, (74), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 80 states. [2022-04-28 14:01:07,979 INFO L87 Difference]: Start difference. First operand has 77 states, 56 states have (on average 1.3214285714285714) internal successors, (74), 60 states have internal predecessors, (74), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 80 states. [2022-04-28 14:01:07,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:01:07,981 INFO L93 Difference]: Finished difference Result 80 states and 102 transitions. [2022-04-28 14:01:07,981 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 102 transitions. [2022-04-28 14:01:07,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:01:07,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:01:07,982 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:01:07,982 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:01:07,982 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 77 states, 56 states have (on average 1.3214285714285714) internal successors, (74), 60 states have internal predecessors, (74), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:01:07,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 97 transitions. [2022-04-28 14:01:07,983 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 97 transitions. Word has length 29 [2022-04-28 14:01:07,983 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:01:07,983 INFO L495 AbstractCegarLoop]: Abstraction has 77 states and 97 transitions. [2022-04-28 14:01:07,984 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:01:07,984 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 77 states and 97 transitions. [2022-04-28 14:01:10,099 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 96 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 14:01:10,099 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 97 transitions. [2022-04-28 14:01:10,099 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 14:01:10,099 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:01:10,100 INFO L195 NwaCegarLoop]: 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, 1] [2022-04-28 14:01:10,115 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 14:01:10,300 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-28 14:01:10,300 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:01:10,300 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:01:10,301 INFO L85 PathProgramCache]: Analyzing trace with hash 1481672589, now seen corresponding path program 1 times [2022-04-28 14:01:10,301 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:01:10,301 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [722649689] [2022-04-28 14:01:16,349 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:01:16,350 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:01:16,350 INFO L85 PathProgramCache]: Analyzing trace with hash 1481672589, now seen corresponding path program 2 times [2022-04-28 14:01:16,350 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:01:16,350 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [272285343] [2022-04-28 14:01:16,350 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:01:16,350 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:01:16,360 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:01:16,360 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [664472984] [2022-04-28 14:01:16,360 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:01:16,360 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:01:16,360 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:01:16,361 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-28 14:01:16,362 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-28 14:01:16,399 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:01:16,400 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:01:16,400 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 14:01:16,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:01:16,412 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:01:16,643 INFO L272 TraceCheckUtils]: 0: Hoare triple {4260#true} call ULTIMATE.init(); {4260#true} is VALID [2022-04-28 14:01:16,643 INFO L290 TraceCheckUtils]: 1: Hoare triple {4260#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; {4260#true} is VALID [2022-04-28 14:01:16,643 INFO L290 TraceCheckUtils]: 2: Hoare triple {4260#true} assume true; {4260#true} is VALID [2022-04-28 14:01:16,643 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4260#true} {4260#true} #77#return; {4260#true} is VALID [2022-04-28 14:01:16,643 INFO L272 TraceCheckUtils]: 4: Hoare triple {4260#true} call #t~ret7 := main(); {4260#true} is VALID [2022-04-28 14:01:16,643 INFO L290 TraceCheckUtils]: 5: Hoare triple {4260#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4260#true} is VALID [2022-04-28 14:01:16,644 INFO L272 TraceCheckUtils]: 6: Hoare triple {4260#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4260#true} is VALID [2022-04-28 14:01:16,644 INFO L290 TraceCheckUtils]: 7: Hoare triple {4260#true} ~cond := #in~cond; {4260#true} is VALID [2022-04-28 14:01:16,644 INFO L290 TraceCheckUtils]: 8: Hoare triple {4260#true} assume !(0 == ~cond); {4260#true} is VALID [2022-04-28 14:01:16,644 INFO L290 TraceCheckUtils]: 9: Hoare triple {4260#true} assume true; {4260#true} is VALID [2022-04-28 14:01:16,644 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4260#true} {4260#true} #69#return; {4260#true} is VALID [2022-04-28 14:01:16,645 INFO L290 TraceCheckUtils]: 11: Hoare triple {4260#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:01:16,645 INFO L290 TraceCheckUtils]: 12: Hoare triple {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:01:16,646 INFO L290 TraceCheckUtils]: 13: Hoare triple {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:01:16,646 INFO L272 TraceCheckUtils]: 14: Hoare triple {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4260#true} is VALID [2022-04-28 14:01:16,651 INFO L290 TraceCheckUtils]: 15: Hoare triple {4260#true} ~cond := #in~cond; {4260#true} is VALID [2022-04-28 14:01:16,654 INFO L290 TraceCheckUtils]: 16: Hoare triple {4260#true} assume !(0 == ~cond); {4260#true} is VALID [2022-04-28 14:01:16,654 INFO L290 TraceCheckUtils]: 17: Hoare triple {4260#true} assume true; {4260#true} is VALID [2022-04-28 14:01:16,654 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4260#true} {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #71#return; {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:01:16,655 INFO L290 TraceCheckUtils]: 19: Hoare triple {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:01:16,655 INFO L290 TraceCheckUtils]: 20: Hoare triple {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:01:16,656 INFO L290 TraceCheckUtils]: 21: Hoare triple {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 14:01:16,657 INFO L290 TraceCheckUtils]: 22: Hoare triple {4298#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2));~a~0 := ~a~0 - 1;~b~0 := ~b~0 - 1;~q~0 := ~q~0 + (1 + (~a~0 + ~b~0)) * ~p~0; {4332#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0) (* (- 1) main_~b~0 main_~p~0) (* (- 1) main_~p~0)) 0) (= (+ (- 1) main_~x~0) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-28 14:01:16,657 INFO L290 TraceCheckUtils]: 23: Hoare triple {4332#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0) (* (- 1) main_~b~0 main_~p~0) (* (- 1) main_~p~0)) 0) (= (+ (- 1) main_~x~0) main_~a~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4332#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0) (* (- 1) main_~b~0 main_~p~0) (* (- 1) main_~p~0)) 0) (= (+ (- 1) main_~x~0) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-28 14:01:16,658 INFO L290 TraceCheckUtils]: 24: Hoare triple {4332#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0) (* (- 1) main_~b~0 main_~p~0) (* (- 1) main_~p~0)) 0) (= (+ (- 1) main_~x~0) main_~a~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {4332#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0) (* (- 1) main_~b~0 main_~p~0) (* (- 1) main_~p~0)) 0) (= (+ (- 1) main_~x~0) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-28 14:01:16,661 INFO L272 TraceCheckUtils]: 25: Hoare triple {4332#(and (= main_~b~0 (+ (- 1) main_~y~0)) (= (+ main_~q~0 (* (- 1) main_~a~0 main_~p~0) (* (- 1) main_~b~0 main_~p~0) (* (- 1) main_~p~0)) 0) (= (+ (- 1) main_~x~0) main_~a~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4342#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:01:16,661 INFO L290 TraceCheckUtils]: 26: Hoare triple {4342#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4346#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:01:16,662 INFO L290 TraceCheckUtils]: 27: Hoare triple {4346#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4261#false} is VALID [2022-04-28 14:01:16,662 INFO L290 TraceCheckUtils]: 28: Hoare triple {4261#false} assume !false; {4261#false} is VALID [2022-04-28 14:01:16,662 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 14:01:16,662 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:01:16,775 INFO L290 TraceCheckUtils]: 28: Hoare triple {4261#false} assume !false; {4261#false} is VALID [2022-04-28 14:01:16,776 INFO L290 TraceCheckUtils]: 27: Hoare triple {4346#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4261#false} is VALID [2022-04-28 14:01:16,776 INFO L290 TraceCheckUtils]: 26: Hoare triple {4342#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4346#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:01:16,777 INFO L272 TraceCheckUtils]: 25: Hoare triple {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4342#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:01:16,777 INFO L290 TraceCheckUtils]: 24: Hoare triple {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:16,777 INFO L290 TraceCheckUtils]: 23: Hoare triple {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:16,781 INFO L290 TraceCheckUtils]: 22: Hoare triple {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2));~a~0 := ~a~0 - 1;~b~0 := ~b~0 - 1;~q~0 := ~q~0 + (1 + (~a~0 + ~b~0)) * ~p~0; {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:16,782 INFO L290 TraceCheckUtils]: 21: Hoare triple {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:16,782 INFO L290 TraceCheckUtils]: 20: Hoare triple {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:16,782 INFO L290 TraceCheckUtils]: 19: Hoare triple {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(0 != ~a~0 && 0 != ~b~0); {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:16,783 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4260#true} {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #71#return; {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:16,783 INFO L290 TraceCheckUtils]: 17: Hoare triple {4260#true} assume true; {4260#true} is VALID [2022-04-28 14:01:16,783 INFO L290 TraceCheckUtils]: 16: Hoare triple {4260#true} assume !(0 == ~cond); {4260#true} is VALID [2022-04-28 14:01:16,783 INFO L290 TraceCheckUtils]: 15: Hoare triple {4260#true} ~cond := #in~cond; {4260#true} is VALID [2022-04-28 14:01:16,783 INFO L272 TraceCheckUtils]: 14: Hoare triple {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4260#true} is VALID [2022-04-28 14:01:16,783 INFO L290 TraceCheckUtils]: 13: Hoare triple {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:16,784 INFO L290 TraceCheckUtils]: 12: Hoare triple {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:16,784 INFO L290 TraceCheckUtils]: 11: Hoare triple {4260#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4362#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:16,784 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4260#true} {4260#true} #69#return; {4260#true} is VALID [2022-04-28 14:01:16,784 INFO L290 TraceCheckUtils]: 9: Hoare triple {4260#true} assume true; {4260#true} is VALID [2022-04-28 14:01:16,784 INFO L290 TraceCheckUtils]: 8: Hoare triple {4260#true} assume !(0 == ~cond); {4260#true} is VALID [2022-04-28 14:01:16,784 INFO L290 TraceCheckUtils]: 7: Hoare triple {4260#true} ~cond := #in~cond; {4260#true} is VALID [2022-04-28 14:01:16,784 INFO L272 TraceCheckUtils]: 6: Hoare triple {4260#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4260#true} is VALID [2022-04-28 14:01:16,784 INFO L290 TraceCheckUtils]: 5: Hoare triple {4260#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4260#true} is VALID [2022-04-28 14:01:16,785 INFO L272 TraceCheckUtils]: 4: Hoare triple {4260#true} call #t~ret7 := main(); {4260#true} is VALID [2022-04-28 14:01:16,785 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4260#true} {4260#true} #77#return; {4260#true} is VALID [2022-04-28 14:01:16,785 INFO L290 TraceCheckUtils]: 2: Hoare triple {4260#true} assume true; {4260#true} is VALID [2022-04-28 14:01:16,785 INFO L290 TraceCheckUtils]: 1: Hoare triple {4260#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; {4260#true} is VALID [2022-04-28 14:01:16,785 INFO L272 TraceCheckUtils]: 0: Hoare triple {4260#true} call ULTIMATE.init(); {4260#true} is VALID [2022-04-28 14:01:16,785 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-04-28 14:01:16,785 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:01:16,785 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [272285343] [2022-04-28 14:01:16,785 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:01:16,785 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [664472984] [2022-04-28 14:01:16,785 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [664472984] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 14:01:16,785 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 14:01:16,785 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-28 14:01:16,786 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:01:16,786 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [722649689] [2022-04-28 14:01:16,786 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [722649689] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:01:16,786 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:01:16,786 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 14:01:16,786 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2020409106] [2022-04-28 14:01:16,786 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:01:16,786 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-28 14:01:16,786 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:01:16,786 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:01:16,807 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:01:16,807 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 14:01:16,807 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:01:16,807 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 14:01:16,807 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 14:01:16,808 INFO L87 Difference]: Start difference. First operand 77 states and 97 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:01:17,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:01:17,090 INFO L93 Difference]: Finished difference Result 83 states and 102 transitions. [2022-04-28 14:01:17,090 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 14:01:17,091 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-28 14:01:17,091 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:01:17,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:01:17,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 38 transitions. [2022-04-28 14:01:17,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:01:17,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 38 transitions. [2022-04-28 14:01:17,092 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 38 transitions. [2022-04-28 14:01:17,179 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-28 14:01:17,180 INFO L225 Difference]: With dead ends: 83 [2022-04-28 14:01:17,181 INFO L226 Difference]: Without dead ends: 81 [2022-04-28 14:01:17,181 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 50 SyntacticMatches, 2 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-28 14:01:17,181 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 7 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 45 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 72 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 45 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 14:01:17,182 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 72 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 45 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 14:01:17,182 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-28 14:01:17,257 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 81. [2022-04-28 14:01:17,257 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:01:17,258 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 81 states, 59 states have (on average 1.305084745762712) internal successors, (77), 63 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:01:17,258 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 81 states, 59 states have (on average 1.305084745762712) internal successors, (77), 63 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:01:17,258 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 81 states, 59 states have (on average 1.305084745762712) internal successors, (77), 63 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:01:17,260 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:01:17,260 INFO L93 Difference]: Finished difference Result 81 states and 100 transitions. [2022-04-28 14:01:17,260 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 100 transitions. [2022-04-28 14:01:17,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:01:17,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:01:17,261 INFO L74 IsIncluded]: Start isIncluded. First operand has 81 states, 59 states have (on average 1.305084745762712) internal successors, (77), 63 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 81 states. [2022-04-28 14:01:17,261 INFO L87 Difference]: Start difference. First operand has 81 states, 59 states have (on average 1.305084745762712) internal successors, (77), 63 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 81 states. [2022-04-28 14:01:17,262 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:01:17,262 INFO L93 Difference]: Finished difference Result 81 states and 100 transitions. [2022-04-28 14:01:17,262 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 100 transitions. [2022-04-28 14:01:17,263 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:01:17,263 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:01:17,263 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:01:17,263 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:01:17,263 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 81 states, 59 states have (on average 1.305084745762712) internal successors, (77), 63 states have internal predecessors, (77), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:01:17,265 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 100 transitions. [2022-04-28 14:01:17,265 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 100 transitions. Word has length 29 [2022-04-28 14:01:17,265 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:01:17,265 INFO L495 AbstractCegarLoop]: Abstraction has 81 states and 100 transitions. [2022-04-28 14:01:17,265 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 14:01:17,265 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 81 states and 100 transitions. [2022-04-28 14:01:19,596 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 99 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 14:01:19,597 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 100 transitions. [2022-04-28 14:01:19,598 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 14:01:19,598 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:01:19,598 INFO L195 NwaCegarLoop]: 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] [2022-04-28 14:01:19,614 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-28 14:01:19,798 WARN L477 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-28 14:01:19,798 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:01:19,798 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:01:19,799 INFO L85 PathProgramCache]: Analyzing trace with hash 1680888588, now seen corresponding path program 1 times [2022-04-28 14:01:19,799 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:01:19,799 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1796905296] [2022-04-28 14:01:25,849 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:01:25,849 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:01:25,850 INFO L85 PathProgramCache]: Analyzing trace with hash 1680888588, now seen corresponding path program 2 times [2022-04-28 14:01:25,850 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:01:25,850 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1283274951] [2022-04-28 14:01:25,850 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:01:25,850 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:01:25,858 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:01:25,858 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [734747069] [2022-04-28 14:01:25,858 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:01:25,858 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:01:25,858 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:01:25,859 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-28 14:01:25,865 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-28 14:01:25,900 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:01:25,900 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:01:25,900 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 14:01:25,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:01:25,911 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:01:26,256 INFO L272 TraceCheckUtils]: 0: Hoare triple {4932#true} call ULTIMATE.init(); {4932#true} is VALID [2022-04-28 14:01:26,256 INFO L290 TraceCheckUtils]: 1: Hoare triple {4932#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; {4932#true} is VALID [2022-04-28 14:01:26,256 INFO L290 TraceCheckUtils]: 2: Hoare triple {4932#true} assume true; {4932#true} is VALID [2022-04-28 14:01:26,256 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4932#true} {4932#true} #77#return; {4932#true} is VALID [2022-04-28 14:01:26,256 INFO L272 TraceCheckUtils]: 4: Hoare triple {4932#true} call #t~ret7 := main(); {4932#true} is VALID [2022-04-28 14:01:26,256 INFO L290 TraceCheckUtils]: 5: Hoare triple {4932#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4932#true} is VALID [2022-04-28 14:01:26,257 INFO L272 TraceCheckUtils]: 6: Hoare triple {4932#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4932#true} is VALID [2022-04-28 14:01:26,257 INFO L290 TraceCheckUtils]: 7: Hoare triple {4932#true} ~cond := #in~cond; {4958#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 14:01:26,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {4958#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4962#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 14:01:26,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {4962#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4962#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 14:01:26,258 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4962#(not (= |assume_abort_if_not_#in~cond| 0))} {4932#true} #69#return; {4969#(<= 1 main_~y~0)} is VALID [2022-04-28 14:01:26,258 INFO L290 TraceCheckUtils]: 11: Hoare triple {4969#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4973#(<= 1 main_~b~0)} is VALID [2022-04-28 14:01:26,258 INFO L290 TraceCheckUtils]: 12: Hoare triple {4973#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4973#(<= 1 main_~b~0)} is VALID [2022-04-28 14:01:26,259 INFO L290 TraceCheckUtils]: 13: Hoare triple {4973#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {4973#(<= 1 main_~b~0)} is VALID [2022-04-28 14:01:26,259 INFO L272 TraceCheckUtils]: 14: Hoare triple {4973#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4932#true} is VALID [2022-04-28 14:01:26,259 INFO L290 TraceCheckUtils]: 15: Hoare triple {4932#true} ~cond := #in~cond; {4932#true} is VALID [2022-04-28 14:01:26,259 INFO L290 TraceCheckUtils]: 16: Hoare triple {4932#true} assume !(0 == ~cond); {4932#true} is VALID [2022-04-28 14:01:26,259 INFO L290 TraceCheckUtils]: 17: Hoare triple {4932#true} assume true; {4932#true} is VALID [2022-04-28 14:01:26,259 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4932#true} {4973#(<= 1 main_~b~0)} #71#return; {4973#(<= 1 main_~b~0)} is VALID [2022-04-28 14:01:26,260 INFO L290 TraceCheckUtils]: 19: Hoare triple {4973#(<= 1 main_~b~0)} assume !!(0 != ~a~0 && 0 != ~b~0); {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 14:01:26,261 INFO L290 TraceCheckUtils]: 20: Hoare triple {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 14:01:26,261 INFO L290 TraceCheckUtils]: 21: Hoare triple {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 14:01:26,262 INFO L290 TraceCheckUtils]: 22: Hoare triple {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume !!(#t~post6 < 10);havoc #t~post6; {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 14:01:26,262 INFO L272 TraceCheckUtils]: 23: Hoare triple {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4932#true} is VALID [2022-04-28 14:01:26,262 INFO L290 TraceCheckUtils]: 24: Hoare triple {4932#true} ~cond := #in~cond; {4932#true} is VALID [2022-04-28 14:01:26,262 INFO L290 TraceCheckUtils]: 25: Hoare triple {4932#true} assume !(0 == ~cond); {4932#true} is VALID [2022-04-28 14:01:26,262 INFO L290 TraceCheckUtils]: 26: Hoare triple {4932#true} assume true; {4932#true} is VALID [2022-04-28 14:01:26,262 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {4932#true} {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} #71#return; {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 14:01:26,263 INFO L290 TraceCheckUtils]: 28: Hoare triple {4998#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume !(0 != ~a~0 && 0 != ~b~0); {4933#false} is VALID [2022-04-28 14:01:26,263 INFO L272 TraceCheckUtils]: 29: Hoare triple {4933#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4933#false} is VALID [2022-04-28 14:01:26,263 INFO L290 TraceCheckUtils]: 30: Hoare triple {4933#false} ~cond := #in~cond; {4933#false} is VALID [2022-04-28 14:01:26,263 INFO L290 TraceCheckUtils]: 31: Hoare triple {4933#false} assume 0 == ~cond; {4933#false} is VALID [2022-04-28 14:01:26,263 INFO L290 TraceCheckUtils]: 32: Hoare triple {4933#false} assume !false; {4933#false} is VALID [2022-04-28 14:01:26,263 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 14:01:26,263 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 14:01:26,263 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:01:26,263 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1283274951] [2022-04-28 14:01:26,263 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:01:26,263 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [734747069] [2022-04-28 14:01:26,263 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [734747069] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:01:26,264 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:01:26,264 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 14:01:26,264 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:01:26,264 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1796905296] [2022-04-28 14:01:26,264 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1796905296] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:01:26,264 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:01:26,264 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 14:01:26,264 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [813016737] [2022-04-28 14:01:26,264 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:01:26,264 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 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 33 [2022-04-28 14:01:26,264 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:01:26,265 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 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-28 14:01:26,286 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-28 14:01:26,287 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 14:01:26,287 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:01:26,287 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 14:01:26,287 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-04-28 14:01:26,301 INFO L87 Difference]: Start difference. First operand 81 states and 100 transitions. Second operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 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-28 14:01:26,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:01:26,608 INFO L93 Difference]: Finished difference Result 97 states and 121 transitions. [2022-04-28 14:01:26,608 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 14:01:26,608 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 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 33 [2022-04-28 14:01:26,609 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:01:26,609 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 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-28 14:01:26,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-28 14:01:26,609 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 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-28 14:01:26,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-28 14:01:26,610 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 65 transitions. [2022-04-28 14:01:26,666 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:01:26,668 INFO L225 Difference]: With dead ends: 97 [2022-04-28 14:01:26,668 INFO L226 Difference]: Without dead ends: 90 [2022-04-28 14:01:26,668 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 26 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-04-28 14:01:26,669 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 30 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 81 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 81 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 14:01:26,669 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 115 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 81 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 14:01:26,669 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-28 14:01:26,754 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 85. [2022-04-28 14:01:26,754 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:01:26,754 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 85 states, 62 states have (on average 1.3064516129032258) internal successors, (81), 66 states have internal predecessors, (81), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:01:26,754 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 85 states, 62 states have (on average 1.3064516129032258) internal successors, (81), 66 states have internal predecessors, (81), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:01:26,755 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 85 states, 62 states have (on average 1.3064516129032258) internal successors, (81), 66 states have internal predecessors, (81), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:01:26,756 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:01:26,756 INFO L93 Difference]: Finished difference Result 90 states and 114 transitions. [2022-04-28 14:01:26,756 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 114 transitions. [2022-04-28 14:01:26,756 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:01:26,756 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:01:26,757 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 62 states have (on average 1.3064516129032258) internal successors, (81), 66 states have internal predecessors, (81), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) Second operand 90 states. [2022-04-28 14:01:26,757 INFO L87 Difference]: Start difference. First operand has 85 states, 62 states have (on average 1.3064516129032258) internal successors, (81), 66 states have internal predecessors, (81), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) Second operand 90 states. [2022-04-28 14:01:26,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:01:26,758 INFO L93 Difference]: Finished difference Result 90 states and 114 transitions. [2022-04-28 14:01:26,758 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 114 transitions. [2022-04-28 14:01:26,759 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:01:26,759 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:01:26,759 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:01:26,759 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:01:26,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 62 states have (on average 1.3064516129032258) internal successors, (81), 66 states have internal predecessors, (81), 14 states have call successors, (14), 9 states have call predecessors, (14), 8 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:01:26,760 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 106 transitions. [2022-04-28 14:01:26,760 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 106 transitions. Word has length 33 [2022-04-28 14:01:26,760 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:01:26,760 INFO L495 AbstractCegarLoop]: Abstraction has 85 states and 106 transitions. [2022-04-28 14:01:26,760 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 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-28 14:01:26,760 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 85 states and 106 transitions. [2022-04-28 14:01:29,057 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 105 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 14:01:29,057 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 106 transitions. [2022-04-28 14:01:29,058 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-28 14:01:29,058 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:01:29,058 INFO L195 NwaCegarLoop]: 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, 1] [2022-04-28 14:01:29,076 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-28 14:01:29,258 WARN L477 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-28 14:01:29,259 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:01:29,259 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:01:29,259 INFO L85 PathProgramCache]: Analyzing trace with hash 368374993, now seen corresponding path program 1 times [2022-04-28 14:01:29,259 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:01:29,259 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1717308567] [2022-04-28 14:01:35,317 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:01:35,317 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:01:35,317 INFO L85 PathProgramCache]: Analyzing trace with hash 368374993, now seen corresponding path program 2 times [2022-04-28 14:01:35,317 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:01:35,317 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1678341762] [2022-04-28 14:01:35,318 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:01:35,318 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:01:35,340 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:01:35,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [503892806] [2022-04-28 14:01:35,340 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:01:35,341 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:01:35,341 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:01:35,344 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-28 14:01:35,353 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-28 14:01:35,387 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:01:35,387 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:01:35,388 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 14:01:35,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:01:35,396 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:01:45,579 INFO L272 TraceCheckUtils]: 0: Hoare triple {5587#true} call ULTIMATE.init(); {5587#true} is VALID [2022-04-28 14:01:45,579 INFO L290 TraceCheckUtils]: 1: Hoare triple {5587#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; {5587#true} is VALID [2022-04-28 14:01:45,579 INFO L290 TraceCheckUtils]: 2: Hoare triple {5587#true} assume true; {5587#true} is VALID [2022-04-28 14:01:45,579 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5587#true} {5587#true} #77#return; {5587#true} is VALID [2022-04-28 14:01:45,579 INFO L272 TraceCheckUtils]: 4: Hoare triple {5587#true} call #t~ret7 := main(); {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L290 TraceCheckUtils]: 5: Hoare triple {5587#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L272 TraceCheckUtils]: 6: Hoare triple {5587#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L290 TraceCheckUtils]: 7: Hoare triple {5587#true} ~cond := #in~cond; {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L290 TraceCheckUtils]: 8: Hoare triple {5587#true} assume !(0 == ~cond); {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L290 TraceCheckUtils]: 9: Hoare triple {5587#true} assume true; {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5587#true} {5587#true} #69#return; {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L290 TraceCheckUtils]: 11: Hoare triple {5587#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L290 TraceCheckUtils]: 12: Hoare triple {5587#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L290 TraceCheckUtils]: 13: Hoare triple {5587#true} assume !!(#t~post6 < 10);havoc #t~post6; {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L272 TraceCheckUtils]: 14: Hoare triple {5587#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L290 TraceCheckUtils]: 15: Hoare triple {5587#true} ~cond := #in~cond; {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L290 TraceCheckUtils]: 16: Hoare triple {5587#true} assume !(0 == ~cond); {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L290 TraceCheckUtils]: 17: Hoare triple {5587#true} assume true; {5587#true} is VALID [2022-04-28 14:01:45,580 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5587#true} {5587#true} #71#return; {5587#true} is VALID [2022-04-28 14:01:45,581 INFO L290 TraceCheckUtils]: 19: Hoare triple {5587#true} assume !!(0 != ~a~0 && 0 != ~b~0); {5649#(not (= main_~a~0 0))} is VALID [2022-04-28 14:01:45,581 INFO L290 TraceCheckUtils]: 20: Hoare triple {5649#(not (= main_~a~0 0))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {5649#(not (= main_~a~0 0))} is VALID [2022-04-28 14:01:45,581 INFO L290 TraceCheckUtils]: 21: Hoare triple {5649#(not (= main_~a~0 0))} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {5649#(not (= main_~a~0 0))} is VALID [2022-04-28 14:01:45,581 INFO L290 TraceCheckUtils]: 22: Hoare triple {5649#(not (= main_~a~0 0))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~b~0 := ~b~0 - 1;~q~0 := ~q~0 + ~a~0 * ~p~0; {5649#(not (= main_~a~0 0))} is VALID [2022-04-28 14:01:45,582 INFO L290 TraceCheckUtils]: 23: Hoare triple {5649#(not (= main_~a~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5649#(not (= main_~a~0 0))} is VALID [2022-04-28 14:01:45,582 INFO L290 TraceCheckUtils]: 24: Hoare triple {5649#(not (= main_~a~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {5649#(not (= main_~a~0 0))} is VALID [2022-04-28 14:01:45,582 INFO L272 TraceCheckUtils]: 25: Hoare triple {5649#(not (= main_~a~0 0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {5587#true} is VALID [2022-04-28 14:01:45,582 INFO L290 TraceCheckUtils]: 26: Hoare triple {5587#true} ~cond := #in~cond; {5671#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:01:45,583 INFO L290 TraceCheckUtils]: 27: Hoare triple {5671#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {5675#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:01:45,583 INFO L290 TraceCheckUtils]: 28: Hoare triple {5675#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5675#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:01:47,586 WARN L284 TraceCheckUtils]: 29: Hoare quadruple {5675#(not (= |__VERIFIER_assert_#in~cond| 0))} {5649#(not (= main_~a~0 0))} #71#return; {5682#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~b~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (not (= main_~a~0 0)))} is UNKNOWN [2022-04-28 14:01:47,587 INFO L290 TraceCheckUtils]: 30: Hoare triple {5682#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~b~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (not (= main_~a~0 0)))} assume !(0 != ~a~0 && 0 != ~b~0); {5686#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:01:47,587 INFO L272 TraceCheckUtils]: 31: Hoare triple {5686#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {5690#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:01:47,588 INFO L290 TraceCheckUtils]: 32: Hoare triple {5690#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5694#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:01:47,588 INFO L290 TraceCheckUtils]: 33: Hoare triple {5694#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5588#false} is VALID [2022-04-28 14:01:47,588 INFO L290 TraceCheckUtils]: 34: Hoare triple {5588#false} assume !false; {5588#false} is VALID [2022-04-28 14:01:47,588 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 10 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 14:01:47,588 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:02:13,394 INFO L290 TraceCheckUtils]: 34: Hoare triple {5588#false} assume !false; {5588#false} is VALID [2022-04-28 14:02:13,394 INFO L290 TraceCheckUtils]: 33: Hoare triple {5694#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5588#false} is VALID [2022-04-28 14:02:13,394 INFO L290 TraceCheckUtils]: 32: Hoare triple {5690#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5694#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:02:13,395 INFO L272 TraceCheckUtils]: 31: Hoare triple {5686#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {5690#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:02:13,395 INFO L290 TraceCheckUtils]: 30: Hoare triple {5713#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {5686#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:02:13,397 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {5675#(not (= |__VERIFIER_assert_#in~cond| 0))} {5587#true} #71#return; {5713#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-28 14:02:13,397 INFO L290 TraceCheckUtils]: 28: Hoare triple {5675#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5675#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:02:13,398 INFO L290 TraceCheckUtils]: 27: Hoare triple {5726#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {5675#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:02:13,398 INFO L290 TraceCheckUtils]: 26: Hoare triple {5587#true} ~cond := #in~cond; {5726#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 14:02:13,398 INFO L272 TraceCheckUtils]: 25: Hoare triple {5587#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {5587#true} is VALID [2022-04-28 14:02:13,398 INFO L290 TraceCheckUtils]: 24: Hoare triple {5587#true} assume !!(#t~post6 < 10);havoc #t~post6; {5587#true} is VALID [2022-04-28 14:02:13,398 INFO L290 TraceCheckUtils]: 23: Hoare triple {5587#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5587#true} is VALID [2022-04-28 14:02:13,398 INFO L290 TraceCheckUtils]: 22: Hoare triple {5587#true} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~b~0 := ~b~0 - 1;~q~0 := ~q~0 + ~a~0 * ~p~0; {5587#true} is VALID [2022-04-28 14:02:13,398 INFO L290 TraceCheckUtils]: 21: Hoare triple {5587#true} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {5587#true} is VALID [2022-04-28 14:02:13,398 INFO L290 TraceCheckUtils]: 20: Hoare triple {5587#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {5587#true} is VALID [2022-04-28 14:02:13,398 INFO L290 TraceCheckUtils]: 19: Hoare triple {5587#true} assume !!(0 != ~a~0 && 0 != ~b~0); {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5587#true} {5587#true} #71#return; {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L290 TraceCheckUtils]: 17: Hoare triple {5587#true} assume true; {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L290 TraceCheckUtils]: 16: Hoare triple {5587#true} assume !(0 == ~cond); {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L290 TraceCheckUtils]: 15: Hoare triple {5587#true} ~cond := #in~cond; {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L272 TraceCheckUtils]: 14: Hoare triple {5587#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L290 TraceCheckUtils]: 13: Hoare triple {5587#true} assume !!(#t~post6 < 10);havoc #t~post6; {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L290 TraceCheckUtils]: 12: Hoare triple {5587#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L290 TraceCheckUtils]: 11: Hoare triple {5587#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5587#true} {5587#true} #69#return; {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L290 TraceCheckUtils]: 9: Hoare triple {5587#true} assume true; {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L290 TraceCheckUtils]: 8: Hoare triple {5587#true} assume !(0 == ~cond); {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L290 TraceCheckUtils]: 7: Hoare triple {5587#true} ~cond := #in~cond; {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L272 TraceCheckUtils]: 6: Hoare triple {5587#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L290 TraceCheckUtils]: 5: Hoare triple {5587#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L272 TraceCheckUtils]: 4: Hoare triple {5587#true} call #t~ret7 := main(); {5587#true} is VALID [2022-04-28 14:02:13,399 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5587#true} {5587#true} #77#return; {5587#true} is VALID [2022-04-28 14:02:13,400 INFO L290 TraceCheckUtils]: 2: Hoare triple {5587#true} assume true; {5587#true} is VALID [2022-04-28 14:02:13,400 INFO L290 TraceCheckUtils]: 1: Hoare triple {5587#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; {5587#true} is VALID [2022-04-28 14:02:13,400 INFO L272 TraceCheckUtils]: 0: Hoare triple {5587#true} call ULTIMATE.init(); {5587#true} is VALID [2022-04-28 14:02:13,400 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-28 14:02:13,400 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:02:13,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1678341762] [2022-04-28 14:02:13,400 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:02:13,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [503892806] [2022-04-28 14:02:13,400 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [503892806] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:02:13,400 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:02:13,400 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 11 [2022-04-28 14:02:13,400 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:02:13,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1717308567] [2022-04-28 14:02:13,401 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1717308567] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:02:13,401 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:02:13,401 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 14:02:13,401 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [799247889] [2022-04-28 14:02:13,401 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:02:13,401 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 35 [2022-04-28 14:02:13,401 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:02:13,401 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 14:02:15,427 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-28 14:02:15,427 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 14:02:15,427 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:02:15,427 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 14:02:15,428 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-28 14:02:15,428 INFO L87 Difference]: Start difference. First operand 85 states and 106 transitions. Second operand has 9 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 14:02:18,338 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 14:02:18,670 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:02:18,671 INFO L93 Difference]: Finished difference Result 103 states and 133 transitions. [2022-04-28 14:02:18,671 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 14:02:18,671 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 35 [2022-04-28 14:02:18,671 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:02:18,671 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 14:02:18,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 56 transitions. [2022-04-28 14:02:18,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 14:02:18,673 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 56 transitions. [2022-04-28 14:02:18,673 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 56 transitions. [2022-04-28 14:02:20,723 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 55 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 14:02:20,725 INFO L225 Difference]: With dead ends: 103 [2022-04-28 14:02:20,725 INFO L226 Difference]: Without dead ends: 101 [2022-04-28 14:02:20,725 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 59 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-28 14:02:20,725 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 16 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 8 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 125 SdHoareTripleChecker+Invalid, 156 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.6s IncrementalHoareTripleChecker+Time [2022-04-28 14:02:20,726 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 125 Invalid, 156 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 147 Invalid, 1 Unknown, 0 Unchecked, 2.6s Time] [2022-04-28 14:02:20,726 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2022-04-28 14:02:20,813 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 94. [2022-04-28 14:02:20,813 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:02:20,814 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand has 94 states, 68 states have (on average 1.3088235294117647) internal successors, (89), 73 states have internal predecessors, (89), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 14:02:20,814 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand has 94 states, 68 states have (on average 1.3088235294117647) internal successors, (89), 73 states have internal predecessors, (89), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 14:02:20,814 INFO L87 Difference]: Start difference. First operand 101 states. Second operand has 94 states, 68 states have (on average 1.3088235294117647) internal successors, (89), 73 states have internal predecessors, (89), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 14:02:20,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:02:20,816 INFO L93 Difference]: Finished difference Result 101 states and 131 transitions. [2022-04-28 14:02:20,816 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 131 transitions. [2022-04-28 14:02:20,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:02:20,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:02:20,816 INFO L74 IsIncluded]: Start isIncluded. First operand has 94 states, 68 states have (on average 1.3088235294117647) internal successors, (89), 73 states have internal predecessors, (89), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 101 states. [2022-04-28 14:02:20,816 INFO L87 Difference]: Start difference. First operand has 94 states, 68 states have (on average 1.3088235294117647) internal successors, (89), 73 states have internal predecessors, (89), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 101 states. [2022-04-28 14:02:20,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:02:20,818 INFO L93 Difference]: Finished difference Result 101 states and 131 transitions. [2022-04-28 14:02:20,818 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 131 transitions. [2022-04-28 14:02:20,818 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:02:20,818 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:02:20,818 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:02:20,819 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:02:20,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 68 states have (on average 1.3088235294117647) internal successors, (89), 73 states have internal predecessors, (89), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 14:02:20,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 118 transitions. [2022-04-28 14:02:20,820 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 118 transitions. Word has length 35 [2022-04-28 14:02:20,820 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:02:20,820 INFO L495 AbstractCegarLoop]: Abstraction has 94 states and 118 transitions. [2022-04-28 14:02:20,820 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 14:02:20,820 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 94 states and 118 transitions. [2022-04-28 14:02:27,148 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 115 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 14:02:27,149 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 118 transitions. [2022-04-28 14:02:27,149 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-28 14:02:27,149 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:02:27,149 INFO L195 NwaCegarLoop]: 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, 1] [2022-04-28 14:02:27,167 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-28 14:02:27,351 WARN L477 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-28 14:02:27,351 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:02:27,352 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:02:27,352 INFO L85 PathProgramCache]: Analyzing trace with hash -218431021, now seen corresponding path program 1 times [2022-04-28 14:02:27,352 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:02:27,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [703423337] [2022-04-28 14:02:33,404 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:02:33,404 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:02:33,404 INFO L85 PathProgramCache]: Analyzing trace with hash -218431021, now seen corresponding path program 2 times [2022-04-28 14:02:33,404 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:02:33,405 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [804942074] [2022-04-28 14:02:33,405 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:02:33,405 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:02:33,412 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:02:33,413 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1556435228] [2022-04-28 14:02:33,413 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:02:33,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:02:33,413 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:02:33,414 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-28 14:02:33,415 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-28 14:02:33,452 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:02:33,452 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:02:33,453 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 14:02:33,461 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:02:33,462 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:02:43,646 INFO L272 TraceCheckUtils]: 0: Hoare triple {6409#true} call ULTIMATE.init(); {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 1: Hoare triple {6409#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; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 2: Hoare triple {6409#true} assume true; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6409#true} {6409#true} #77#return; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L272 TraceCheckUtils]: 4: Hoare triple {6409#true} call #t~ret7 := main(); {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 5: Hoare triple {6409#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L272 TraceCheckUtils]: 6: Hoare triple {6409#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 7: Hoare triple {6409#true} ~cond := #in~cond; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 8: Hoare triple {6409#true} assume !(0 == ~cond); {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 9: Hoare triple {6409#true} assume true; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6409#true} {6409#true} #69#return; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 11: Hoare triple {6409#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 12: Hoare triple {6409#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 13: Hoare triple {6409#true} assume !!(#t~post6 < 10);havoc #t~post6; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L272 TraceCheckUtils]: 14: Hoare triple {6409#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 15: Hoare triple {6409#true} ~cond := #in~cond; {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 16: Hoare triple {6409#true} assume !(0 == ~cond); {6409#true} is VALID [2022-04-28 14:02:43,647 INFO L290 TraceCheckUtils]: 17: Hoare triple {6409#true} assume true; {6409#true} is VALID [2022-04-28 14:02:43,648 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6409#true} {6409#true} #71#return; {6409#true} is VALID [2022-04-28 14:02:43,648 INFO L290 TraceCheckUtils]: 19: Hoare triple {6409#true} assume !!(0 != ~a~0 && 0 != ~b~0); {6409#true} is VALID [2022-04-28 14:02:43,648 INFO L290 TraceCheckUtils]: 20: Hoare triple {6409#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {6409#true} is VALID [2022-04-28 14:02:43,648 INFO L290 TraceCheckUtils]: 21: Hoare triple {6409#true} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {6409#true} is VALID [2022-04-28 14:02:43,648 INFO L290 TraceCheckUtils]: 22: Hoare triple {6409#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2));~a~0 := ~a~0 - 1;~b~0 := ~b~0 - 1;~q~0 := ~q~0 + (1 + (~a~0 + ~b~0)) * ~p~0; {6409#true} is VALID [2022-04-28 14:02:43,648 INFO L290 TraceCheckUtils]: 23: Hoare triple {6409#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6409#true} is VALID [2022-04-28 14:02:43,648 INFO L290 TraceCheckUtils]: 24: Hoare triple {6409#true} assume !!(#t~post6 < 10);havoc #t~post6; {6409#true} is VALID [2022-04-28 14:02:43,648 INFO L272 TraceCheckUtils]: 25: Hoare triple {6409#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {6409#true} is VALID [2022-04-28 14:02:43,648 INFO L290 TraceCheckUtils]: 26: Hoare triple {6409#true} ~cond := #in~cond; {6492#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:02:43,649 INFO L290 TraceCheckUtils]: 27: Hoare triple {6492#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6496#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:02:43,649 INFO L290 TraceCheckUtils]: 28: Hoare triple {6496#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6496#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:02:45,652 WARN L284 TraceCheckUtils]: 29: Hoare quadruple {6496#(not (= |__VERIFIER_assert_#in~cond| 0))} {6409#true} #71#return; {6503#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is UNKNOWN [2022-04-28 14:02:45,653 INFO L290 TraceCheckUtils]: 30: Hoare triple {6503#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {6507#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:02:45,653 INFO L272 TraceCheckUtils]: 31: Hoare triple {6507#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {6511#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:02:45,653 INFO L290 TraceCheckUtils]: 32: Hoare triple {6511#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6515#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:02:45,654 INFO L290 TraceCheckUtils]: 33: Hoare triple {6515#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6410#false} is VALID [2022-04-28 14:02:45,654 INFO L290 TraceCheckUtils]: 34: Hoare triple {6410#false} assume !false; {6410#false} is VALID [2022-04-28 14:02:45,654 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-28 14:02:45,654 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:03:19,460 INFO L290 TraceCheckUtils]: 34: Hoare triple {6410#false} assume !false; {6410#false} is VALID [2022-04-28 14:03:19,461 INFO L290 TraceCheckUtils]: 33: Hoare triple {6515#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6410#false} is VALID [2022-04-28 14:03:19,461 INFO L290 TraceCheckUtils]: 32: Hoare triple {6511#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6515#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:03:19,462 INFO L272 TraceCheckUtils]: 31: Hoare triple {6507#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {6511#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:03:19,462 INFO L290 TraceCheckUtils]: 30: Hoare triple {6534#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {6507#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-28 14:03:19,464 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {6496#(not (= |__VERIFIER_assert_#in~cond| 0))} {6409#true} #71#return; {6534#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-28 14:03:19,465 INFO L290 TraceCheckUtils]: 28: Hoare triple {6496#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6496#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:03:19,465 INFO L290 TraceCheckUtils]: 27: Hoare triple {6547#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6496#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 14:03:19,465 INFO L290 TraceCheckUtils]: 26: Hoare triple {6409#true} ~cond := #in~cond; {6547#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 14:03:19,465 INFO L272 TraceCheckUtils]: 25: Hoare triple {6409#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {6409#true} is VALID [2022-04-28 14:03:19,465 INFO L290 TraceCheckUtils]: 24: Hoare triple {6409#true} assume !!(#t~post6 < 10);havoc #t~post6; {6409#true} is VALID [2022-04-28 14:03:19,465 INFO L290 TraceCheckUtils]: 23: Hoare triple {6409#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6409#true} is VALID [2022-04-28 14:03:19,465 INFO L290 TraceCheckUtils]: 22: Hoare triple {6409#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2));~a~0 := ~a~0 - 1;~b~0 := ~b~0 - 1;~q~0 := ~q~0 + (1 + (~a~0 + ~b~0)) * ~p~0; {6409#true} is VALID [2022-04-28 14:03:19,465 INFO L290 TraceCheckUtils]: 21: Hoare triple {6409#true} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 20: Hoare triple {6409#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 19: Hoare triple {6409#true} assume !!(0 != ~a~0 && 0 != ~b~0); {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6409#true} {6409#true} #71#return; {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 17: Hoare triple {6409#true} assume true; {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 16: Hoare triple {6409#true} assume !(0 == ~cond); {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 15: Hoare triple {6409#true} ~cond := #in~cond; {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L272 TraceCheckUtils]: 14: Hoare triple {6409#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 13: Hoare triple {6409#true} assume !!(#t~post6 < 10);havoc #t~post6; {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 12: Hoare triple {6409#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 11: Hoare triple {6409#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6409#true} {6409#true} #69#return; {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 9: Hoare triple {6409#true} assume true; {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 8: Hoare triple {6409#true} assume !(0 == ~cond); {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 7: Hoare triple {6409#true} ~cond := #in~cond; {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L272 TraceCheckUtils]: 6: Hoare triple {6409#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {6409#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6409#true} is VALID [2022-04-28 14:03:19,466 INFO L272 TraceCheckUtils]: 4: Hoare triple {6409#true} call #t~ret7 := main(); {6409#true} is VALID [2022-04-28 14:03:19,467 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6409#true} {6409#true} #77#return; {6409#true} is VALID [2022-04-28 14:03:19,467 INFO L290 TraceCheckUtils]: 2: Hoare triple {6409#true} assume true; {6409#true} is VALID [2022-04-28 14:03:19,467 INFO L290 TraceCheckUtils]: 1: Hoare triple {6409#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; {6409#true} is VALID [2022-04-28 14:03:19,467 INFO L272 TraceCheckUtils]: 0: Hoare triple {6409#true} call ULTIMATE.init(); {6409#true} is VALID [2022-04-28 14:03:19,467 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-28 14:03:19,467 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:03:19,467 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [804942074] [2022-04-28 14:03:19,467 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:03:19,467 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1556435228] [2022-04-28 14:03:19,467 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1556435228] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:03:19,467 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:03:19,467 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-28 14:03:19,467 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:03:19,467 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [703423337] [2022-04-28 14:03:19,468 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [703423337] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:03:19,468 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:03:19,468 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 14:03:19,468 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1835249494] [2022-04-28 14:03:19,468 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:03:19,468 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 6 states have internal predecessors, (23), 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 35 [2022-04-28 14:03:19,468 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:03:19,468 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 6 states have internal predecessors, (23), 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-28 14:03:21,491 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 31 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 14:03:21,492 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 14:03:21,492 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:03:21,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 14:03:21,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-28 14:03:21,492 INFO L87 Difference]: Start difference. First operand 94 states and 118 transitions. Second operand has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 6 states have internal predecessors, (23), 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-28 14:03:24,041 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 14:03:27,753 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 14:03:27,901 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:03:27,901 INFO L93 Difference]: Finished difference Result 101 states and 125 transitions. [2022-04-28 14:03:27,901 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 14:03:27,901 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 6 states have internal predecessors, (23), 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 35 [2022-04-28 14:03:27,902 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:03:27,902 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 6 states have internal predecessors, (23), 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-28 14:03:27,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 44 transitions. [2022-04-28 14:03:27,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 6 states have internal predecessors, (23), 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-28 14:03:27,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 44 transitions. [2022-04-28 14:03:27,903 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 44 transitions. [2022-04-28 14:03:29,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 43 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 14:03:29,946 INFO L225 Difference]: With dead ends: 101 [2022-04-28 14:03:29,946 INFO L226 Difference]: Without dead ends: 98 [2022-04-28 14:03:29,947 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 71 GetRequests, 60 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-28 14:03:29,947 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 15 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 3 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 117 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.0s IncrementalHoareTripleChecker+Time [2022-04-28 14:03:29,947 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [16 Valid, 121 Invalid, 117 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 112 Invalid, 2 Unknown, 0 Unchecked, 5.0s Time] [2022-04-28 14:03:29,948 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-28 14:03:30,017 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 72. [2022-04-28 14:03:30,017 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:03:30,017 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 72 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 55 states have internal predecessors, (66), 11 states have call successors, (11), 9 states have call predecessors, (11), 8 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:03:30,017 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 72 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 55 states have internal predecessors, (66), 11 states have call successors, (11), 9 states have call predecessors, (11), 8 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:03:30,017 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 72 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 55 states have internal predecessors, (66), 11 states have call successors, (11), 9 states have call predecessors, (11), 8 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:03:30,019 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:03:30,019 INFO L93 Difference]: Finished difference Result 98 states and 121 transitions. [2022-04-28 14:03:30,019 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 121 transitions. [2022-04-28 14:03:30,019 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:03:30,019 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:03:30,019 INFO L74 IsIncluded]: Start isIncluded. First operand has 72 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 55 states have internal predecessors, (66), 11 states have call successors, (11), 9 states have call predecessors, (11), 8 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 98 states. [2022-04-28 14:03:30,019 INFO L87 Difference]: Start difference. First operand has 72 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 55 states have internal predecessors, (66), 11 states have call successors, (11), 9 states have call predecessors, (11), 8 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 98 states. [2022-04-28 14:03:30,021 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:03:30,021 INFO L93 Difference]: Finished difference Result 98 states and 121 transitions. [2022-04-28 14:03:30,021 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 121 transitions. [2022-04-28 14:03:30,021 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:03:30,021 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:03:30,021 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:03:30,021 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:03:30,021 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 72 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 55 states have internal predecessors, (66), 11 states have call successors, (11), 9 states have call predecessors, (11), 8 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:03:30,022 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 86 transitions. [2022-04-28 14:03:30,022 INFO L78 Accepts]: Start accepts. Automaton has 72 states and 86 transitions. Word has length 35 [2022-04-28 14:03:30,023 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:03:30,023 INFO L495 AbstractCegarLoop]: Abstraction has 72 states and 86 transitions. [2022-04-28 14:03:30,023 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 6 states have internal predecessors, (23), 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-28 14:03:30,023 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 72 states and 86 transitions. [2022-04-28 14:03:34,306 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 84 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 14:03:34,306 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 86 transitions. [2022-04-28 14:03:34,306 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 14:03:34,306 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:03:34,306 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 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-28 14:03:34,322 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-28 14:03:34,507 WARN L477 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-28 14:03:34,507 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:03:34,507 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:03:34,507 INFO L85 PathProgramCache]: Analyzing trace with hash 604176890, now seen corresponding path program 3 times [2022-04-28 14:03:34,507 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:03:34,507 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2026656119] [2022-04-28 14:03:40,570 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:03:40,570 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:03:40,570 INFO L85 PathProgramCache]: Analyzing trace with hash 604176890, now seen corresponding path program 4 times [2022-04-28 14:03:40,570 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:03:40,570 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1599365790] [2022-04-28 14:03:40,570 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:03:40,570 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:03:40,578 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:03:40,578 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [817118074] [2022-04-28 14:03:40,578 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 14:03:40,578 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:03:40,579 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:03:40,579 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-28 14:03:40,587 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-28 14:03:40,619 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 14:03:40,619 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:03:40,620 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 14:03:40,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:03:40,628 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:03:40,770 INFO L272 TraceCheckUtils]: 0: Hoare triple {7174#true} call ULTIMATE.init(); {7174#true} is VALID [2022-04-28 14:03:40,770 INFO L290 TraceCheckUtils]: 1: Hoare triple {7174#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; {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,771 INFO L290 TraceCheckUtils]: 2: Hoare triple {7182#(<= ~counter~0 0)} assume true; {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,771 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7182#(<= ~counter~0 0)} {7174#true} #77#return; {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,771 INFO L272 TraceCheckUtils]: 4: Hoare triple {7182#(<= ~counter~0 0)} call #t~ret7 := main(); {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,772 INFO L290 TraceCheckUtils]: 5: Hoare triple {7182#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,772 INFO L272 TraceCheckUtils]: 6: Hoare triple {7182#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,772 INFO L290 TraceCheckUtils]: 7: Hoare triple {7182#(<= ~counter~0 0)} ~cond := #in~cond; {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,772 INFO L290 TraceCheckUtils]: 8: Hoare triple {7182#(<= ~counter~0 0)} assume !(0 == ~cond); {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,773 INFO L290 TraceCheckUtils]: 9: Hoare triple {7182#(<= ~counter~0 0)} assume true; {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,773 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7182#(<= ~counter~0 0)} {7182#(<= ~counter~0 0)} #69#return; {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,773 INFO L290 TraceCheckUtils]: 11: Hoare triple {7182#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {7182#(<= ~counter~0 0)} is VALID [2022-04-28 14:03:40,774 INFO L290 TraceCheckUtils]: 12: Hoare triple {7182#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7216#(<= ~counter~0 1)} is VALID [2022-04-28 14:03:40,774 INFO L290 TraceCheckUtils]: 13: Hoare triple {7216#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {7216#(<= ~counter~0 1)} is VALID [2022-04-28 14:03:40,775 INFO L272 TraceCheckUtils]: 14: Hoare triple {7216#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {7216#(<= ~counter~0 1)} is VALID [2022-04-28 14:03:40,775 INFO L290 TraceCheckUtils]: 15: Hoare triple {7216#(<= ~counter~0 1)} ~cond := #in~cond; {7216#(<= ~counter~0 1)} is VALID [2022-04-28 14:03:40,775 INFO L290 TraceCheckUtils]: 16: Hoare triple {7216#(<= ~counter~0 1)} assume !(0 == ~cond); {7216#(<= ~counter~0 1)} is VALID [2022-04-28 14:03:40,775 INFO L290 TraceCheckUtils]: 17: Hoare triple {7216#(<= ~counter~0 1)} assume true; {7216#(<= ~counter~0 1)} is VALID [2022-04-28 14:03:40,776 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7216#(<= ~counter~0 1)} {7216#(<= ~counter~0 1)} #71#return; {7216#(<= ~counter~0 1)} is VALID [2022-04-28 14:03:40,776 INFO L290 TraceCheckUtils]: 19: Hoare triple {7216#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {7216#(<= ~counter~0 1)} is VALID [2022-04-28 14:03:40,776 INFO L290 TraceCheckUtils]: 20: Hoare triple {7216#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {7216#(<= ~counter~0 1)} is VALID [2022-04-28 14:03:40,777 INFO L290 TraceCheckUtils]: 21: Hoare triple {7216#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7244#(<= ~counter~0 2)} is VALID [2022-04-28 14:03:40,777 INFO L290 TraceCheckUtils]: 22: Hoare triple {7244#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {7244#(<= ~counter~0 2)} is VALID [2022-04-28 14:03:40,777 INFO L272 TraceCheckUtils]: 23: Hoare triple {7244#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {7244#(<= ~counter~0 2)} is VALID [2022-04-28 14:03:40,778 INFO L290 TraceCheckUtils]: 24: Hoare triple {7244#(<= ~counter~0 2)} ~cond := #in~cond; {7244#(<= ~counter~0 2)} is VALID [2022-04-28 14:03:40,778 INFO L290 TraceCheckUtils]: 25: Hoare triple {7244#(<= ~counter~0 2)} assume !(0 == ~cond); {7244#(<= ~counter~0 2)} is VALID [2022-04-28 14:03:40,778 INFO L290 TraceCheckUtils]: 26: Hoare triple {7244#(<= ~counter~0 2)} assume true; {7244#(<= ~counter~0 2)} is VALID [2022-04-28 14:03:40,779 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {7244#(<= ~counter~0 2)} {7244#(<= ~counter~0 2)} #71#return; {7244#(<= ~counter~0 2)} is VALID [2022-04-28 14:03:40,779 INFO L290 TraceCheckUtils]: 28: Hoare triple {7244#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {7244#(<= ~counter~0 2)} is VALID [2022-04-28 14:03:40,779 INFO L290 TraceCheckUtils]: 29: Hoare triple {7244#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {7244#(<= ~counter~0 2)} is VALID [2022-04-28 14:03:40,779 INFO L290 TraceCheckUtils]: 30: Hoare triple {7244#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7272#(<= |main_#t~post6| 2)} is VALID [2022-04-28 14:03:40,780 INFO L290 TraceCheckUtils]: 31: Hoare triple {7272#(<= |main_#t~post6| 2)} assume !(#t~post6 < 10);havoc #t~post6; {7175#false} is VALID [2022-04-28 14:03:40,780 INFO L272 TraceCheckUtils]: 32: Hoare triple {7175#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {7175#false} is VALID [2022-04-28 14:03:40,780 INFO L290 TraceCheckUtils]: 33: Hoare triple {7175#false} ~cond := #in~cond; {7175#false} is VALID [2022-04-28 14:03:40,780 INFO L290 TraceCheckUtils]: 34: Hoare triple {7175#false} assume 0 == ~cond; {7175#false} is VALID [2022-04-28 14:03:40,780 INFO L290 TraceCheckUtils]: 35: Hoare triple {7175#false} assume !false; {7175#false} is VALID [2022-04-28 14:03:40,780 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 4 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 14:03:40,780 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:03:40,940 INFO L290 TraceCheckUtils]: 35: Hoare triple {7175#false} assume !false; {7175#false} is VALID [2022-04-28 14:03:40,941 INFO L290 TraceCheckUtils]: 34: Hoare triple {7175#false} assume 0 == ~cond; {7175#false} is VALID [2022-04-28 14:03:40,941 INFO L290 TraceCheckUtils]: 33: Hoare triple {7175#false} ~cond := #in~cond; {7175#false} is VALID [2022-04-28 14:03:40,941 INFO L272 TraceCheckUtils]: 32: Hoare triple {7175#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {7175#false} is VALID [2022-04-28 14:03:40,941 INFO L290 TraceCheckUtils]: 31: Hoare triple {7300#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {7175#false} is VALID [2022-04-28 14:03:40,941 INFO L290 TraceCheckUtils]: 30: Hoare triple {7304#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7300#(< |main_#t~post6| 10)} is VALID [2022-04-28 14:03:40,942 INFO L290 TraceCheckUtils]: 29: Hoare triple {7304#(< ~counter~0 10)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {7304#(< ~counter~0 10)} is VALID [2022-04-28 14:03:40,942 INFO L290 TraceCheckUtils]: 28: Hoare triple {7304#(< ~counter~0 10)} assume !!(0 != ~a~0 && 0 != ~b~0); {7304#(< ~counter~0 10)} is VALID [2022-04-28 14:03:40,942 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {7174#true} {7304#(< ~counter~0 10)} #71#return; {7304#(< ~counter~0 10)} is VALID [2022-04-28 14:03:40,943 INFO L290 TraceCheckUtils]: 26: Hoare triple {7174#true} assume true; {7174#true} is VALID [2022-04-28 14:03:40,943 INFO L290 TraceCheckUtils]: 25: Hoare triple {7174#true} assume !(0 == ~cond); {7174#true} is VALID [2022-04-28 14:03:40,943 INFO L290 TraceCheckUtils]: 24: Hoare triple {7174#true} ~cond := #in~cond; {7174#true} is VALID [2022-04-28 14:03:40,943 INFO L272 TraceCheckUtils]: 23: Hoare triple {7304#(< ~counter~0 10)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {7174#true} is VALID [2022-04-28 14:03:40,943 INFO L290 TraceCheckUtils]: 22: Hoare triple {7304#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {7304#(< ~counter~0 10)} is VALID [2022-04-28 14:03:40,943 INFO L290 TraceCheckUtils]: 21: Hoare triple {7332#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7304#(< ~counter~0 10)} is VALID [2022-04-28 14:03:40,944 INFO L290 TraceCheckUtils]: 20: Hoare triple {7332#(< ~counter~0 9)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {7332#(< ~counter~0 9)} is VALID [2022-04-28 14:03:40,944 INFO L290 TraceCheckUtils]: 19: Hoare triple {7332#(< ~counter~0 9)} assume !!(0 != ~a~0 && 0 != ~b~0); {7332#(< ~counter~0 9)} is VALID [2022-04-28 14:03:40,945 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7174#true} {7332#(< ~counter~0 9)} #71#return; {7332#(< ~counter~0 9)} is VALID [2022-04-28 14:03:40,945 INFO L290 TraceCheckUtils]: 17: Hoare triple {7174#true} assume true; {7174#true} is VALID [2022-04-28 14:03:40,945 INFO L290 TraceCheckUtils]: 16: Hoare triple {7174#true} assume !(0 == ~cond); {7174#true} is VALID [2022-04-28 14:03:40,945 INFO L290 TraceCheckUtils]: 15: Hoare triple {7174#true} ~cond := #in~cond; {7174#true} is VALID [2022-04-28 14:03:40,945 INFO L272 TraceCheckUtils]: 14: Hoare triple {7332#(< ~counter~0 9)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {7174#true} is VALID [2022-04-28 14:03:40,945 INFO L290 TraceCheckUtils]: 13: Hoare triple {7332#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {7332#(< ~counter~0 9)} is VALID [2022-04-28 14:03:40,945 INFO L290 TraceCheckUtils]: 12: Hoare triple {7360#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7332#(< ~counter~0 9)} is VALID [2022-04-28 14:03:40,946 INFO L290 TraceCheckUtils]: 11: Hoare triple {7360#(< ~counter~0 8)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {7360#(< ~counter~0 8)} is VALID [2022-04-28 14:03:40,958 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7174#true} {7360#(< ~counter~0 8)} #69#return; {7360#(< ~counter~0 8)} is VALID [2022-04-28 14:03:40,959 INFO L290 TraceCheckUtils]: 9: Hoare triple {7174#true} assume true; {7174#true} is VALID [2022-04-28 14:03:40,959 INFO L290 TraceCheckUtils]: 8: Hoare triple {7174#true} assume !(0 == ~cond); {7174#true} is VALID [2022-04-28 14:03:40,959 INFO L290 TraceCheckUtils]: 7: Hoare triple {7174#true} ~cond := #in~cond; {7174#true} is VALID [2022-04-28 14:03:40,959 INFO L272 TraceCheckUtils]: 6: Hoare triple {7360#(< ~counter~0 8)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7174#true} is VALID [2022-04-28 14:03:40,959 INFO L290 TraceCheckUtils]: 5: Hoare triple {7360#(< ~counter~0 8)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7360#(< ~counter~0 8)} is VALID [2022-04-28 14:03:40,960 INFO L272 TraceCheckUtils]: 4: Hoare triple {7360#(< ~counter~0 8)} call #t~ret7 := main(); {7360#(< ~counter~0 8)} is VALID [2022-04-28 14:03:40,960 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7360#(< ~counter~0 8)} {7174#true} #77#return; {7360#(< ~counter~0 8)} is VALID [2022-04-28 14:03:40,960 INFO L290 TraceCheckUtils]: 2: Hoare triple {7360#(< ~counter~0 8)} assume true; {7360#(< ~counter~0 8)} is VALID [2022-04-28 14:03:40,961 INFO L290 TraceCheckUtils]: 1: Hoare triple {7174#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; {7360#(< ~counter~0 8)} is VALID [2022-04-28 14:03:40,961 INFO L272 TraceCheckUtils]: 0: Hoare triple {7174#true} call ULTIMATE.init(); {7174#true} is VALID [2022-04-28 14:03:40,961 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 4 proven. 9 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 14:03:40,961 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:03:40,961 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1599365790] [2022-04-28 14:03:40,961 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:03:40,961 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [817118074] [2022-04-28 14:03:40,962 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [817118074] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:03:40,962 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:03:40,962 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-28 14:03:40,962 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:03:40,962 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2026656119] [2022-04-28 14:03:40,962 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2026656119] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:03:40,962 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:03:40,962 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 14:03:40,962 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [264558594] [2022-04-28 14:03:40,962 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:03:40,962 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 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 36 [2022-04-28 14:03:40,962 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:03:40,963 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 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-28 14:03:40,988 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-28 14:03:40,988 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 14:03:40,988 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:03:40,988 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 14:03:40,988 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-28 14:03:40,988 INFO L87 Difference]: Start difference. First operand 72 states and 86 transitions. Second operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 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-28 14:03:41,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:03:41,223 INFO L93 Difference]: Finished difference Result 108 states and 129 transitions. [2022-04-28 14:03:41,223 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 14:03:41,223 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 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 36 [2022-04-28 14:03:41,223 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:03:41,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 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-28 14:03:41,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 78 transitions. [2022-04-28 14:03:41,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 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-28 14:03:41,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 78 transitions. [2022-04-28 14:03:41,225 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 78 transitions. [2022-04-28 14:03:41,284 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:03:41,285 INFO L225 Difference]: With dead ends: 108 [2022-04-28 14:03:41,285 INFO L226 Difference]: Without dead ends: 98 [2022-04-28 14:03:41,286 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 63 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-28 14:03:41,286 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 22 mSDsluCounter, 80 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 114 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 14:03:41,286 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 114 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 14:03:41,286 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-28 14:03:41,390 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 96. [2022-04-28 14:03:41,390 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:03:41,390 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 96 states, 71 states have (on average 1.2816901408450705) internal successors, (91), 73 states have internal predecessors, (91), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:03:41,390 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 96 states, 71 states have (on average 1.2816901408450705) internal successors, (91), 73 states have internal predecessors, (91), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:03:41,391 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 96 states, 71 states have (on average 1.2816901408450705) internal successors, (91), 73 states have internal predecessors, (91), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:03:41,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:03:41,392 INFO L93 Difference]: Finished difference Result 98 states and 117 transitions. [2022-04-28 14:03:41,392 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 117 transitions. [2022-04-28 14:03:41,393 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:03:41,393 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:03:41,393 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 71 states have (on average 1.2816901408450705) internal successors, (91), 73 states have internal predecessors, (91), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 98 states. [2022-04-28 14:03:41,393 INFO L87 Difference]: Start difference. First operand has 96 states, 71 states have (on average 1.2816901408450705) internal successors, (91), 73 states have internal predecessors, (91), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 98 states. [2022-04-28 14:03:41,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:03:41,395 INFO L93 Difference]: Finished difference Result 98 states and 117 transitions. [2022-04-28 14:03:41,395 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 117 transitions. [2022-04-28 14:03:41,395 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:03:41,395 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:03:41,395 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:03:41,395 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:03:41,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 71 states have (on average 1.2816901408450705) internal successors, (91), 73 states have internal predecessors, (91), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:03:41,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 116 transitions. [2022-04-28 14:03:41,396 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 116 transitions. Word has length 36 [2022-04-28 14:03:41,397 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:03:41,397 INFO L495 AbstractCegarLoop]: Abstraction has 96 states and 116 transitions. [2022-04-28 14:03:41,397 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 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-28 14:03:41,397 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 96 states and 116 transitions. [2022-04-28 14:03:47,929 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 113 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 14:03:47,930 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 116 transitions. [2022-04-28 14:03:47,930 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 14:03:47,930 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:03:47,930 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 14:03:47,946 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-28 14:03:48,131 WARN L477 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-28 14:03:48,131 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:03:48,131 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:03:48,131 INFO L85 PathProgramCache]: Analyzing trace with hash 1524039145, now seen corresponding path program 1 times [2022-04-28 14:03:48,131 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:03:48,131 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2084417963] [2022-04-28 14:03:54,179 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:03:54,180 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:03:54,180 INFO L85 PathProgramCache]: Analyzing trace with hash 1524039145, now seen corresponding path program 2 times [2022-04-28 14:03:54,180 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:03:54,180 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [376837630] [2022-04-28 14:03:54,180 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:03:54,180 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:03:54,194 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:03:54,194 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1247866221] [2022-04-28 14:03:54,194 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:03:54,195 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:03:54,210 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:03:54,211 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-28 14:03:54,212 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-28 14:03:54,251 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:03:54,251 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:03:54,252 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 14:03:54,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:03:54,259 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:03:54,371 INFO L272 TraceCheckUtils]: 0: Hoare triple {8007#true} call ULTIMATE.init(); {8007#true} is VALID [2022-04-28 14:03:54,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {8007#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; {8007#true} is VALID [2022-04-28 14:03:54,371 INFO L290 TraceCheckUtils]: 2: Hoare triple {8007#true} assume true; {8007#true} is VALID [2022-04-28 14:03:54,371 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8007#true} {8007#true} #77#return; {8007#true} is VALID [2022-04-28 14:03:54,371 INFO L272 TraceCheckUtils]: 4: Hoare triple {8007#true} call #t~ret7 := main(); {8007#true} is VALID [2022-04-28 14:03:54,371 INFO L290 TraceCheckUtils]: 5: Hoare triple {8007#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8007#true} is VALID [2022-04-28 14:03:54,371 INFO L272 TraceCheckUtils]: 6: Hoare triple {8007#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8007#true} is VALID [2022-04-28 14:03:54,371 INFO L290 TraceCheckUtils]: 7: Hoare triple {8007#true} ~cond := #in~cond; {8007#true} is VALID [2022-04-28 14:03:54,371 INFO L290 TraceCheckUtils]: 8: Hoare triple {8007#true} assume !(0 == ~cond); {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L290 TraceCheckUtils]: 9: Hoare triple {8007#true} assume true; {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8007#true} {8007#true} #69#return; {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L290 TraceCheckUtils]: 11: Hoare triple {8007#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L290 TraceCheckUtils]: 12: Hoare triple {8007#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L290 TraceCheckUtils]: 13: Hoare triple {8007#true} assume !!(#t~post6 < 10);havoc #t~post6; {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L272 TraceCheckUtils]: 14: Hoare triple {8007#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L290 TraceCheckUtils]: 15: Hoare triple {8007#true} ~cond := #in~cond; {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L290 TraceCheckUtils]: 16: Hoare triple {8007#true} assume !(0 == ~cond); {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L290 TraceCheckUtils]: 17: Hoare triple {8007#true} assume true; {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8007#true} {8007#true} #71#return; {8007#true} is VALID [2022-04-28 14:03:54,372 INFO L290 TraceCheckUtils]: 19: Hoare triple {8007#true} assume !!(0 != ~a~0 && 0 != ~b~0); {8069#(not (= main_~a~0 0))} is VALID [2022-04-28 14:03:54,373 INFO L290 TraceCheckUtils]: 20: Hoare triple {8069#(not (= main_~a~0 0))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {8069#(not (= main_~a~0 0))} is VALID [2022-04-28 14:03:54,373 INFO L290 TraceCheckUtils]: 21: Hoare triple {8069#(not (= main_~a~0 0))} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {8069#(not (= main_~a~0 0))} is VALID [2022-04-28 14:03:54,373 INFO L290 TraceCheckUtils]: 22: Hoare triple {8069#(not (= main_~a~0 0))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~b~0 := ~b~0 - 1;~q~0 := ~q~0 + ~a~0 * ~p~0; {8069#(not (= main_~a~0 0))} is VALID [2022-04-28 14:03:54,373 INFO L290 TraceCheckUtils]: 23: Hoare triple {8069#(not (= main_~a~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8069#(not (= main_~a~0 0))} is VALID [2022-04-28 14:03:54,374 INFO L290 TraceCheckUtils]: 24: Hoare triple {8069#(not (= main_~a~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {8069#(not (= main_~a~0 0))} is VALID [2022-04-28 14:03:54,374 INFO L272 TraceCheckUtils]: 25: Hoare triple {8069#(not (= main_~a~0 0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {8007#true} is VALID [2022-04-28 14:03:54,374 INFO L290 TraceCheckUtils]: 26: Hoare triple {8007#true} ~cond := #in~cond; {8007#true} is VALID [2022-04-28 14:03:54,374 INFO L290 TraceCheckUtils]: 27: Hoare triple {8007#true} assume !(0 == ~cond); {8007#true} is VALID [2022-04-28 14:03:54,374 INFO L290 TraceCheckUtils]: 28: Hoare triple {8007#true} assume true; {8007#true} is VALID [2022-04-28 14:03:54,375 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {8007#true} {8069#(not (= main_~a~0 0))} #71#return; {8069#(not (= main_~a~0 0))} is VALID [2022-04-28 14:03:54,375 INFO L290 TraceCheckUtils]: 30: Hoare triple {8069#(not (= main_~a~0 0))} assume !(0 != ~a~0 && 0 != ~b~0); {8103#(and (= main_~b~0 0) (not (= main_~a~0 0)))} is VALID [2022-04-28 14:03:54,375 INFO L272 TraceCheckUtils]: 31: Hoare triple {8103#(and (= main_~b~0 0) (not (= main_~a~0 0)))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {8007#true} is VALID [2022-04-28 14:03:54,375 INFO L290 TraceCheckUtils]: 32: Hoare triple {8007#true} ~cond := #in~cond; {8007#true} is VALID [2022-04-28 14:03:54,375 INFO L290 TraceCheckUtils]: 33: Hoare triple {8007#true} assume !(0 == ~cond); {8007#true} is VALID [2022-04-28 14:03:54,375 INFO L290 TraceCheckUtils]: 34: Hoare triple {8007#true} assume true; {8007#true} is VALID [2022-04-28 14:03:54,376 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {8007#true} {8103#(and (= main_~b~0 0) (not (= main_~a~0 0)))} #73#return; {8103#(and (= main_~b~0 0) (not (= main_~a~0 0)))} is VALID [2022-04-28 14:03:54,376 INFO L272 TraceCheckUtils]: 36: Hoare triple {8103#(and (= main_~b~0 0) (not (= main_~a~0 0)))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {8122#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:03:54,377 INFO L290 TraceCheckUtils]: 37: Hoare triple {8122#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8126#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:03:54,377 INFO L290 TraceCheckUtils]: 38: Hoare triple {8126#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8008#false} is VALID [2022-04-28 14:03:54,377 INFO L290 TraceCheckUtils]: 39: Hoare triple {8008#false} assume !false; {8008#false} is VALID [2022-04-28 14:03:54,377 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 14:03:54,377 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 14:03:54,377 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:03:54,377 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [376837630] [2022-04-28 14:03:54,377 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:03:54,377 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1247866221] [2022-04-28 14:03:54,377 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1247866221] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:03:54,378 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:03:54,378 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 14:03:54,378 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:03:54,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2084417963] [2022-04-28 14:03:54,378 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2084417963] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:03:54,378 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:03:54,378 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 14:03:54,378 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [536536155] [2022-04-28 14:03:54,378 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:03:54,378 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 40 [2022-04-28 14:03:54,378 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:03:54,379 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 14:03:54,404 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:03:54,404 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 14:03:54,404 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:03:54,404 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 14:03:54,404 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-04-28 14:03:54,404 INFO L87 Difference]: Start difference. First operand 96 states and 116 transitions. Second operand has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 14:03:54,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:03:54,707 INFO L93 Difference]: Finished difference Result 126 states and 154 transitions. [2022-04-28 14:03:54,707 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 14:03:54,707 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 40 [2022-04-28 14:03:54,707 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:03:54,707 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 14:03:54,711 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-28 14:03:54,712 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 14:03:54,712 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-28 14:03:54,712 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 51 transitions. [2022-04-28 14:03:54,752 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:03:54,754 INFO L225 Difference]: With dead ends: 126 [2022-04-28 14:03:54,754 INFO L226 Difference]: Without dead ends: 114 [2022-04-28 14:03:54,754 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-04-28 14:03:54,755 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 7 mSDsluCounter, 80 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 114 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 14:03:54,755 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 114 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 56 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 14:03:54,756 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2022-04-28 14:03:54,874 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 102. [2022-04-28 14:03:54,874 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:03:54,874 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand has 102 states, 76 states have (on average 1.263157894736842) internal successors, (96), 78 states have internal predecessors, (96), 15 states have call successors, (15), 12 states have call predecessors, (15), 10 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 14:03:54,874 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand has 102 states, 76 states have (on average 1.263157894736842) internal successors, (96), 78 states have internal predecessors, (96), 15 states have call successors, (15), 12 states have call predecessors, (15), 10 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 14:03:54,875 INFO L87 Difference]: Start difference. First operand 114 states. Second operand has 102 states, 76 states have (on average 1.263157894736842) internal successors, (96), 78 states have internal predecessors, (96), 15 states have call successors, (15), 12 states have call predecessors, (15), 10 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 14:03:54,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:03:54,877 INFO L93 Difference]: Finished difference Result 114 states and 139 transitions. [2022-04-28 14:03:54,877 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 139 transitions. [2022-04-28 14:03:54,877 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:03:54,877 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:03:54,878 INFO L74 IsIncluded]: Start isIncluded. First operand has 102 states, 76 states have (on average 1.263157894736842) internal successors, (96), 78 states have internal predecessors, (96), 15 states have call successors, (15), 12 states have call predecessors, (15), 10 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) Second operand 114 states. [2022-04-28 14:03:54,878 INFO L87 Difference]: Start difference. First operand has 102 states, 76 states have (on average 1.263157894736842) internal successors, (96), 78 states have internal predecessors, (96), 15 states have call successors, (15), 12 states have call predecessors, (15), 10 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) Second operand 114 states. [2022-04-28 14:03:54,880 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:03:54,880 INFO L93 Difference]: Finished difference Result 114 states and 139 transitions. [2022-04-28 14:03:54,880 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 139 transitions. [2022-04-28 14:03:54,880 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:03:54,880 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:03:54,880 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:03:54,881 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:03:54,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 76 states have (on average 1.263157894736842) internal successors, (96), 78 states have internal predecessors, (96), 15 states have call successors, (15), 12 states have call predecessors, (15), 10 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 14:03:54,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 123 transitions. [2022-04-28 14:03:54,883 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 123 transitions. Word has length 40 [2022-04-28 14:03:54,883 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:03:54,883 INFO L495 AbstractCegarLoop]: Abstraction has 102 states and 123 transitions. [2022-04-28 14:03:54,883 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 14:03:54,883 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 102 states and 123 transitions. [2022-04-28 14:04:03,379 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 119 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-28 14:04:03,379 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 123 transitions. [2022-04-28 14:04:03,379 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 14:04:03,379 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:04:03,379 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 14:04:03,404 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-28 14:04:03,580 WARN L477 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-28 14:04:03,580 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:04:03,580 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:04:03,580 INFO L85 PathProgramCache]: Analyzing trace with hash -470105561, now seen corresponding path program 1 times [2022-04-28 14:04:03,580 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:04:03,580 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1583724168] [2022-04-28 14:04:09,631 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:04:09,632 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:04:09,632 INFO L85 PathProgramCache]: Analyzing trace with hash -470105561, now seen corresponding path program 2 times [2022-04-28 14:04:09,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:04:09,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [180796858] [2022-04-28 14:04:09,632 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:04:09,632 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:04:09,643 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:04:09,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1823180036] [2022-04-28 14:04:09,643 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:04:09,643 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:04:09,643 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:04:09,644 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-28 14:04:09,645 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-28 14:04:09,683 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:04:09,683 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:04:09,684 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 14:04:09,693 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:04:09,694 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:04:09,919 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 14:04:09,953 INFO L272 TraceCheckUtils]: 0: Hoare triple {8818#true} call ULTIMATE.init(); {8818#true} is VALID [2022-04-28 14:04:09,953 INFO L290 TraceCheckUtils]: 1: Hoare triple {8818#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; {8818#true} is VALID [2022-04-28 14:04:09,953 INFO L290 TraceCheckUtils]: 2: Hoare triple {8818#true} assume true; {8818#true} is VALID [2022-04-28 14:04:09,953 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8818#true} {8818#true} #77#return; {8818#true} is VALID [2022-04-28 14:04:09,953 INFO L272 TraceCheckUtils]: 4: Hoare triple {8818#true} call #t~ret7 := main(); {8818#true} is VALID [2022-04-28 14:04:09,953 INFO L290 TraceCheckUtils]: 5: Hoare triple {8818#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8818#true} is VALID [2022-04-28 14:04:09,953 INFO L272 TraceCheckUtils]: 6: Hoare triple {8818#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8818#true} is VALID [2022-04-28 14:04:09,954 INFO L290 TraceCheckUtils]: 7: Hoare triple {8818#true} ~cond := #in~cond; {8844#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 14:04:09,954 INFO L290 TraceCheckUtils]: 8: Hoare triple {8844#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8848#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 14:04:09,954 INFO L290 TraceCheckUtils]: 9: Hoare triple {8848#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8848#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 14:04:09,955 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8848#(not (= |assume_abort_if_not_#in~cond| 0))} {8818#true} #69#return; {8855#(<= 1 main_~y~0)} is VALID [2022-04-28 14:04:09,955 INFO L290 TraceCheckUtils]: 11: Hoare triple {8855#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {8859#(<= 1 main_~b~0)} is VALID [2022-04-28 14:04:09,955 INFO L290 TraceCheckUtils]: 12: Hoare triple {8859#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8859#(<= 1 main_~b~0)} is VALID [2022-04-28 14:04:09,956 INFO L290 TraceCheckUtils]: 13: Hoare triple {8859#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {8859#(<= 1 main_~b~0)} is VALID [2022-04-28 14:04:09,956 INFO L272 TraceCheckUtils]: 14: Hoare triple {8859#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {8818#true} is VALID [2022-04-28 14:04:09,956 INFO L290 TraceCheckUtils]: 15: Hoare triple {8818#true} ~cond := #in~cond; {8818#true} is VALID [2022-04-28 14:04:09,956 INFO L290 TraceCheckUtils]: 16: Hoare triple {8818#true} assume !(0 == ~cond); {8818#true} is VALID [2022-04-28 14:04:09,956 INFO L290 TraceCheckUtils]: 17: Hoare triple {8818#true} assume true; {8818#true} is VALID [2022-04-28 14:04:09,956 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8818#true} {8859#(<= 1 main_~b~0)} #71#return; {8859#(<= 1 main_~b~0)} is VALID [2022-04-28 14:04:09,957 INFO L290 TraceCheckUtils]: 19: Hoare triple {8859#(<= 1 main_~b~0)} assume !!(0 != ~a~0 && 0 != ~b~0); {8859#(<= 1 main_~b~0)} is VALID [2022-04-28 14:04:09,957 INFO L290 TraceCheckUtils]: 20: Hoare triple {8859#(<= 1 main_~b~0)} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {8859#(<= 1 main_~b~0)} is VALID [2022-04-28 14:04:09,957 INFO L290 TraceCheckUtils]: 21: Hoare triple {8859#(<= 1 main_~b~0)} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {8859#(<= 1 main_~b~0)} is VALID [2022-04-28 14:04:09,958 INFO L290 TraceCheckUtils]: 22: Hoare triple {8859#(<= 1 main_~b~0)} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2));~a~0 := ~a~0 - 1;~b~0 := ~b~0 - 1;~q~0 := ~q~0 + (1 + (~a~0 + ~b~0)) * ~p~0; {8893#(<= 0 main_~b~0)} is VALID [2022-04-28 14:04:09,958 INFO L290 TraceCheckUtils]: 23: Hoare triple {8893#(<= 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8893#(<= 0 main_~b~0)} is VALID [2022-04-28 14:04:09,959 INFO L290 TraceCheckUtils]: 24: Hoare triple {8893#(<= 0 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {8893#(<= 0 main_~b~0)} is VALID [2022-04-28 14:04:09,959 INFO L272 TraceCheckUtils]: 25: Hoare triple {8893#(<= 0 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {8818#true} is VALID [2022-04-28 14:04:09,959 INFO L290 TraceCheckUtils]: 26: Hoare triple {8818#true} ~cond := #in~cond; {8818#true} is VALID [2022-04-28 14:04:09,959 INFO L290 TraceCheckUtils]: 27: Hoare triple {8818#true} assume !(0 == ~cond); {8818#true} is VALID [2022-04-28 14:04:09,959 INFO L290 TraceCheckUtils]: 28: Hoare triple {8818#true} assume true; {8818#true} is VALID [2022-04-28 14:04:09,959 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {8818#true} {8893#(<= 0 main_~b~0)} #71#return; {8893#(<= 0 main_~b~0)} is VALID [2022-04-28 14:04:09,960 INFO L290 TraceCheckUtils]: 30: Hoare triple {8893#(<= 0 main_~b~0)} assume !(0 != ~a~0 && 0 != ~b~0); {8918#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 14:04:09,960 INFO L272 TraceCheckUtils]: 31: Hoare triple {8918#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {8818#true} is VALID [2022-04-28 14:04:09,960 INFO L290 TraceCheckUtils]: 32: Hoare triple {8818#true} ~cond := #in~cond; {8818#true} is VALID [2022-04-28 14:04:09,960 INFO L290 TraceCheckUtils]: 33: Hoare triple {8818#true} assume !(0 == ~cond); {8818#true} is VALID [2022-04-28 14:04:09,960 INFO L290 TraceCheckUtils]: 34: Hoare triple {8818#true} assume true; {8818#true} is VALID [2022-04-28 14:04:09,961 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {8818#true} {8918#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} #73#return; {8918#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-28 14:04:09,962 INFO L272 TraceCheckUtils]: 36: Hoare triple {8918#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {8937#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:04:09,962 INFO L290 TraceCheckUtils]: 37: Hoare triple {8937#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8941#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:04:09,963 INFO L290 TraceCheckUtils]: 38: Hoare triple {8941#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8819#false} is VALID [2022-04-28 14:04:09,963 INFO L290 TraceCheckUtils]: 39: Hoare triple {8819#false} assume !false; {8819#false} is VALID [2022-04-28 14:04:09,963 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 14:04:09,963 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:04:10,153 INFO L290 TraceCheckUtils]: 39: Hoare triple {8819#false} assume !false; {8819#false} is VALID [2022-04-28 14:04:10,154 INFO L290 TraceCheckUtils]: 38: Hoare triple {8941#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8819#false} is VALID [2022-04-28 14:04:10,154 INFO L290 TraceCheckUtils]: 37: Hoare triple {8937#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8941#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 14:04:10,155 INFO L272 TraceCheckUtils]: 36: Hoare triple {8957#(= (* main_~b~0 main_~a~0) 0)} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {8937#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 14:04:10,155 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {8818#true} {8957#(= (* main_~b~0 main_~a~0) 0)} #73#return; {8957#(= (* main_~b~0 main_~a~0) 0)} is VALID [2022-04-28 14:04:10,155 INFO L290 TraceCheckUtils]: 34: Hoare triple {8818#true} assume true; {8818#true} is VALID [2022-04-28 14:04:10,155 INFO L290 TraceCheckUtils]: 33: Hoare triple {8818#true} assume !(0 == ~cond); {8818#true} is VALID [2022-04-28 14:04:10,155 INFO L290 TraceCheckUtils]: 32: Hoare triple {8818#true} ~cond := #in~cond; {8818#true} is VALID [2022-04-28 14:04:10,155 INFO L272 TraceCheckUtils]: 31: Hoare triple {8957#(= (* main_~b~0 main_~a~0) 0)} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {8818#true} is VALID [2022-04-28 14:04:10,156 INFO L290 TraceCheckUtils]: 30: Hoare triple {8818#true} assume !(0 != ~a~0 && 0 != ~b~0); {8957#(= (* main_~b~0 main_~a~0) 0)} is VALID [2022-04-28 14:04:10,157 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {8818#true} {8818#true} #71#return; {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 28: Hoare triple {8818#true} assume true; {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 27: Hoare triple {8818#true} assume !(0 == ~cond); {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 26: Hoare triple {8818#true} ~cond := #in~cond; {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L272 TraceCheckUtils]: 25: Hoare triple {8818#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 24: Hoare triple {8818#true} assume !!(#t~post6 < 10);havoc #t~post6; {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 23: Hoare triple {8818#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 22: Hoare triple {8818#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2));~a~0 := ~a~0 - 1;~b~0 := ~b~0 - 1;~q~0 := ~q~0 + (1 + (~a~0 + ~b~0)) * ~p~0; {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 21: Hoare triple {8818#true} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 20: Hoare triple {8818#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 19: Hoare triple {8818#true} assume !!(0 != ~a~0 && 0 != ~b~0); {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8818#true} {8818#true} #71#return; {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 17: Hoare triple {8818#true} assume true; {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 16: Hoare triple {8818#true} assume !(0 == ~cond); {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 15: Hoare triple {8818#true} ~cond := #in~cond; {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L272 TraceCheckUtils]: 14: Hoare triple {8818#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {8818#true} is VALID [2022-04-28 14:04:10,157 INFO L290 TraceCheckUtils]: 13: Hoare triple {8818#true} assume !!(#t~post6 < 10);havoc #t~post6; {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L290 TraceCheckUtils]: 12: Hoare triple {8818#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L290 TraceCheckUtils]: 11: Hoare triple {8818#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8818#true} {8818#true} #69#return; {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L290 TraceCheckUtils]: 9: Hoare triple {8818#true} assume true; {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L290 TraceCheckUtils]: 8: Hoare triple {8818#true} assume !(0 == ~cond); {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L290 TraceCheckUtils]: 7: Hoare triple {8818#true} ~cond := #in~cond; {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L272 TraceCheckUtils]: 6: Hoare triple {8818#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L290 TraceCheckUtils]: 5: Hoare triple {8818#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L272 TraceCheckUtils]: 4: Hoare triple {8818#true} call #t~ret7 := main(); {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8818#true} {8818#true} #77#return; {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L290 TraceCheckUtils]: 2: Hoare triple {8818#true} assume true; {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L290 TraceCheckUtils]: 1: Hoare triple {8818#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; {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L272 TraceCheckUtils]: 0: Hoare triple {8818#true} call ULTIMATE.init(); {8818#true} is VALID [2022-04-28 14:04:10,158 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 14:04:10,158 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:04:10,159 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [180796858] [2022-04-28 14:04:10,159 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:04:10,159 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1823180036] [2022-04-28 14:04:10,159 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1823180036] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 14:04:10,159 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 14:04:10,159 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-28 14:04:10,159 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:04:10,159 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1583724168] [2022-04-28 14:04:10,159 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1583724168] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:04:10,159 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:04:10,159 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 14:04:10,159 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [539090527] [2022-04-28 14:04:10,159 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:04:10,160 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 40 [2022-04-28 14:04:10,160 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:04:10,160 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 14:04:10,184 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-28 14:04:10,184 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 14:04:10,184 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:04:10,185 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 14:04:10,185 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-28 14:04:10,185 INFO L87 Difference]: Start difference. First operand 102 states and 123 transitions. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 14:04:10,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:10,572 INFO L93 Difference]: Finished difference Result 109 states and 129 transitions. [2022-04-28 14:04:10,572 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 14:04:10,572 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 40 [2022-04-28 14:04:10,573 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:04:10,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 14:04:10,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-28 14:04:10,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 14:04:10,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-28 14:04:10,574 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 41 transitions. [2022-04-28 14:04:10,609 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-28 14:04:10,610 INFO L225 Difference]: With dead ends: 109 [2022-04-28 14:04:10,610 INFO L226 Difference]: Without dead ends: 89 [2022-04-28 14:04:10,610 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=106, Unknown=0, NotChecked=0, Total=132 [2022-04-28 14:04:10,611 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 5 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 117 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 14:04:10,611 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [5 Valid, 117 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 14:04:10,611 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 89 states. [2022-04-28 14:04:10,685 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 89 to 65. [2022-04-28 14:04:10,685 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:04:10,685 INFO L82 GeneralOperation]: Start isEquivalent. First operand 89 states. Second operand has 65 states, 48 states have (on average 1.25) internal successors, (60), 49 states have internal predecessors, (60), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 14:04:10,685 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand has 65 states, 48 states have (on average 1.25) internal successors, (60), 49 states have internal predecessors, (60), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 14:04:10,685 INFO L87 Difference]: Start difference. First operand 89 states. Second operand has 65 states, 48 states have (on average 1.25) internal successors, (60), 49 states have internal predecessors, (60), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 14:04:10,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:10,687 INFO L93 Difference]: Finished difference Result 89 states and 108 transitions. [2022-04-28 14:04:10,687 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 108 transitions. [2022-04-28 14:04:10,688 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:04:10,688 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:04:10,688 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 48 states have (on average 1.25) internal successors, (60), 49 states have internal predecessors, (60), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 89 states. [2022-04-28 14:04:10,688 INFO L87 Difference]: Start difference. First operand has 65 states, 48 states have (on average 1.25) internal successors, (60), 49 states have internal predecessors, (60), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 89 states. [2022-04-28 14:04:10,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:10,689 INFO L93 Difference]: Finished difference Result 89 states and 108 transitions. [2022-04-28 14:04:10,689 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 108 transitions. [2022-04-28 14:04:10,689 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:04:10,689 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:04:10,689 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:04:10,690 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:04:10,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 48 states have (on average 1.25) internal successors, (60), 49 states have internal predecessors, (60), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 14:04:10,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 76 transitions. [2022-04-28 14:04:10,690 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 76 transitions. Word has length 40 [2022-04-28 14:04:10,691 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:04:10,691 INFO L495 AbstractCegarLoop]: Abstraction has 65 states and 76 transitions. [2022-04-28 14:04:10,691 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 14:04:10,691 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 65 states and 76 transitions. [2022-04-28 14:04:15,065 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 74 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 14:04:15,065 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-04-28 14:04:15,066 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-28 14:04:15,066 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:04:15,066 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 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-28 14:04:15,084 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-28 14:04:15,267 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-28 14:04:15,268 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:04:15,268 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:04:15,268 INFO L85 PathProgramCache]: Analyzing trace with hash 517832770, now seen corresponding path program 5 times [2022-04-28 14:04:15,268 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:04:15,268 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [705312293] [2022-04-28 14:04:21,314 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:04:21,314 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:04:21,314 INFO L85 PathProgramCache]: Analyzing trace with hash 517832770, now seen corresponding path program 6 times [2022-04-28 14:04:21,315 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:04:21,315 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [257042545] [2022-04-28 14:04:21,315 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:04:21,315 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:04:21,331 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:04:21,331 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [109199441] [2022-04-28 14:04:21,331 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 14:04:21,331 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:04:21,331 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:04:21,332 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:04:21,333 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-28 14:04:21,379 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-28 14:04:21,379 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:04:21,380 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 14:04:21,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:04:21,391 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:04:21,586 INFO L272 TraceCheckUtils]: 0: Hoare triple {9596#true} call ULTIMATE.init(); {9596#true} is VALID [2022-04-28 14:04:21,586 INFO L290 TraceCheckUtils]: 1: Hoare triple {9596#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; {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,587 INFO L290 TraceCheckUtils]: 2: Hoare triple {9604#(<= ~counter~0 0)} assume true; {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,587 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9604#(<= ~counter~0 0)} {9596#true} #77#return; {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,587 INFO L272 TraceCheckUtils]: 4: Hoare triple {9604#(<= ~counter~0 0)} call #t~ret7 := main(); {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,588 INFO L290 TraceCheckUtils]: 5: Hoare triple {9604#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,588 INFO L272 TraceCheckUtils]: 6: Hoare triple {9604#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,588 INFO L290 TraceCheckUtils]: 7: Hoare triple {9604#(<= ~counter~0 0)} ~cond := #in~cond; {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,589 INFO L290 TraceCheckUtils]: 8: Hoare triple {9604#(<= ~counter~0 0)} assume !(0 == ~cond); {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,589 INFO L290 TraceCheckUtils]: 9: Hoare triple {9604#(<= ~counter~0 0)} assume true; {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,589 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9604#(<= ~counter~0 0)} {9604#(<= ~counter~0 0)} #69#return; {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,589 INFO L290 TraceCheckUtils]: 11: Hoare triple {9604#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {9604#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:21,590 INFO L290 TraceCheckUtils]: 12: Hoare triple {9604#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9638#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:21,590 INFO L290 TraceCheckUtils]: 13: Hoare triple {9638#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {9638#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:21,591 INFO L272 TraceCheckUtils]: 14: Hoare triple {9638#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {9638#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:21,591 INFO L290 TraceCheckUtils]: 15: Hoare triple {9638#(<= ~counter~0 1)} ~cond := #in~cond; {9638#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:21,591 INFO L290 TraceCheckUtils]: 16: Hoare triple {9638#(<= ~counter~0 1)} assume !(0 == ~cond); {9638#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:21,592 INFO L290 TraceCheckUtils]: 17: Hoare triple {9638#(<= ~counter~0 1)} assume true; {9638#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:21,592 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {9638#(<= ~counter~0 1)} {9638#(<= ~counter~0 1)} #71#return; {9638#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:21,592 INFO L290 TraceCheckUtils]: 19: Hoare triple {9638#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {9638#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:21,593 INFO L290 TraceCheckUtils]: 20: Hoare triple {9638#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {9638#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:21,593 INFO L290 TraceCheckUtils]: 21: Hoare triple {9638#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9666#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:21,593 INFO L290 TraceCheckUtils]: 22: Hoare triple {9666#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {9666#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:21,594 INFO L272 TraceCheckUtils]: 23: Hoare triple {9666#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {9666#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:21,594 INFO L290 TraceCheckUtils]: 24: Hoare triple {9666#(<= ~counter~0 2)} ~cond := #in~cond; {9666#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:21,594 INFO L290 TraceCheckUtils]: 25: Hoare triple {9666#(<= ~counter~0 2)} assume !(0 == ~cond); {9666#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:21,595 INFO L290 TraceCheckUtils]: 26: Hoare triple {9666#(<= ~counter~0 2)} assume true; {9666#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:21,595 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {9666#(<= ~counter~0 2)} {9666#(<= ~counter~0 2)} #71#return; {9666#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:21,595 INFO L290 TraceCheckUtils]: 28: Hoare triple {9666#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {9666#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:21,596 INFO L290 TraceCheckUtils]: 29: Hoare triple {9666#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {9666#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:21,596 INFO L290 TraceCheckUtils]: 30: Hoare triple {9666#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9694#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:21,596 INFO L290 TraceCheckUtils]: 31: Hoare triple {9694#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {9694#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:21,597 INFO L272 TraceCheckUtils]: 32: Hoare triple {9694#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {9694#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:21,597 INFO L290 TraceCheckUtils]: 33: Hoare triple {9694#(<= ~counter~0 3)} ~cond := #in~cond; {9694#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:21,597 INFO L290 TraceCheckUtils]: 34: Hoare triple {9694#(<= ~counter~0 3)} assume !(0 == ~cond); {9694#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:21,598 INFO L290 TraceCheckUtils]: 35: Hoare triple {9694#(<= ~counter~0 3)} assume true; {9694#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:21,598 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {9694#(<= ~counter~0 3)} {9694#(<= ~counter~0 3)} #71#return; {9694#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:21,598 INFO L290 TraceCheckUtils]: 37: Hoare triple {9694#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {9694#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:21,599 INFO L290 TraceCheckUtils]: 38: Hoare triple {9694#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {9694#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:21,599 INFO L290 TraceCheckUtils]: 39: Hoare triple {9694#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9722#(<= |main_#t~post6| 3)} is VALID [2022-04-28 14:04:21,599 INFO L290 TraceCheckUtils]: 40: Hoare triple {9722#(<= |main_#t~post6| 3)} assume !(#t~post6 < 10);havoc #t~post6; {9597#false} is VALID [2022-04-28 14:04:21,599 INFO L272 TraceCheckUtils]: 41: Hoare triple {9597#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {9597#false} is VALID [2022-04-28 14:04:21,600 INFO L290 TraceCheckUtils]: 42: Hoare triple {9597#false} ~cond := #in~cond; {9597#false} is VALID [2022-04-28 14:04:21,600 INFO L290 TraceCheckUtils]: 43: Hoare triple {9597#false} assume 0 == ~cond; {9597#false} is VALID [2022-04-28 14:04:21,600 INFO L290 TraceCheckUtils]: 44: Hoare triple {9597#false} assume !false; {9597#false} is VALID [2022-04-28 14:04:21,600 INFO L134 CoverageAnalysis]: Checked inductivity of 39 backedges. 6 proven. 33 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 14:04:21,600 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:04:21,815 INFO L290 TraceCheckUtils]: 44: Hoare triple {9597#false} assume !false; {9597#false} is VALID [2022-04-28 14:04:21,815 INFO L290 TraceCheckUtils]: 43: Hoare triple {9597#false} assume 0 == ~cond; {9597#false} is VALID [2022-04-28 14:04:21,815 INFO L290 TraceCheckUtils]: 42: Hoare triple {9597#false} ~cond := #in~cond; {9597#false} is VALID [2022-04-28 14:04:21,815 INFO L272 TraceCheckUtils]: 41: Hoare triple {9597#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {9597#false} is VALID [2022-04-28 14:04:21,816 INFO L290 TraceCheckUtils]: 40: Hoare triple {9750#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {9597#false} is VALID [2022-04-28 14:04:21,816 INFO L290 TraceCheckUtils]: 39: Hoare triple {9754#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9750#(< |main_#t~post6| 10)} is VALID [2022-04-28 14:04:21,823 INFO L290 TraceCheckUtils]: 38: Hoare triple {9754#(< ~counter~0 10)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {9754#(< ~counter~0 10)} is VALID [2022-04-28 14:04:21,824 INFO L290 TraceCheckUtils]: 37: Hoare triple {9754#(< ~counter~0 10)} assume !!(0 != ~a~0 && 0 != ~b~0); {9754#(< ~counter~0 10)} is VALID [2022-04-28 14:04:21,824 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {9596#true} {9754#(< ~counter~0 10)} #71#return; {9754#(< ~counter~0 10)} is VALID [2022-04-28 14:04:21,824 INFO L290 TraceCheckUtils]: 35: Hoare triple {9596#true} assume true; {9596#true} is VALID [2022-04-28 14:04:21,824 INFO L290 TraceCheckUtils]: 34: Hoare triple {9596#true} assume !(0 == ~cond); {9596#true} is VALID [2022-04-28 14:04:21,824 INFO L290 TraceCheckUtils]: 33: Hoare triple {9596#true} ~cond := #in~cond; {9596#true} is VALID [2022-04-28 14:04:21,825 INFO L272 TraceCheckUtils]: 32: Hoare triple {9754#(< ~counter~0 10)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {9596#true} is VALID [2022-04-28 14:04:21,825 INFO L290 TraceCheckUtils]: 31: Hoare triple {9754#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {9754#(< ~counter~0 10)} is VALID [2022-04-28 14:04:21,825 INFO L290 TraceCheckUtils]: 30: Hoare triple {9782#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9754#(< ~counter~0 10)} is VALID [2022-04-28 14:04:21,826 INFO L290 TraceCheckUtils]: 29: Hoare triple {9782#(< ~counter~0 9)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {9782#(< ~counter~0 9)} is VALID [2022-04-28 14:04:21,826 INFO L290 TraceCheckUtils]: 28: Hoare triple {9782#(< ~counter~0 9)} assume !!(0 != ~a~0 && 0 != ~b~0); {9782#(< ~counter~0 9)} is VALID [2022-04-28 14:04:21,827 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {9596#true} {9782#(< ~counter~0 9)} #71#return; {9782#(< ~counter~0 9)} is VALID [2022-04-28 14:04:21,827 INFO L290 TraceCheckUtils]: 26: Hoare triple {9596#true} assume true; {9596#true} is VALID [2022-04-28 14:04:21,827 INFO L290 TraceCheckUtils]: 25: Hoare triple {9596#true} assume !(0 == ~cond); {9596#true} is VALID [2022-04-28 14:04:21,827 INFO L290 TraceCheckUtils]: 24: Hoare triple {9596#true} ~cond := #in~cond; {9596#true} is VALID [2022-04-28 14:04:21,827 INFO L272 TraceCheckUtils]: 23: Hoare triple {9782#(< ~counter~0 9)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {9596#true} is VALID [2022-04-28 14:04:21,827 INFO L290 TraceCheckUtils]: 22: Hoare triple {9782#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {9782#(< ~counter~0 9)} is VALID [2022-04-28 14:04:21,828 INFO L290 TraceCheckUtils]: 21: Hoare triple {9810#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9782#(< ~counter~0 9)} is VALID [2022-04-28 14:04:21,828 INFO L290 TraceCheckUtils]: 20: Hoare triple {9810#(< ~counter~0 8)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {9810#(< ~counter~0 8)} is VALID [2022-04-28 14:04:21,828 INFO L290 TraceCheckUtils]: 19: Hoare triple {9810#(< ~counter~0 8)} assume !!(0 != ~a~0 && 0 != ~b~0); {9810#(< ~counter~0 8)} is VALID [2022-04-28 14:04:21,829 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {9596#true} {9810#(< ~counter~0 8)} #71#return; {9810#(< ~counter~0 8)} is VALID [2022-04-28 14:04:21,829 INFO L290 TraceCheckUtils]: 17: Hoare triple {9596#true} assume true; {9596#true} is VALID [2022-04-28 14:04:21,829 INFO L290 TraceCheckUtils]: 16: Hoare triple {9596#true} assume !(0 == ~cond); {9596#true} is VALID [2022-04-28 14:04:21,829 INFO L290 TraceCheckUtils]: 15: Hoare triple {9596#true} ~cond := #in~cond; {9596#true} is VALID [2022-04-28 14:04:21,829 INFO L272 TraceCheckUtils]: 14: Hoare triple {9810#(< ~counter~0 8)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {9596#true} is VALID [2022-04-28 14:04:21,829 INFO L290 TraceCheckUtils]: 13: Hoare triple {9810#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {9810#(< ~counter~0 8)} is VALID [2022-04-28 14:04:21,830 INFO L290 TraceCheckUtils]: 12: Hoare triple {9838#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9810#(< ~counter~0 8)} is VALID [2022-04-28 14:04:21,830 INFO L290 TraceCheckUtils]: 11: Hoare triple {9838#(< ~counter~0 7)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {9838#(< ~counter~0 7)} is VALID [2022-04-28 14:04:21,831 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9596#true} {9838#(< ~counter~0 7)} #69#return; {9838#(< ~counter~0 7)} is VALID [2022-04-28 14:04:21,831 INFO L290 TraceCheckUtils]: 9: Hoare triple {9596#true} assume true; {9596#true} is VALID [2022-04-28 14:04:21,831 INFO L290 TraceCheckUtils]: 8: Hoare triple {9596#true} assume !(0 == ~cond); {9596#true} is VALID [2022-04-28 14:04:21,831 INFO L290 TraceCheckUtils]: 7: Hoare triple {9596#true} ~cond := #in~cond; {9596#true} is VALID [2022-04-28 14:04:21,831 INFO L272 TraceCheckUtils]: 6: Hoare triple {9838#(< ~counter~0 7)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9596#true} is VALID [2022-04-28 14:04:21,831 INFO L290 TraceCheckUtils]: 5: Hoare triple {9838#(< ~counter~0 7)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9838#(< ~counter~0 7)} is VALID [2022-04-28 14:04:21,831 INFO L272 TraceCheckUtils]: 4: Hoare triple {9838#(< ~counter~0 7)} call #t~ret7 := main(); {9838#(< ~counter~0 7)} is VALID [2022-04-28 14:04:21,832 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9838#(< ~counter~0 7)} {9596#true} #77#return; {9838#(< ~counter~0 7)} is VALID [2022-04-28 14:04:21,832 INFO L290 TraceCheckUtils]: 2: Hoare triple {9838#(< ~counter~0 7)} assume true; {9838#(< ~counter~0 7)} is VALID [2022-04-28 14:04:21,833 INFO L290 TraceCheckUtils]: 1: Hoare triple {9596#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; {9838#(< ~counter~0 7)} is VALID [2022-04-28 14:04:21,833 INFO L272 TraceCheckUtils]: 0: Hoare triple {9596#true} call ULTIMATE.init(); {9596#true} is VALID [2022-04-28 14:04:21,833 INFO L134 CoverageAnalysis]: Checked inductivity of 39 backedges. 6 proven. 21 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 14:04:21,833 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:04:21,833 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [257042545] [2022-04-28 14:04:21,833 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:04:21,833 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [109199441] [2022-04-28 14:04:21,833 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [109199441] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:04:21,833 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:04:21,833 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-28 14:04:21,833 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:04:21,833 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [705312293] [2022-04-28 14:04:21,834 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [705312293] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:04:21,834 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:04:21,834 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 14:04:21,834 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2119406910] [2022-04-28 14:04:21,834 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:04:21,834 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 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 45 [2022-04-28 14:04:21,834 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:04:21,834 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 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-28 14:04:21,870 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:04:21,871 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 14:04:21,871 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:04:21,871 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 14:04:21,872 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-28 14:04:21,872 INFO L87 Difference]: Start difference. First operand 65 states and 76 transitions. Second operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 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-28 14:04:22,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:22,088 INFO L93 Difference]: Finished difference Result 84 states and 99 transitions. [2022-04-28 14:04:22,088 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 14:04:22,088 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 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 45 [2022-04-28 14:04:22,089 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:04:22,089 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 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-28 14:04:22,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 85 transitions. [2022-04-28 14:04:22,090 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 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-28 14:04:22,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 85 transitions. [2022-04-28 14:04:22,091 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 85 transitions. [2022-04-28 14:04:22,170 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:04:22,171 INFO L225 Difference]: With dead ends: 84 [2022-04-28 14:04:22,171 INFO L226 Difference]: Without dead ends: 76 [2022-04-28 14:04:22,171 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 79 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=83, Invalid=127, Unknown=0, NotChecked=0, Total=210 [2022-04-28 14:04:22,171 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 21 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 27 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 14:04:22,171 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [21 Valid, 138 Invalid, 27 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 14:04:22,172 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-28 14:04:22,266 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 76. [2022-04-28 14:04:22,266 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:04:22,266 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 76 states, 57 states have (on average 1.263157894736842) internal successors, (72), 58 states have internal predecessors, (72), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:04:22,267 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 76 states, 57 states have (on average 1.263157894736842) internal successors, (72), 58 states have internal predecessors, (72), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:04:22,267 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 76 states, 57 states have (on average 1.263157894736842) internal successors, (72), 58 states have internal predecessors, (72), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:04:22,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:22,268 INFO L93 Difference]: Finished difference Result 76 states and 90 transitions. [2022-04-28 14:04:22,268 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 90 transitions. [2022-04-28 14:04:22,268 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:04:22,268 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:04:22,268 INFO L74 IsIncluded]: Start isIncluded. First operand has 76 states, 57 states have (on average 1.263157894736842) internal successors, (72), 58 states have internal predecessors, (72), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 76 states. [2022-04-28 14:04:22,268 INFO L87 Difference]: Start difference. First operand has 76 states, 57 states have (on average 1.263157894736842) internal successors, (72), 58 states have internal predecessors, (72), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 76 states. [2022-04-28 14:04:22,269 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:22,269 INFO L93 Difference]: Finished difference Result 76 states and 90 transitions. [2022-04-28 14:04:22,269 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 90 transitions. [2022-04-28 14:04:22,269 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:04:22,269 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:04:22,269 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:04:22,269 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:04:22,269 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 76 states, 57 states have (on average 1.263157894736842) internal successors, (72), 58 states have internal predecessors, (72), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:04:22,273 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 76 states to 76 states and 90 transitions. [2022-04-28 14:04:22,273 INFO L78 Accepts]: Start accepts. Automaton has 76 states and 90 transitions. Word has length 45 [2022-04-28 14:04:22,273 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:04:22,273 INFO L495 AbstractCegarLoop]: Abstraction has 76 states and 90 transitions. [2022-04-28 14:04:22,273 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 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-28 14:04:22,273 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 76 states and 90 transitions. [2022-04-28 14:04:28,815 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 87 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 14:04:28,815 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 90 transitions. [2022-04-28 14:04:28,815 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-28 14:04:28,815 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:04:28,816 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 14:04:28,831 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-28 14:04:29,018 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-28 14:04:29,018 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:04:29,018 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:04:29,018 INFO L85 PathProgramCache]: Analyzing trace with hash -1818717446, now seen corresponding path program 7 times [2022-04-28 14:04:29,018 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:04:29,018 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1678337413] [2022-04-28 14:04:35,069 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:04:35,069 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:04:35,070 INFO L85 PathProgramCache]: Analyzing trace with hash -1818717446, now seen corresponding path program 8 times [2022-04-28 14:04:35,070 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:04:35,070 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1790092748] [2022-04-28 14:04:35,070 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:04:35,070 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:04:35,084 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:04:35,084 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [142727133] [2022-04-28 14:04:35,084 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:04:35,084 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:04:35,085 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:04:35,085 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:04:35,086 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-28 14:04:35,135 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:04:35,135 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:04:35,136 INFO L263 TraceCheckSpWp]: Trace formula consists of 190 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 14:04:35,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:04:35,151 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:04:35,407 INFO L272 TraceCheckUtils]: 0: Hoare triple {10355#true} call ULTIMATE.init(); {10355#true} is VALID [2022-04-28 14:04:35,408 INFO L290 TraceCheckUtils]: 1: Hoare triple {10355#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; {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,408 INFO L290 TraceCheckUtils]: 2: Hoare triple {10363#(<= ~counter~0 0)} assume true; {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,408 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10363#(<= ~counter~0 0)} {10355#true} #77#return; {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,409 INFO L272 TraceCheckUtils]: 4: Hoare triple {10363#(<= ~counter~0 0)} call #t~ret7 := main(); {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,409 INFO L290 TraceCheckUtils]: 5: Hoare triple {10363#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,409 INFO L272 TraceCheckUtils]: 6: Hoare triple {10363#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,410 INFO L290 TraceCheckUtils]: 7: Hoare triple {10363#(<= ~counter~0 0)} ~cond := #in~cond; {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,410 INFO L290 TraceCheckUtils]: 8: Hoare triple {10363#(<= ~counter~0 0)} assume !(0 == ~cond); {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,410 INFO L290 TraceCheckUtils]: 9: Hoare triple {10363#(<= ~counter~0 0)} assume true; {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,411 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10363#(<= ~counter~0 0)} {10363#(<= ~counter~0 0)} #69#return; {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,411 INFO L290 TraceCheckUtils]: 11: Hoare triple {10363#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {10363#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:35,412 INFO L290 TraceCheckUtils]: 12: Hoare triple {10363#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10397#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:35,412 INFO L290 TraceCheckUtils]: 13: Hoare triple {10397#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {10397#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:35,412 INFO L272 TraceCheckUtils]: 14: Hoare triple {10397#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {10397#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:35,413 INFO L290 TraceCheckUtils]: 15: Hoare triple {10397#(<= ~counter~0 1)} ~cond := #in~cond; {10397#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:35,413 INFO L290 TraceCheckUtils]: 16: Hoare triple {10397#(<= ~counter~0 1)} assume !(0 == ~cond); {10397#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:35,413 INFO L290 TraceCheckUtils]: 17: Hoare triple {10397#(<= ~counter~0 1)} assume true; {10397#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:35,414 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {10397#(<= ~counter~0 1)} {10397#(<= ~counter~0 1)} #71#return; {10397#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:35,414 INFO L290 TraceCheckUtils]: 19: Hoare triple {10397#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {10397#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:35,414 INFO L290 TraceCheckUtils]: 20: Hoare triple {10397#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {10397#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:35,415 INFO L290 TraceCheckUtils]: 21: Hoare triple {10397#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10425#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:35,415 INFO L290 TraceCheckUtils]: 22: Hoare triple {10425#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {10425#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:35,416 INFO L272 TraceCheckUtils]: 23: Hoare triple {10425#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {10425#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:35,416 INFO L290 TraceCheckUtils]: 24: Hoare triple {10425#(<= ~counter~0 2)} ~cond := #in~cond; {10425#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:35,416 INFO L290 TraceCheckUtils]: 25: Hoare triple {10425#(<= ~counter~0 2)} assume !(0 == ~cond); {10425#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:35,417 INFO L290 TraceCheckUtils]: 26: Hoare triple {10425#(<= ~counter~0 2)} assume true; {10425#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:35,417 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {10425#(<= ~counter~0 2)} {10425#(<= ~counter~0 2)} #71#return; {10425#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:35,417 INFO L290 TraceCheckUtils]: 28: Hoare triple {10425#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {10425#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:35,418 INFO L290 TraceCheckUtils]: 29: Hoare triple {10425#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {10425#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:35,418 INFO L290 TraceCheckUtils]: 30: Hoare triple {10425#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10453#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:35,418 INFO L290 TraceCheckUtils]: 31: Hoare triple {10453#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {10453#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:35,419 INFO L272 TraceCheckUtils]: 32: Hoare triple {10453#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {10453#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:35,419 INFO L290 TraceCheckUtils]: 33: Hoare triple {10453#(<= ~counter~0 3)} ~cond := #in~cond; {10453#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:35,420 INFO L290 TraceCheckUtils]: 34: Hoare triple {10453#(<= ~counter~0 3)} assume !(0 == ~cond); {10453#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:35,420 INFO L290 TraceCheckUtils]: 35: Hoare triple {10453#(<= ~counter~0 3)} assume true; {10453#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:35,420 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10453#(<= ~counter~0 3)} {10453#(<= ~counter~0 3)} #71#return; {10453#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:35,421 INFO L290 TraceCheckUtils]: 37: Hoare triple {10453#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {10453#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:35,421 INFO L290 TraceCheckUtils]: 38: Hoare triple {10453#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {10453#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:35,421 INFO L290 TraceCheckUtils]: 39: Hoare triple {10453#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10481#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:35,422 INFO L290 TraceCheckUtils]: 40: Hoare triple {10481#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {10481#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:35,422 INFO L272 TraceCheckUtils]: 41: Hoare triple {10481#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {10481#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:35,423 INFO L290 TraceCheckUtils]: 42: Hoare triple {10481#(<= ~counter~0 4)} ~cond := #in~cond; {10481#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:35,423 INFO L290 TraceCheckUtils]: 43: Hoare triple {10481#(<= ~counter~0 4)} assume !(0 == ~cond); {10481#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:35,423 INFO L290 TraceCheckUtils]: 44: Hoare triple {10481#(<= ~counter~0 4)} assume true; {10481#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:35,424 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {10481#(<= ~counter~0 4)} {10481#(<= ~counter~0 4)} #71#return; {10481#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:35,424 INFO L290 TraceCheckUtils]: 46: Hoare triple {10481#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {10481#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:35,424 INFO L290 TraceCheckUtils]: 47: Hoare triple {10481#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {10481#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:35,425 INFO L290 TraceCheckUtils]: 48: Hoare triple {10481#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10509#(<= |main_#t~post6| 4)} is VALID [2022-04-28 14:04:35,425 INFO L290 TraceCheckUtils]: 49: Hoare triple {10509#(<= |main_#t~post6| 4)} assume !(#t~post6 < 10);havoc #t~post6; {10356#false} is VALID [2022-04-28 14:04:35,425 INFO L272 TraceCheckUtils]: 50: Hoare triple {10356#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {10356#false} is VALID [2022-04-28 14:04:35,425 INFO L290 TraceCheckUtils]: 51: Hoare triple {10356#false} ~cond := #in~cond; {10356#false} is VALID [2022-04-28 14:04:35,425 INFO L290 TraceCheckUtils]: 52: Hoare triple {10356#false} assume 0 == ~cond; {10356#false} is VALID [2022-04-28 14:04:35,425 INFO L290 TraceCheckUtils]: 53: Hoare triple {10356#false} assume !false; {10356#false} is VALID [2022-04-28 14:04:35,425 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 8 proven. 62 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 14:04:35,425 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:04:35,678 INFO L290 TraceCheckUtils]: 53: Hoare triple {10356#false} assume !false; {10356#false} is VALID [2022-04-28 14:04:35,679 INFO L290 TraceCheckUtils]: 52: Hoare triple {10356#false} assume 0 == ~cond; {10356#false} is VALID [2022-04-28 14:04:35,679 INFO L290 TraceCheckUtils]: 51: Hoare triple {10356#false} ~cond := #in~cond; {10356#false} is VALID [2022-04-28 14:04:35,679 INFO L272 TraceCheckUtils]: 50: Hoare triple {10356#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {10356#false} is VALID [2022-04-28 14:04:35,679 INFO L290 TraceCheckUtils]: 49: Hoare triple {10537#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {10356#false} is VALID [2022-04-28 14:04:35,679 INFO L290 TraceCheckUtils]: 48: Hoare triple {10541#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10537#(< |main_#t~post6| 10)} is VALID [2022-04-28 14:04:35,679 INFO L290 TraceCheckUtils]: 47: Hoare triple {10541#(< ~counter~0 10)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {10541#(< ~counter~0 10)} is VALID [2022-04-28 14:04:35,680 INFO L290 TraceCheckUtils]: 46: Hoare triple {10541#(< ~counter~0 10)} assume !!(0 != ~a~0 && 0 != ~b~0); {10541#(< ~counter~0 10)} is VALID [2022-04-28 14:04:35,680 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {10355#true} {10541#(< ~counter~0 10)} #71#return; {10541#(< ~counter~0 10)} is VALID [2022-04-28 14:04:35,680 INFO L290 TraceCheckUtils]: 44: Hoare triple {10355#true} assume true; {10355#true} is VALID [2022-04-28 14:04:35,680 INFO L290 TraceCheckUtils]: 43: Hoare triple {10355#true} assume !(0 == ~cond); {10355#true} is VALID [2022-04-28 14:04:35,680 INFO L290 TraceCheckUtils]: 42: Hoare triple {10355#true} ~cond := #in~cond; {10355#true} is VALID [2022-04-28 14:04:35,681 INFO L272 TraceCheckUtils]: 41: Hoare triple {10541#(< ~counter~0 10)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {10355#true} is VALID [2022-04-28 14:04:35,681 INFO L290 TraceCheckUtils]: 40: Hoare triple {10541#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {10541#(< ~counter~0 10)} is VALID [2022-04-28 14:04:35,681 INFO L290 TraceCheckUtils]: 39: Hoare triple {10569#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10541#(< ~counter~0 10)} is VALID [2022-04-28 14:04:35,681 INFO L290 TraceCheckUtils]: 38: Hoare triple {10569#(< ~counter~0 9)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {10569#(< ~counter~0 9)} is VALID [2022-04-28 14:04:35,682 INFO L290 TraceCheckUtils]: 37: Hoare triple {10569#(< ~counter~0 9)} assume !!(0 != ~a~0 && 0 != ~b~0); {10569#(< ~counter~0 9)} is VALID [2022-04-28 14:04:35,682 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10355#true} {10569#(< ~counter~0 9)} #71#return; {10569#(< ~counter~0 9)} is VALID [2022-04-28 14:04:35,682 INFO L290 TraceCheckUtils]: 35: Hoare triple {10355#true} assume true; {10355#true} is VALID [2022-04-28 14:04:35,682 INFO L290 TraceCheckUtils]: 34: Hoare triple {10355#true} assume !(0 == ~cond); {10355#true} is VALID [2022-04-28 14:04:35,682 INFO L290 TraceCheckUtils]: 33: Hoare triple {10355#true} ~cond := #in~cond; {10355#true} is VALID [2022-04-28 14:04:35,683 INFO L272 TraceCheckUtils]: 32: Hoare triple {10569#(< ~counter~0 9)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {10355#true} is VALID [2022-04-28 14:04:35,683 INFO L290 TraceCheckUtils]: 31: Hoare triple {10569#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {10569#(< ~counter~0 9)} is VALID [2022-04-28 14:04:35,685 INFO L290 TraceCheckUtils]: 30: Hoare triple {10597#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10569#(< ~counter~0 9)} is VALID [2022-04-28 14:04:35,685 INFO L290 TraceCheckUtils]: 29: Hoare triple {10597#(< ~counter~0 8)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {10597#(< ~counter~0 8)} is VALID [2022-04-28 14:04:35,685 INFO L290 TraceCheckUtils]: 28: Hoare triple {10597#(< ~counter~0 8)} assume !!(0 != ~a~0 && 0 != ~b~0); {10597#(< ~counter~0 8)} is VALID [2022-04-28 14:04:35,686 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {10355#true} {10597#(< ~counter~0 8)} #71#return; {10597#(< ~counter~0 8)} is VALID [2022-04-28 14:04:35,686 INFO L290 TraceCheckUtils]: 26: Hoare triple {10355#true} assume true; {10355#true} is VALID [2022-04-28 14:04:35,686 INFO L290 TraceCheckUtils]: 25: Hoare triple {10355#true} assume !(0 == ~cond); {10355#true} is VALID [2022-04-28 14:04:35,686 INFO L290 TraceCheckUtils]: 24: Hoare triple {10355#true} ~cond := #in~cond; {10355#true} is VALID [2022-04-28 14:04:35,686 INFO L272 TraceCheckUtils]: 23: Hoare triple {10597#(< ~counter~0 8)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {10355#true} is VALID [2022-04-28 14:04:35,686 INFO L290 TraceCheckUtils]: 22: Hoare triple {10597#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {10597#(< ~counter~0 8)} is VALID [2022-04-28 14:04:35,687 INFO L290 TraceCheckUtils]: 21: Hoare triple {10625#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10597#(< ~counter~0 8)} is VALID [2022-04-28 14:04:35,687 INFO L290 TraceCheckUtils]: 20: Hoare triple {10625#(< ~counter~0 7)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {10625#(< ~counter~0 7)} is VALID [2022-04-28 14:04:35,687 INFO L290 TraceCheckUtils]: 19: Hoare triple {10625#(< ~counter~0 7)} assume !!(0 != ~a~0 && 0 != ~b~0); {10625#(< ~counter~0 7)} is VALID [2022-04-28 14:04:35,688 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {10355#true} {10625#(< ~counter~0 7)} #71#return; {10625#(< ~counter~0 7)} is VALID [2022-04-28 14:04:35,688 INFO L290 TraceCheckUtils]: 17: Hoare triple {10355#true} assume true; {10355#true} is VALID [2022-04-28 14:04:35,688 INFO L290 TraceCheckUtils]: 16: Hoare triple {10355#true} assume !(0 == ~cond); {10355#true} is VALID [2022-04-28 14:04:35,688 INFO L290 TraceCheckUtils]: 15: Hoare triple {10355#true} ~cond := #in~cond; {10355#true} is VALID [2022-04-28 14:04:35,688 INFO L272 TraceCheckUtils]: 14: Hoare triple {10625#(< ~counter~0 7)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {10355#true} is VALID [2022-04-28 14:04:35,688 INFO L290 TraceCheckUtils]: 13: Hoare triple {10625#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {10625#(< ~counter~0 7)} is VALID [2022-04-28 14:04:35,689 INFO L290 TraceCheckUtils]: 12: Hoare triple {10653#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10625#(< ~counter~0 7)} is VALID [2022-04-28 14:04:35,689 INFO L290 TraceCheckUtils]: 11: Hoare triple {10653#(< ~counter~0 6)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {10653#(< ~counter~0 6)} is VALID [2022-04-28 14:04:35,689 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10355#true} {10653#(< ~counter~0 6)} #69#return; {10653#(< ~counter~0 6)} is VALID [2022-04-28 14:04:35,689 INFO L290 TraceCheckUtils]: 9: Hoare triple {10355#true} assume true; {10355#true} is VALID [2022-04-28 14:04:35,689 INFO L290 TraceCheckUtils]: 8: Hoare triple {10355#true} assume !(0 == ~cond); {10355#true} is VALID [2022-04-28 14:04:35,690 INFO L290 TraceCheckUtils]: 7: Hoare triple {10355#true} ~cond := #in~cond; {10355#true} is VALID [2022-04-28 14:04:35,690 INFO L272 TraceCheckUtils]: 6: Hoare triple {10653#(< ~counter~0 6)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10355#true} is VALID [2022-04-28 14:04:35,690 INFO L290 TraceCheckUtils]: 5: Hoare triple {10653#(< ~counter~0 6)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10653#(< ~counter~0 6)} is VALID [2022-04-28 14:04:35,692 INFO L272 TraceCheckUtils]: 4: Hoare triple {10653#(< ~counter~0 6)} call #t~ret7 := main(); {10653#(< ~counter~0 6)} is VALID [2022-04-28 14:04:35,692 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10653#(< ~counter~0 6)} {10355#true} #77#return; {10653#(< ~counter~0 6)} is VALID [2022-04-28 14:04:35,693 INFO L290 TraceCheckUtils]: 2: Hoare triple {10653#(< ~counter~0 6)} assume true; {10653#(< ~counter~0 6)} is VALID [2022-04-28 14:04:35,693 INFO L290 TraceCheckUtils]: 1: Hoare triple {10355#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; {10653#(< ~counter~0 6)} is VALID [2022-04-28 14:04:35,693 INFO L272 TraceCheckUtils]: 0: Hoare triple {10355#true} call ULTIMATE.init(); {10355#true} is VALID [2022-04-28 14:04:35,693 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 8 proven. 38 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 14:04:35,693 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:04:35,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1790092748] [2022-04-28 14:04:35,693 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:04:35,694 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [142727133] [2022-04-28 14:04:35,694 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [142727133] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:04:35,694 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:04:35,694 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 14:04:35,694 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:04:35,694 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1678337413] [2022-04-28 14:04:35,694 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1678337413] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:04:35,694 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:04:35,694 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 14:04:35,694 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [490788410] [2022-04-28 14:04:35,694 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:04:35,694 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Word has length 54 [2022-04-28 14:04:35,695 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:04:35,695 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 14:04:35,730 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:04:35,730 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 14:04:35,730 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:04:35,730 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 14:04:35,730 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 14:04:35,731 INFO L87 Difference]: Start difference. First operand 76 states and 90 transitions. Second operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 14:04:36,020 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:36,020 INFO L93 Difference]: Finished difference Result 95 states and 113 transitions. [2022-04-28 14:04:36,020 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 14:04:36,021 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Word has length 54 [2022-04-28 14:04:36,021 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:04:36,021 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 14:04:36,022 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 99 transitions. [2022-04-28 14:04:36,022 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 14:04:36,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 99 transitions. [2022-04-28 14:04:36,023 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 99 transitions. [2022-04-28 14:04:36,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:04:36,110 INFO L225 Difference]: With dead ends: 95 [2022-04-28 14:04:36,110 INFO L226 Difference]: Without dead ends: 87 [2022-04-28 14:04:36,110 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 111 GetRequests, 95 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=123, Invalid=183, Unknown=0, NotChecked=0, Total=306 [2022-04-28 14:04:36,110 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 53 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 53 SdHoareTripleChecker+Valid, 134 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 14:04:36,110 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [53 Valid, 134 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 14:04:36,111 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 87 states. [2022-04-28 14:04:36,229 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 87 to 87. [2022-04-28 14:04:36,229 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:04:36,230 INFO L82 GeneralOperation]: Start isEquivalent. First operand 87 states. Second operand has 87 states, 66 states have (on average 1.2727272727272727) internal successors, (84), 67 states have internal predecessors, (84), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:04:36,230 INFO L74 IsIncluded]: Start isIncluded. First operand 87 states. Second operand has 87 states, 66 states have (on average 1.2727272727272727) internal successors, (84), 67 states have internal predecessors, (84), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:04:36,230 INFO L87 Difference]: Start difference. First operand 87 states. Second operand has 87 states, 66 states have (on average 1.2727272727272727) internal successors, (84), 67 states have internal predecessors, (84), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:04:36,231 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:36,231 INFO L93 Difference]: Finished difference Result 87 states and 104 transitions. [2022-04-28 14:04:36,231 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 104 transitions. [2022-04-28 14:04:36,231 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:04:36,231 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:04:36,231 INFO L74 IsIncluded]: Start isIncluded. First operand has 87 states, 66 states have (on average 1.2727272727272727) internal successors, (84), 67 states have internal predecessors, (84), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 87 states. [2022-04-28 14:04:36,232 INFO L87 Difference]: Start difference. First operand has 87 states, 66 states have (on average 1.2727272727272727) internal successors, (84), 67 states have internal predecessors, (84), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 87 states. [2022-04-28 14:04:36,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:36,232 INFO L93 Difference]: Finished difference Result 87 states and 104 transitions. [2022-04-28 14:04:36,232 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 104 transitions. [2022-04-28 14:04:36,233 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:04:36,233 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:04:36,233 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:04:36,233 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:04:36,233 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 87 states, 66 states have (on average 1.2727272727272727) internal successors, (84), 67 states have internal predecessors, (84), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:04:36,234 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 104 transitions. [2022-04-28 14:04:36,234 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 104 transitions. Word has length 54 [2022-04-28 14:04:36,234 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:04:36,234 INFO L495 AbstractCegarLoop]: Abstraction has 87 states and 104 transitions. [2022-04-28 14:04:36,234 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 14:04:36,234 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 87 states and 104 transitions. [2022-04-28 14:04:44,974 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 100 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-28 14:04:44,974 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 104 transitions. [2022-04-28 14:04:44,975 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-28 14:04:44,975 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:04:44,975 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 14:04:44,997 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Ended with exit code 0 [2022-04-28 14:04:45,197 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-28 14:04:45,197 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:04:45,198 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:04:45,198 INFO L85 PathProgramCache]: Analyzing trace with hash -323774, now seen corresponding path program 9 times [2022-04-28 14:04:45,198 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:04:45,198 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [704433895] [2022-04-28 14:04:51,251 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:04:51,251 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:04:51,251 INFO L85 PathProgramCache]: Analyzing trace with hash -323774, now seen corresponding path program 10 times [2022-04-28 14:04:51,251 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:04:51,251 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2039284068] [2022-04-28 14:04:51,251 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:04:51,251 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:04:51,272 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:04:51,272 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1766552813] [2022-04-28 14:04:51,272 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 14:04:51,272 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:04:51,272 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:04:51,273 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:04:51,313 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-28 14:04:51,364 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 14:04:51,364 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:04:51,365 INFO L263 TraceCheckSpWp]: Trace formula consists of 216 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 14:04:51,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:04:51,378 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:04:51,664 INFO L272 TraceCheckUtils]: 0: Hoare triple {11238#true} call ULTIMATE.init(); {11238#true} is VALID [2022-04-28 14:04:51,664 INFO L290 TraceCheckUtils]: 1: Hoare triple {11238#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; {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,665 INFO L290 TraceCheckUtils]: 2: Hoare triple {11246#(<= ~counter~0 0)} assume true; {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,665 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11246#(<= ~counter~0 0)} {11238#true} #77#return; {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,665 INFO L272 TraceCheckUtils]: 4: Hoare triple {11246#(<= ~counter~0 0)} call #t~ret7 := main(); {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,666 INFO L290 TraceCheckUtils]: 5: Hoare triple {11246#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,666 INFO L272 TraceCheckUtils]: 6: Hoare triple {11246#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,666 INFO L290 TraceCheckUtils]: 7: Hoare triple {11246#(<= ~counter~0 0)} ~cond := #in~cond; {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,667 INFO L290 TraceCheckUtils]: 8: Hoare triple {11246#(<= ~counter~0 0)} assume !(0 == ~cond); {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,667 INFO L290 TraceCheckUtils]: 9: Hoare triple {11246#(<= ~counter~0 0)} assume true; {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,667 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11246#(<= ~counter~0 0)} {11246#(<= ~counter~0 0)} #69#return; {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,667 INFO L290 TraceCheckUtils]: 11: Hoare triple {11246#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {11246#(<= ~counter~0 0)} is VALID [2022-04-28 14:04:51,668 INFO L290 TraceCheckUtils]: 12: Hoare triple {11246#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11280#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:51,668 INFO L290 TraceCheckUtils]: 13: Hoare triple {11280#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {11280#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:51,669 INFO L272 TraceCheckUtils]: 14: Hoare triple {11280#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {11280#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:51,669 INFO L290 TraceCheckUtils]: 15: Hoare triple {11280#(<= ~counter~0 1)} ~cond := #in~cond; {11280#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:51,669 INFO L290 TraceCheckUtils]: 16: Hoare triple {11280#(<= ~counter~0 1)} assume !(0 == ~cond); {11280#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:51,670 INFO L290 TraceCheckUtils]: 17: Hoare triple {11280#(<= ~counter~0 1)} assume true; {11280#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:51,670 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11280#(<= ~counter~0 1)} {11280#(<= ~counter~0 1)} #71#return; {11280#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:51,670 INFO L290 TraceCheckUtils]: 19: Hoare triple {11280#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {11280#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:51,671 INFO L290 TraceCheckUtils]: 20: Hoare triple {11280#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {11280#(<= ~counter~0 1)} is VALID [2022-04-28 14:04:51,671 INFO L290 TraceCheckUtils]: 21: Hoare triple {11280#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11308#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:51,671 INFO L290 TraceCheckUtils]: 22: Hoare triple {11308#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {11308#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:51,672 INFO L272 TraceCheckUtils]: 23: Hoare triple {11308#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {11308#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:51,672 INFO L290 TraceCheckUtils]: 24: Hoare triple {11308#(<= ~counter~0 2)} ~cond := #in~cond; {11308#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:51,673 INFO L290 TraceCheckUtils]: 25: Hoare triple {11308#(<= ~counter~0 2)} assume !(0 == ~cond); {11308#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:51,673 INFO L290 TraceCheckUtils]: 26: Hoare triple {11308#(<= ~counter~0 2)} assume true; {11308#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:51,673 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {11308#(<= ~counter~0 2)} {11308#(<= ~counter~0 2)} #71#return; {11308#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:51,674 INFO L290 TraceCheckUtils]: 28: Hoare triple {11308#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {11308#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:51,674 INFO L290 TraceCheckUtils]: 29: Hoare triple {11308#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {11308#(<= ~counter~0 2)} is VALID [2022-04-28 14:04:51,674 INFO L290 TraceCheckUtils]: 30: Hoare triple {11308#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11336#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:51,675 INFO L290 TraceCheckUtils]: 31: Hoare triple {11336#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {11336#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:51,675 INFO L272 TraceCheckUtils]: 32: Hoare triple {11336#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {11336#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:51,675 INFO L290 TraceCheckUtils]: 33: Hoare triple {11336#(<= ~counter~0 3)} ~cond := #in~cond; {11336#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:51,676 INFO L290 TraceCheckUtils]: 34: Hoare triple {11336#(<= ~counter~0 3)} assume !(0 == ~cond); {11336#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:51,676 INFO L290 TraceCheckUtils]: 35: Hoare triple {11336#(<= ~counter~0 3)} assume true; {11336#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:51,676 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11336#(<= ~counter~0 3)} {11336#(<= ~counter~0 3)} #71#return; {11336#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:51,677 INFO L290 TraceCheckUtils]: 37: Hoare triple {11336#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {11336#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:51,677 INFO L290 TraceCheckUtils]: 38: Hoare triple {11336#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {11336#(<= ~counter~0 3)} is VALID [2022-04-28 14:04:51,677 INFO L290 TraceCheckUtils]: 39: Hoare triple {11336#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,678 INFO L290 TraceCheckUtils]: 40: Hoare triple {11364#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,678 INFO L272 TraceCheckUtils]: 41: Hoare triple {11364#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,678 INFO L290 TraceCheckUtils]: 42: Hoare triple {11364#(<= ~counter~0 4)} ~cond := #in~cond; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,679 INFO L290 TraceCheckUtils]: 43: Hoare triple {11364#(<= ~counter~0 4)} assume !(0 == ~cond); {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,679 INFO L290 TraceCheckUtils]: 44: Hoare triple {11364#(<= ~counter~0 4)} assume true; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,680 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {11364#(<= ~counter~0 4)} {11364#(<= ~counter~0 4)} #71#return; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,680 INFO L290 TraceCheckUtils]: 46: Hoare triple {11364#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,680 INFO L290 TraceCheckUtils]: 47: Hoare triple {11364#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,680 INFO L290 TraceCheckUtils]: 48: Hoare triple {11364#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,681 INFO L290 TraceCheckUtils]: 49: Hoare triple {11392#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,681 INFO L272 TraceCheckUtils]: 50: Hoare triple {11392#(<= ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,681 INFO L290 TraceCheckUtils]: 51: Hoare triple {11392#(<= ~counter~0 5)} ~cond := #in~cond; {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,682 INFO L290 TraceCheckUtils]: 52: Hoare triple {11392#(<= ~counter~0 5)} assume !(0 == ~cond); {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,682 INFO L290 TraceCheckUtils]: 53: Hoare triple {11392#(<= ~counter~0 5)} assume true; {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,683 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {11392#(<= ~counter~0 5)} {11392#(<= ~counter~0 5)} #71#return; {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,683 INFO L290 TraceCheckUtils]: 55: Hoare triple {11392#(<= ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,683 INFO L290 TraceCheckUtils]: 56: Hoare triple {11392#(<= ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,683 INFO L290 TraceCheckUtils]: 57: Hoare triple {11392#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11420#(<= |main_#t~post6| 5)} is VALID [2022-04-28 14:04:51,684 INFO L290 TraceCheckUtils]: 58: Hoare triple {11420#(<= |main_#t~post6| 5)} assume !(#t~post6 < 10);havoc #t~post6; {11239#false} is VALID [2022-04-28 14:04:51,684 INFO L272 TraceCheckUtils]: 59: Hoare triple {11239#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {11239#false} is VALID [2022-04-28 14:04:51,684 INFO L290 TraceCheckUtils]: 60: Hoare triple {11239#false} ~cond := #in~cond; {11239#false} is VALID [2022-04-28 14:04:51,684 INFO L290 TraceCheckUtils]: 61: Hoare triple {11239#false} assume 0 == ~cond; {11239#false} is VALID [2022-04-28 14:04:51,684 INFO L290 TraceCheckUtils]: 62: Hoare triple {11239#false} assume !false; {11239#false} is VALID [2022-04-28 14:04:51,684 INFO L134 CoverageAnalysis]: Checked inductivity of 110 backedges. 10 proven. 100 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 14:04:51,684 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:04:51,971 INFO L290 TraceCheckUtils]: 62: Hoare triple {11239#false} assume !false; {11239#false} is VALID [2022-04-28 14:04:51,971 INFO L290 TraceCheckUtils]: 61: Hoare triple {11239#false} assume 0 == ~cond; {11239#false} is VALID [2022-04-28 14:04:51,971 INFO L290 TraceCheckUtils]: 60: Hoare triple {11239#false} ~cond := #in~cond; {11239#false} is VALID [2022-04-28 14:04:51,971 INFO L272 TraceCheckUtils]: 59: Hoare triple {11239#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {11239#false} is VALID [2022-04-28 14:04:51,971 INFO L290 TraceCheckUtils]: 58: Hoare triple {11448#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {11239#false} is VALID [2022-04-28 14:04:51,972 INFO L290 TraceCheckUtils]: 57: Hoare triple {11452#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11448#(< |main_#t~post6| 10)} is VALID [2022-04-28 14:04:51,972 INFO L290 TraceCheckUtils]: 56: Hoare triple {11452#(< ~counter~0 10)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {11452#(< ~counter~0 10)} is VALID [2022-04-28 14:04:51,972 INFO L290 TraceCheckUtils]: 55: Hoare triple {11452#(< ~counter~0 10)} assume !!(0 != ~a~0 && 0 != ~b~0); {11452#(< ~counter~0 10)} is VALID [2022-04-28 14:04:51,973 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {11238#true} {11452#(< ~counter~0 10)} #71#return; {11452#(< ~counter~0 10)} is VALID [2022-04-28 14:04:51,973 INFO L290 TraceCheckUtils]: 53: Hoare triple {11238#true} assume true; {11238#true} is VALID [2022-04-28 14:04:51,973 INFO L290 TraceCheckUtils]: 52: Hoare triple {11238#true} assume !(0 == ~cond); {11238#true} is VALID [2022-04-28 14:04:51,973 INFO L290 TraceCheckUtils]: 51: Hoare triple {11238#true} ~cond := #in~cond; {11238#true} is VALID [2022-04-28 14:04:51,973 INFO L272 TraceCheckUtils]: 50: Hoare triple {11452#(< ~counter~0 10)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {11238#true} is VALID [2022-04-28 14:04:51,973 INFO L290 TraceCheckUtils]: 49: Hoare triple {11452#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {11452#(< ~counter~0 10)} is VALID [2022-04-28 14:04:51,974 INFO L290 TraceCheckUtils]: 48: Hoare triple {11480#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11452#(< ~counter~0 10)} is VALID [2022-04-28 14:04:51,974 INFO L290 TraceCheckUtils]: 47: Hoare triple {11480#(< ~counter~0 9)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {11480#(< ~counter~0 9)} is VALID [2022-04-28 14:04:51,974 INFO L290 TraceCheckUtils]: 46: Hoare triple {11480#(< ~counter~0 9)} assume !!(0 != ~a~0 && 0 != ~b~0); {11480#(< ~counter~0 9)} is VALID [2022-04-28 14:04:51,975 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {11238#true} {11480#(< ~counter~0 9)} #71#return; {11480#(< ~counter~0 9)} is VALID [2022-04-28 14:04:51,975 INFO L290 TraceCheckUtils]: 44: Hoare triple {11238#true} assume true; {11238#true} is VALID [2022-04-28 14:04:51,975 INFO L290 TraceCheckUtils]: 43: Hoare triple {11238#true} assume !(0 == ~cond); {11238#true} is VALID [2022-04-28 14:04:51,975 INFO L290 TraceCheckUtils]: 42: Hoare triple {11238#true} ~cond := #in~cond; {11238#true} is VALID [2022-04-28 14:04:51,975 INFO L272 TraceCheckUtils]: 41: Hoare triple {11480#(< ~counter~0 9)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {11238#true} is VALID [2022-04-28 14:04:51,975 INFO L290 TraceCheckUtils]: 40: Hoare triple {11480#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {11480#(< ~counter~0 9)} is VALID [2022-04-28 14:04:51,976 INFO L290 TraceCheckUtils]: 39: Hoare triple {11508#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11480#(< ~counter~0 9)} is VALID [2022-04-28 14:04:51,976 INFO L290 TraceCheckUtils]: 38: Hoare triple {11508#(< ~counter~0 8)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {11508#(< ~counter~0 8)} is VALID [2022-04-28 14:04:51,976 INFO L290 TraceCheckUtils]: 37: Hoare triple {11508#(< ~counter~0 8)} assume !!(0 != ~a~0 && 0 != ~b~0); {11508#(< ~counter~0 8)} is VALID [2022-04-28 14:04:51,977 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11238#true} {11508#(< ~counter~0 8)} #71#return; {11508#(< ~counter~0 8)} is VALID [2022-04-28 14:04:51,977 INFO L290 TraceCheckUtils]: 35: Hoare triple {11238#true} assume true; {11238#true} is VALID [2022-04-28 14:04:51,977 INFO L290 TraceCheckUtils]: 34: Hoare triple {11238#true} assume !(0 == ~cond); {11238#true} is VALID [2022-04-28 14:04:51,977 INFO L290 TraceCheckUtils]: 33: Hoare triple {11238#true} ~cond := #in~cond; {11238#true} is VALID [2022-04-28 14:04:51,977 INFO L272 TraceCheckUtils]: 32: Hoare triple {11508#(< ~counter~0 8)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {11238#true} is VALID [2022-04-28 14:04:51,977 INFO L290 TraceCheckUtils]: 31: Hoare triple {11508#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {11508#(< ~counter~0 8)} is VALID [2022-04-28 14:04:51,978 INFO L290 TraceCheckUtils]: 30: Hoare triple {11536#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11508#(< ~counter~0 8)} is VALID [2022-04-28 14:04:51,978 INFO L290 TraceCheckUtils]: 29: Hoare triple {11536#(< ~counter~0 7)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {11536#(< ~counter~0 7)} is VALID [2022-04-28 14:04:51,978 INFO L290 TraceCheckUtils]: 28: Hoare triple {11536#(< ~counter~0 7)} assume !!(0 != ~a~0 && 0 != ~b~0); {11536#(< ~counter~0 7)} is VALID [2022-04-28 14:04:51,979 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {11238#true} {11536#(< ~counter~0 7)} #71#return; {11536#(< ~counter~0 7)} is VALID [2022-04-28 14:04:51,979 INFO L290 TraceCheckUtils]: 26: Hoare triple {11238#true} assume true; {11238#true} is VALID [2022-04-28 14:04:51,979 INFO L290 TraceCheckUtils]: 25: Hoare triple {11238#true} assume !(0 == ~cond); {11238#true} is VALID [2022-04-28 14:04:51,979 INFO L290 TraceCheckUtils]: 24: Hoare triple {11238#true} ~cond := #in~cond; {11238#true} is VALID [2022-04-28 14:04:51,979 INFO L272 TraceCheckUtils]: 23: Hoare triple {11536#(< ~counter~0 7)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {11238#true} is VALID [2022-04-28 14:04:51,979 INFO L290 TraceCheckUtils]: 22: Hoare triple {11536#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {11536#(< ~counter~0 7)} is VALID [2022-04-28 14:04:51,979 INFO L290 TraceCheckUtils]: 21: Hoare triple {11392#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11536#(< ~counter~0 7)} is VALID [2022-04-28 14:04:51,980 INFO L290 TraceCheckUtils]: 20: Hoare triple {11392#(<= ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,980 INFO L290 TraceCheckUtils]: 19: Hoare triple {11392#(<= ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,980 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11238#true} {11392#(<= ~counter~0 5)} #71#return; {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,981 INFO L290 TraceCheckUtils]: 17: Hoare triple {11238#true} assume true; {11238#true} is VALID [2022-04-28 14:04:51,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {11238#true} assume !(0 == ~cond); {11238#true} is VALID [2022-04-28 14:04:51,981 INFO L290 TraceCheckUtils]: 15: Hoare triple {11238#true} ~cond := #in~cond; {11238#true} is VALID [2022-04-28 14:04:51,981 INFO L272 TraceCheckUtils]: 14: Hoare triple {11392#(<= ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {11238#true} is VALID [2022-04-28 14:04:51,981 INFO L290 TraceCheckUtils]: 13: Hoare triple {11392#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,981 INFO L290 TraceCheckUtils]: 12: Hoare triple {11364#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11392#(<= ~counter~0 5)} is VALID [2022-04-28 14:04:51,982 INFO L290 TraceCheckUtils]: 11: Hoare triple {11364#(<= ~counter~0 4)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,982 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11238#true} {11364#(<= ~counter~0 4)} #69#return; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,982 INFO L290 TraceCheckUtils]: 9: Hoare triple {11238#true} assume true; {11238#true} is VALID [2022-04-28 14:04:51,982 INFO L290 TraceCheckUtils]: 8: Hoare triple {11238#true} assume !(0 == ~cond); {11238#true} is VALID [2022-04-28 14:04:51,982 INFO L290 TraceCheckUtils]: 7: Hoare triple {11238#true} ~cond := #in~cond; {11238#true} is VALID [2022-04-28 14:04:51,982 INFO L272 TraceCheckUtils]: 6: Hoare triple {11364#(<= ~counter~0 4)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11238#true} is VALID [2022-04-28 14:04:51,982 INFO L290 TraceCheckUtils]: 5: Hoare triple {11364#(<= ~counter~0 4)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,983 INFO L272 TraceCheckUtils]: 4: Hoare triple {11364#(<= ~counter~0 4)} call #t~ret7 := main(); {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,983 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11364#(<= ~counter~0 4)} {11238#true} #77#return; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,983 INFO L290 TraceCheckUtils]: 2: Hoare triple {11364#(<= ~counter~0 4)} assume true; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {11238#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; {11364#(<= ~counter~0 4)} is VALID [2022-04-28 14:04:51,984 INFO L272 TraceCheckUtils]: 0: Hoare triple {11238#true} call ULTIMATE.init(); {11238#true} is VALID [2022-04-28 14:04:51,984 INFO L134 CoverageAnalysis]: Checked inductivity of 110 backedges. 10 proven. 60 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-28 14:04:51,984 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:04:51,984 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2039284068] [2022-04-28 14:04:51,984 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:04:51,984 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1766552813] [2022-04-28 14:04:51,984 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1766552813] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:04:51,984 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:04:51,984 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-28 14:04:51,985 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:04:51,985 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [704433895] [2022-04-28 14:04:51,985 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [704433895] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:04:51,985 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:04:51,985 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 14:04:51,985 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1012129248] [2022-04-28 14:04:51,985 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:04:51,985 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Word has length 63 [2022-04-28 14:04:51,985 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:04:51,985 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 14:04:52,029 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:04:52,029 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 14:04:52,029 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:04:52,029 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 14:04:52,030 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 14:04:52,030 INFO L87 Difference]: Start difference. First operand 87 states and 104 transitions. Second operand has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 14:04:52,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:52,348 INFO L93 Difference]: Finished difference Result 106 states and 127 transitions. [2022-04-28 14:04:52,348 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 14:04:52,348 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Word has length 63 [2022-04-28 14:04:52,348 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:04:52,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 14:04:52,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 113 transitions. [2022-04-28 14:04:52,349 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 14:04:52,351 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 113 transitions. [2022-04-28 14:04:52,351 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 113 transitions. [2022-04-28 14:04:52,440 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:04:52,441 INFO L225 Difference]: With dead ends: 106 [2022-04-28 14:04:52,441 INFO L226 Difference]: Without dead ends: 98 [2022-04-28 14:04:52,441 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 130 GetRequests, 112 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=206, Unknown=0, NotChecked=0, Total=342 [2022-04-28 14:04:52,443 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 84 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 32 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 32 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 14:04:52,443 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 138 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 32 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 14:04:52,444 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-28 14:04:52,584 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 98. [2022-04-28 14:04:52,584 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:04:52,584 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 98 states, 75 states have (on average 1.28) internal successors, (96), 76 states have internal predecessors, (96), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:04:52,585 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 98 states, 75 states have (on average 1.28) internal successors, (96), 76 states have internal predecessors, (96), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:04:52,585 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 98 states, 75 states have (on average 1.28) internal successors, (96), 76 states have internal predecessors, (96), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:04:52,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:52,586 INFO L93 Difference]: Finished difference Result 98 states and 118 transitions. [2022-04-28 14:04:52,586 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 118 transitions. [2022-04-28 14:04:52,586 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:04:52,586 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:04:52,586 INFO L74 IsIncluded]: Start isIncluded. First operand has 98 states, 75 states have (on average 1.28) internal successors, (96), 76 states have internal predecessors, (96), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 98 states. [2022-04-28 14:04:52,587 INFO L87 Difference]: Start difference. First operand has 98 states, 75 states have (on average 1.28) internal successors, (96), 76 states have internal predecessors, (96), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 98 states. [2022-04-28 14:04:52,588 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:04:52,588 INFO L93 Difference]: Finished difference Result 98 states and 118 transitions. [2022-04-28 14:04:52,588 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 118 transitions. [2022-04-28 14:04:52,588 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:04:52,588 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:04:52,588 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:04:52,588 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:04:52,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 98 states, 75 states have (on average 1.28) internal successors, (96), 76 states have internal predecessors, (96), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:04:52,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 98 states to 98 states and 118 transitions. [2022-04-28 14:04:52,589 INFO L78 Accepts]: Start accepts. Automaton has 98 states and 118 transitions. Word has length 63 [2022-04-28 14:04:52,589 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:04:52,589 INFO L495 AbstractCegarLoop]: Abstraction has 98 states and 118 transitions. [2022-04-28 14:04:52,590 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 14:04:52,590 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 98 states and 118 transitions. [2022-04-28 14:05:03,428 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 113 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-28 14:05:03,428 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 118 transitions. [2022-04-28 14:05:03,429 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2022-04-28 14:05:03,429 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:05:03,430 INFO L195 NwaCegarLoop]: trace histogram [7, 7, 6, 6, 6, 6, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 14:05:03,448 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-28 14:05:03,638 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:05:03,640 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:05:03,641 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:05:03,641 INFO L85 PathProgramCache]: Analyzing trace with hash -1454644230, now seen corresponding path program 11 times [2022-04-28 14:05:03,641 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:05:03,641 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1861219287] [2022-04-28 14:05:09,690 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:05:09,690 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:05:09,691 INFO L85 PathProgramCache]: Analyzing trace with hash -1454644230, now seen corresponding path program 12 times [2022-04-28 14:05:09,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:05:09,691 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [999699720] [2022-04-28 14:05:09,691 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:05:09,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:05:09,703 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:05:09,704 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1887616526] [2022-04-28 14:05:09,704 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 14:05:09,704 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:05:09,704 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:05:09,706 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:05:09,707 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-28 14:05:09,795 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 14:05:09,795 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:05:09,804 INFO L263 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 14:05:09,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:05:09,822 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:05:10,142 INFO L272 TraceCheckUtils]: 0: Hoare triple {12243#true} call ULTIMATE.init(); {12243#true} is VALID [2022-04-28 14:05:10,143 INFO L290 TraceCheckUtils]: 1: Hoare triple {12243#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; {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,143 INFO L290 TraceCheckUtils]: 2: Hoare triple {12251#(<= ~counter~0 0)} assume true; {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,143 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12251#(<= ~counter~0 0)} {12243#true} #77#return; {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,143 INFO L272 TraceCheckUtils]: 4: Hoare triple {12251#(<= ~counter~0 0)} call #t~ret7 := main(); {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,144 INFO L290 TraceCheckUtils]: 5: Hoare triple {12251#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,144 INFO L272 TraceCheckUtils]: 6: Hoare triple {12251#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,144 INFO L290 TraceCheckUtils]: 7: Hoare triple {12251#(<= ~counter~0 0)} ~cond := #in~cond; {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,145 INFO L290 TraceCheckUtils]: 8: Hoare triple {12251#(<= ~counter~0 0)} assume !(0 == ~cond); {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,145 INFO L290 TraceCheckUtils]: 9: Hoare triple {12251#(<= ~counter~0 0)} assume true; {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,145 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12251#(<= ~counter~0 0)} {12251#(<= ~counter~0 0)} #69#return; {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,145 INFO L290 TraceCheckUtils]: 11: Hoare triple {12251#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {12251#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:10,146 INFO L290 TraceCheckUtils]: 12: Hoare triple {12251#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12285#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:10,146 INFO L290 TraceCheckUtils]: 13: Hoare triple {12285#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {12285#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:10,147 INFO L272 TraceCheckUtils]: 14: Hoare triple {12285#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12285#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:10,147 INFO L290 TraceCheckUtils]: 15: Hoare triple {12285#(<= ~counter~0 1)} ~cond := #in~cond; {12285#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:10,147 INFO L290 TraceCheckUtils]: 16: Hoare triple {12285#(<= ~counter~0 1)} assume !(0 == ~cond); {12285#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:10,148 INFO L290 TraceCheckUtils]: 17: Hoare triple {12285#(<= ~counter~0 1)} assume true; {12285#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:10,148 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12285#(<= ~counter~0 1)} {12285#(<= ~counter~0 1)} #71#return; {12285#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:10,148 INFO L290 TraceCheckUtils]: 19: Hoare triple {12285#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {12285#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:10,149 INFO L290 TraceCheckUtils]: 20: Hoare triple {12285#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12285#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:10,149 INFO L290 TraceCheckUtils]: 21: Hoare triple {12285#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12313#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:10,149 INFO L290 TraceCheckUtils]: 22: Hoare triple {12313#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {12313#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:10,150 INFO L272 TraceCheckUtils]: 23: Hoare triple {12313#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12313#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:10,150 INFO L290 TraceCheckUtils]: 24: Hoare triple {12313#(<= ~counter~0 2)} ~cond := #in~cond; {12313#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:10,150 INFO L290 TraceCheckUtils]: 25: Hoare triple {12313#(<= ~counter~0 2)} assume !(0 == ~cond); {12313#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:10,150 INFO L290 TraceCheckUtils]: 26: Hoare triple {12313#(<= ~counter~0 2)} assume true; {12313#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:10,151 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {12313#(<= ~counter~0 2)} {12313#(<= ~counter~0 2)} #71#return; {12313#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:10,151 INFO L290 TraceCheckUtils]: 28: Hoare triple {12313#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {12313#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:10,151 INFO L290 TraceCheckUtils]: 29: Hoare triple {12313#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12313#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:10,152 INFO L290 TraceCheckUtils]: 30: Hoare triple {12313#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,152 INFO L290 TraceCheckUtils]: 31: Hoare triple {12341#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,153 INFO L272 TraceCheckUtils]: 32: Hoare triple {12341#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,153 INFO L290 TraceCheckUtils]: 33: Hoare triple {12341#(<= ~counter~0 3)} ~cond := #in~cond; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,153 INFO L290 TraceCheckUtils]: 34: Hoare triple {12341#(<= ~counter~0 3)} assume !(0 == ~cond); {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,153 INFO L290 TraceCheckUtils]: 35: Hoare triple {12341#(<= ~counter~0 3)} assume true; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,154 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {12341#(<= ~counter~0 3)} {12341#(<= ~counter~0 3)} #71#return; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,154 INFO L290 TraceCheckUtils]: 37: Hoare triple {12341#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,154 INFO L290 TraceCheckUtils]: 38: Hoare triple {12341#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,155 INFO L290 TraceCheckUtils]: 39: Hoare triple {12341#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,155 INFO L290 TraceCheckUtils]: 40: Hoare triple {12369#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,156 INFO L272 TraceCheckUtils]: 41: Hoare triple {12369#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,156 INFO L290 TraceCheckUtils]: 42: Hoare triple {12369#(<= ~counter~0 4)} ~cond := #in~cond; {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,156 INFO L290 TraceCheckUtils]: 43: Hoare triple {12369#(<= ~counter~0 4)} assume !(0 == ~cond); {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,156 INFO L290 TraceCheckUtils]: 44: Hoare triple {12369#(<= ~counter~0 4)} assume true; {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,157 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12369#(<= ~counter~0 4)} {12369#(<= ~counter~0 4)} #71#return; {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,157 INFO L290 TraceCheckUtils]: 46: Hoare triple {12369#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,157 INFO L290 TraceCheckUtils]: 47: Hoare triple {12369#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,158 INFO L290 TraceCheckUtils]: 48: Hoare triple {12369#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,158 INFO L290 TraceCheckUtils]: 49: Hoare triple {12397#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,158 INFO L272 TraceCheckUtils]: 50: Hoare triple {12397#(<= ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,159 INFO L290 TraceCheckUtils]: 51: Hoare triple {12397#(<= ~counter~0 5)} ~cond := #in~cond; {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,159 INFO L290 TraceCheckUtils]: 52: Hoare triple {12397#(<= ~counter~0 5)} assume !(0 == ~cond); {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,159 INFO L290 TraceCheckUtils]: 53: Hoare triple {12397#(<= ~counter~0 5)} assume true; {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,160 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {12397#(<= ~counter~0 5)} {12397#(<= ~counter~0 5)} #71#return; {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,160 INFO L290 TraceCheckUtils]: 55: Hoare triple {12397#(<= ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,160 INFO L290 TraceCheckUtils]: 56: Hoare triple {12397#(<= ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,161 INFO L290 TraceCheckUtils]: 57: Hoare triple {12397#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,161 INFO L290 TraceCheckUtils]: 58: Hoare triple {12425#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,161 INFO L272 TraceCheckUtils]: 59: Hoare triple {12425#(<= ~counter~0 6)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,162 INFO L290 TraceCheckUtils]: 60: Hoare triple {12425#(<= ~counter~0 6)} ~cond := #in~cond; {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,162 INFO L290 TraceCheckUtils]: 61: Hoare triple {12425#(<= ~counter~0 6)} assume !(0 == ~cond); {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,162 INFO L290 TraceCheckUtils]: 62: Hoare triple {12425#(<= ~counter~0 6)} assume true; {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,163 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {12425#(<= ~counter~0 6)} {12425#(<= ~counter~0 6)} #71#return; {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,163 INFO L290 TraceCheckUtils]: 64: Hoare triple {12425#(<= ~counter~0 6)} assume !!(0 != ~a~0 && 0 != ~b~0); {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,163 INFO L290 TraceCheckUtils]: 65: Hoare triple {12425#(<= ~counter~0 6)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,163 INFO L290 TraceCheckUtils]: 66: Hoare triple {12425#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12453#(<= |main_#t~post6| 6)} is VALID [2022-04-28 14:05:10,164 INFO L290 TraceCheckUtils]: 67: Hoare triple {12453#(<= |main_#t~post6| 6)} assume !(#t~post6 < 10);havoc #t~post6; {12244#false} is VALID [2022-04-28 14:05:10,164 INFO L272 TraceCheckUtils]: 68: Hoare triple {12244#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {12244#false} is VALID [2022-04-28 14:05:10,164 INFO L290 TraceCheckUtils]: 69: Hoare triple {12244#false} ~cond := #in~cond; {12244#false} is VALID [2022-04-28 14:05:10,164 INFO L290 TraceCheckUtils]: 70: Hoare triple {12244#false} assume 0 == ~cond; {12244#false} is VALID [2022-04-28 14:05:10,164 INFO L290 TraceCheckUtils]: 71: Hoare triple {12244#false} assume !false; {12244#false} is VALID [2022-04-28 14:05:10,164 INFO L134 CoverageAnalysis]: Checked inductivity of 159 backedges. 12 proven. 147 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 14:05:10,164 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:05:10,468 INFO L290 TraceCheckUtils]: 71: Hoare triple {12244#false} assume !false; {12244#false} is VALID [2022-04-28 14:05:10,468 INFO L290 TraceCheckUtils]: 70: Hoare triple {12244#false} assume 0 == ~cond; {12244#false} is VALID [2022-04-28 14:05:10,468 INFO L290 TraceCheckUtils]: 69: Hoare triple {12244#false} ~cond := #in~cond; {12244#false} is VALID [2022-04-28 14:05:10,468 INFO L272 TraceCheckUtils]: 68: Hoare triple {12244#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {12244#false} is VALID [2022-04-28 14:05:10,469 INFO L290 TraceCheckUtils]: 67: Hoare triple {12481#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {12244#false} is VALID [2022-04-28 14:05:10,469 INFO L290 TraceCheckUtils]: 66: Hoare triple {12485#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12481#(< |main_#t~post6| 10)} is VALID [2022-04-28 14:05:10,469 INFO L290 TraceCheckUtils]: 65: Hoare triple {12485#(< ~counter~0 10)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12485#(< ~counter~0 10)} is VALID [2022-04-28 14:05:10,469 INFO L290 TraceCheckUtils]: 64: Hoare triple {12485#(< ~counter~0 10)} assume !!(0 != ~a~0 && 0 != ~b~0); {12485#(< ~counter~0 10)} is VALID [2022-04-28 14:05:10,470 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {12243#true} {12485#(< ~counter~0 10)} #71#return; {12485#(< ~counter~0 10)} is VALID [2022-04-28 14:05:10,470 INFO L290 TraceCheckUtils]: 62: Hoare triple {12243#true} assume true; {12243#true} is VALID [2022-04-28 14:05:10,470 INFO L290 TraceCheckUtils]: 61: Hoare triple {12243#true} assume !(0 == ~cond); {12243#true} is VALID [2022-04-28 14:05:10,470 INFO L290 TraceCheckUtils]: 60: Hoare triple {12243#true} ~cond := #in~cond; {12243#true} is VALID [2022-04-28 14:05:10,470 INFO L272 TraceCheckUtils]: 59: Hoare triple {12485#(< ~counter~0 10)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12243#true} is VALID [2022-04-28 14:05:10,470 INFO L290 TraceCheckUtils]: 58: Hoare triple {12485#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {12485#(< ~counter~0 10)} is VALID [2022-04-28 14:05:10,471 INFO L290 TraceCheckUtils]: 57: Hoare triple {12513#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12485#(< ~counter~0 10)} is VALID [2022-04-28 14:05:10,471 INFO L290 TraceCheckUtils]: 56: Hoare triple {12513#(< ~counter~0 9)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12513#(< ~counter~0 9)} is VALID [2022-04-28 14:05:10,472 INFO L290 TraceCheckUtils]: 55: Hoare triple {12513#(< ~counter~0 9)} assume !!(0 != ~a~0 && 0 != ~b~0); {12513#(< ~counter~0 9)} is VALID [2022-04-28 14:05:10,472 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {12243#true} {12513#(< ~counter~0 9)} #71#return; {12513#(< ~counter~0 9)} is VALID [2022-04-28 14:05:10,472 INFO L290 TraceCheckUtils]: 53: Hoare triple {12243#true} assume true; {12243#true} is VALID [2022-04-28 14:05:10,473 INFO L290 TraceCheckUtils]: 52: Hoare triple {12243#true} assume !(0 == ~cond); {12243#true} is VALID [2022-04-28 14:05:10,473 INFO L290 TraceCheckUtils]: 51: Hoare triple {12243#true} ~cond := #in~cond; {12243#true} is VALID [2022-04-28 14:05:10,473 INFO L272 TraceCheckUtils]: 50: Hoare triple {12513#(< ~counter~0 9)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12243#true} is VALID [2022-04-28 14:05:10,473 INFO L290 TraceCheckUtils]: 49: Hoare triple {12513#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {12513#(< ~counter~0 9)} is VALID [2022-04-28 14:05:10,473 INFO L290 TraceCheckUtils]: 48: Hoare triple {12541#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12513#(< ~counter~0 9)} is VALID [2022-04-28 14:05:10,474 INFO L290 TraceCheckUtils]: 47: Hoare triple {12541#(< ~counter~0 8)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12541#(< ~counter~0 8)} is VALID [2022-04-28 14:05:10,474 INFO L290 TraceCheckUtils]: 46: Hoare triple {12541#(< ~counter~0 8)} assume !!(0 != ~a~0 && 0 != ~b~0); {12541#(< ~counter~0 8)} is VALID [2022-04-28 14:05:10,474 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12243#true} {12541#(< ~counter~0 8)} #71#return; {12541#(< ~counter~0 8)} is VALID [2022-04-28 14:05:10,474 INFO L290 TraceCheckUtils]: 44: Hoare triple {12243#true} assume true; {12243#true} is VALID [2022-04-28 14:05:10,474 INFO L290 TraceCheckUtils]: 43: Hoare triple {12243#true} assume !(0 == ~cond); {12243#true} is VALID [2022-04-28 14:05:10,475 INFO L290 TraceCheckUtils]: 42: Hoare triple {12243#true} ~cond := #in~cond; {12243#true} is VALID [2022-04-28 14:05:10,475 INFO L272 TraceCheckUtils]: 41: Hoare triple {12541#(< ~counter~0 8)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12243#true} is VALID [2022-04-28 14:05:10,475 INFO L290 TraceCheckUtils]: 40: Hoare triple {12541#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {12541#(< ~counter~0 8)} is VALID [2022-04-28 14:05:10,475 INFO L290 TraceCheckUtils]: 39: Hoare triple {12425#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12541#(< ~counter~0 8)} is VALID [2022-04-28 14:05:10,476 INFO L290 TraceCheckUtils]: 38: Hoare triple {12425#(<= ~counter~0 6)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,476 INFO L290 TraceCheckUtils]: 37: Hoare triple {12425#(<= ~counter~0 6)} assume !!(0 != ~a~0 && 0 != ~b~0); {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,476 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {12243#true} {12425#(<= ~counter~0 6)} #71#return; {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,476 INFO L290 TraceCheckUtils]: 35: Hoare triple {12243#true} assume true; {12243#true} is VALID [2022-04-28 14:05:10,476 INFO L290 TraceCheckUtils]: 34: Hoare triple {12243#true} assume !(0 == ~cond); {12243#true} is VALID [2022-04-28 14:05:10,477 INFO L290 TraceCheckUtils]: 33: Hoare triple {12243#true} ~cond := #in~cond; {12243#true} is VALID [2022-04-28 14:05:10,477 INFO L272 TraceCheckUtils]: 32: Hoare triple {12425#(<= ~counter~0 6)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12243#true} is VALID [2022-04-28 14:05:10,477 INFO L290 TraceCheckUtils]: 31: Hoare triple {12425#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,477 INFO L290 TraceCheckUtils]: 30: Hoare triple {12397#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12425#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:10,477 INFO L290 TraceCheckUtils]: 29: Hoare triple {12397#(<= ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,478 INFO L290 TraceCheckUtils]: 28: Hoare triple {12397#(<= ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,478 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {12243#true} {12397#(<= ~counter~0 5)} #71#return; {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,478 INFO L290 TraceCheckUtils]: 26: Hoare triple {12243#true} assume true; {12243#true} is VALID [2022-04-28 14:05:10,478 INFO L290 TraceCheckUtils]: 25: Hoare triple {12243#true} assume !(0 == ~cond); {12243#true} is VALID [2022-04-28 14:05:10,478 INFO L290 TraceCheckUtils]: 24: Hoare triple {12243#true} ~cond := #in~cond; {12243#true} is VALID [2022-04-28 14:05:10,478 INFO L272 TraceCheckUtils]: 23: Hoare triple {12397#(<= ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12243#true} is VALID [2022-04-28 14:05:10,479 INFO L290 TraceCheckUtils]: 22: Hoare triple {12397#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,479 INFO L290 TraceCheckUtils]: 21: Hoare triple {12369#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12397#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:10,479 INFO L290 TraceCheckUtils]: 20: Hoare triple {12369#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,480 INFO L290 TraceCheckUtils]: 19: Hoare triple {12369#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,480 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12243#true} {12369#(<= ~counter~0 4)} #71#return; {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,480 INFO L290 TraceCheckUtils]: 17: Hoare triple {12243#true} assume true; {12243#true} is VALID [2022-04-28 14:05:10,480 INFO L290 TraceCheckUtils]: 16: Hoare triple {12243#true} assume !(0 == ~cond); {12243#true} is VALID [2022-04-28 14:05:10,480 INFO L290 TraceCheckUtils]: 15: Hoare triple {12243#true} ~cond := #in~cond; {12243#true} is VALID [2022-04-28 14:05:10,480 INFO L272 TraceCheckUtils]: 14: Hoare triple {12369#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {12243#true} is VALID [2022-04-28 14:05:10,483 INFO L290 TraceCheckUtils]: 13: Hoare triple {12369#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,484 INFO L290 TraceCheckUtils]: 12: Hoare triple {12341#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12369#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:10,484 INFO L290 TraceCheckUtils]: 11: Hoare triple {12341#(<= ~counter~0 3)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,484 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12243#true} {12341#(<= ~counter~0 3)} #69#return; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,484 INFO L290 TraceCheckUtils]: 9: Hoare triple {12243#true} assume true; {12243#true} is VALID [2022-04-28 14:05:10,484 INFO L290 TraceCheckUtils]: 8: Hoare triple {12243#true} assume !(0 == ~cond); {12243#true} is VALID [2022-04-28 14:05:10,484 INFO L290 TraceCheckUtils]: 7: Hoare triple {12243#true} ~cond := #in~cond; {12243#true} is VALID [2022-04-28 14:05:10,484 INFO L272 TraceCheckUtils]: 6: Hoare triple {12341#(<= ~counter~0 3)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12243#true} is VALID [2022-04-28 14:05:10,485 INFO L290 TraceCheckUtils]: 5: Hoare triple {12341#(<= ~counter~0 3)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,485 INFO L272 TraceCheckUtils]: 4: Hoare triple {12341#(<= ~counter~0 3)} call #t~ret7 := main(); {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,485 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12341#(<= ~counter~0 3)} {12243#true} #77#return; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,490 INFO L290 TraceCheckUtils]: 2: Hoare triple {12341#(<= ~counter~0 3)} assume true; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,491 INFO L290 TraceCheckUtils]: 1: Hoare triple {12243#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; {12341#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:10,491 INFO L272 TraceCheckUtils]: 0: Hoare triple {12243#true} call ULTIMATE.init(); {12243#true} is VALID [2022-04-28 14:05:10,492 INFO L134 CoverageAnalysis]: Checked inductivity of 159 backedges. 12 proven. 87 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-28 14:05:10,492 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:05:10,492 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [999699720] [2022-04-28 14:05:10,492 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:05:10,492 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1887616526] [2022-04-28 14:05:10,492 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1887616526] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:05:10,492 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:05:10,492 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-28 14:05:10,492 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:05:10,492 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1861219287] [2022-04-28 14:05:10,492 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1861219287] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:05:10,492 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:05:10,492 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 14:05:10,493 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1383697105] [2022-04-28 14:05:10,493 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:05:10,493 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Word has length 72 [2022-04-28 14:05:10,493 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:05:10,493 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:05:10,544 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:05:10,545 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 14:05:10,545 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:05:10,545 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 14:05:10,545 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 14:05:10,545 INFO L87 Difference]: Start difference. First operand 98 states and 118 transitions. Second operand has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:05:10,895 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:05:10,895 INFO L93 Difference]: Finished difference Result 117 states and 141 transitions. [2022-04-28 14:05:10,895 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 14:05:10,895 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Word has length 72 [2022-04-28 14:05:10,896 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:05:10,896 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:05:10,897 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 127 transitions. [2022-04-28 14:05:10,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:05:10,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 127 transitions. [2022-04-28 14:05:10,898 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 127 transitions. [2022-04-28 14:05:10,994 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:05:10,995 INFO L225 Difference]: With dead ends: 117 [2022-04-28 14:05:10,996 INFO L226 Difference]: Without dead ends: 109 [2022-04-28 14:05:10,996 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 149 GetRequests, 130 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=149, Invalid=231, Unknown=0, NotChecked=0, Total=380 [2022-04-28 14:05:10,996 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 52 mSDsluCounter, 138 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 14:05:10,996 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 174 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 14:05:10,997 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 109 states. [2022-04-28 14:05:11,144 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 109 to 109. [2022-04-28 14:05:11,144 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:05:11,144 INFO L82 GeneralOperation]: Start isEquivalent. First operand 109 states. Second operand has 109 states, 84 states have (on average 1.2857142857142858) internal successors, (108), 85 states have internal predecessors, (108), 13 states have call successors, (13), 12 states have call predecessors, (13), 11 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:05:11,145 INFO L74 IsIncluded]: Start isIncluded. First operand 109 states. Second operand has 109 states, 84 states have (on average 1.2857142857142858) internal successors, (108), 85 states have internal predecessors, (108), 13 states have call successors, (13), 12 states have call predecessors, (13), 11 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:05:11,145 INFO L87 Difference]: Start difference. First operand 109 states. Second operand has 109 states, 84 states have (on average 1.2857142857142858) internal successors, (108), 85 states have internal predecessors, (108), 13 states have call successors, (13), 12 states have call predecessors, (13), 11 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:05:11,146 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:05:11,146 INFO L93 Difference]: Finished difference Result 109 states and 132 transitions. [2022-04-28 14:05:11,146 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 132 transitions. [2022-04-28 14:05:11,146 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:05:11,146 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:05:11,146 INFO L74 IsIncluded]: Start isIncluded. First operand has 109 states, 84 states have (on average 1.2857142857142858) internal successors, (108), 85 states have internal predecessors, (108), 13 states have call successors, (13), 12 states have call predecessors, (13), 11 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 109 states. [2022-04-28 14:05:11,147 INFO L87 Difference]: Start difference. First operand has 109 states, 84 states have (on average 1.2857142857142858) internal successors, (108), 85 states have internal predecessors, (108), 13 states have call successors, (13), 12 states have call predecessors, (13), 11 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 109 states. [2022-04-28 14:05:11,148 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:05:11,148 INFO L93 Difference]: Finished difference Result 109 states and 132 transitions. [2022-04-28 14:05:11,148 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 132 transitions. [2022-04-28 14:05:11,148 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:05:11,148 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:05:11,148 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:05:11,148 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:05:11,148 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 109 states, 84 states have (on average 1.2857142857142858) internal successors, (108), 85 states have internal predecessors, (108), 13 states have call successors, (13), 12 states have call predecessors, (13), 11 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:05:11,150 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 132 transitions. [2022-04-28 14:05:11,150 INFO L78 Accepts]: Start accepts. Automaton has 109 states and 132 transitions. Word has length 72 [2022-04-28 14:05:11,150 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:05:11,150 INFO L495 AbstractCegarLoop]: Abstraction has 109 states and 132 transitions. [2022-04-28 14:05:11,150 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 14:05:11,150 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 109 states and 132 transitions. [2022-04-28 14:05:24,253 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 126 inductive. 0 not inductive. 6 times theorem prover too weak to decide inductivity. [2022-04-28 14:05:24,254 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 132 transitions. [2022-04-28 14:05:24,254 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2022-04-28 14:05:24,254 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:05:24,254 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 7, 7, 7, 7, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 14:05:24,271 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Ended with exit code 0 [2022-04-28 14:05:24,455 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:05:24,455 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:05:24,456 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:05:24,456 INFO L85 PathProgramCache]: Analyzing trace with hash -529342910, now seen corresponding path program 13 times [2022-04-28 14:05:24,456 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:05:24,456 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [516334929] [2022-04-28 14:05:30,504 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:05:30,504 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:05:30,504 INFO L85 PathProgramCache]: Analyzing trace with hash -529342910, now seen corresponding path program 14 times [2022-04-28 14:05:30,504 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:05:30,504 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [745954740] [2022-04-28 14:05:30,504 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:05:30,504 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:05:30,516 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:05:30,517 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [569653045] [2022-04-28 14:05:30,517 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:05:30,517 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:05:30,517 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:05:30,518 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:05:30,519 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-28 14:05:30,577 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:05:30,578 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:05:30,579 INFO L263 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 14:05:30,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:05:30,596 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:05:30,947 INFO L272 TraceCheckUtils]: 0: Hoare triple {13370#true} call ULTIMATE.init(); {13370#true} is VALID [2022-04-28 14:05:30,947 INFO L290 TraceCheckUtils]: 1: Hoare triple {13370#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; {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,947 INFO L290 TraceCheckUtils]: 2: Hoare triple {13378#(<= ~counter~0 0)} assume true; {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,948 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13378#(<= ~counter~0 0)} {13370#true} #77#return; {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,948 INFO L272 TraceCheckUtils]: 4: Hoare triple {13378#(<= ~counter~0 0)} call #t~ret7 := main(); {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,948 INFO L290 TraceCheckUtils]: 5: Hoare triple {13378#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,949 INFO L272 TraceCheckUtils]: 6: Hoare triple {13378#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,949 INFO L290 TraceCheckUtils]: 7: Hoare triple {13378#(<= ~counter~0 0)} ~cond := #in~cond; {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,949 INFO L290 TraceCheckUtils]: 8: Hoare triple {13378#(<= ~counter~0 0)} assume !(0 == ~cond); {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,949 INFO L290 TraceCheckUtils]: 9: Hoare triple {13378#(<= ~counter~0 0)} assume true; {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,950 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13378#(<= ~counter~0 0)} {13378#(<= ~counter~0 0)} #69#return; {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,950 INFO L290 TraceCheckUtils]: 11: Hoare triple {13378#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {13378#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:30,951 INFO L290 TraceCheckUtils]: 12: Hoare triple {13378#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13412#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:30,951 INFO L290 TraceCheckUtils]: 13: Hoare triple {13412#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {13412#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:30,951 INFO L272 TraceCheckUtils]: 14: Hoare triple {13412#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13412#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:30,952 INFO L290 TraceCheckUtils]: 15: Hoare triple {13412#(<= ~counter~0 1)} ~cond := #in~cond; {13412#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:30,952 INFO L290 TraceCheckUtils]: 16: Hoare triple {13412#(<= ~counter~0 1)} assume !(0 == ~cond); {13412#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:30,952 INFO L290 TraceCheckUtils]: 17: Hoare triple {13412#(<= ~counter~0 1)} assume true; {13412#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:30,953 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {13412#(<= ~counter~0 1)} {13412#(<= ~counter~0 1)} #71#return; {13412#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:30,953 INFO L290 TraceCheckUtils]: 19: Hoare triple {13412#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {13412#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:30,953 INFO L290 TraceCheckUtils]: 20: Hoare triple {13412#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13412#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:30,954 INFO L290 TraceCheckUtils]: 21: Hoare triple {13412#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:30,954 INFO L290 TraceCheckUtils]: 22: Hoare triple {13440#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:30,954 INFO L272 TraceCheckUtils]: 23: Hoare triple {13440#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:30,955 INFO L290 TraceCheckUtils]: 24: Hoare triple {13440#(<= ~counter~0 2)} ~cond := #in~cond; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:30,955 INFO L290 TraceCheckUtils]: 25: Hoare triple {13440#(<= ~counter~0 2)} assume !(0 == ~cond); {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:30,955 INFO L290 TraceCheckUtils]: 26: Hoare triple {13440#(<= ~counter~0 2)} assume true; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:30,956 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {13440#(<= ~counter~0 2)} {13440#(<= ~counter~0 2)} #71#return; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:30,956 INFO L290 TraceCheckUtils]: 28: Hoare triple {13440#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:30,956 INFO L290 TraceCheckUtils]: 29: Hoare triple {13440#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:30,957 INFO L290 TraceCheckUtils]: 30: Hoare triple {13440#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:30,957 INFO L290 TraceCheckUtils]: 31: Hoare triple {13468#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:30,957 INFO L272 TraceCheckUtils]: 32: Hoare triple {13468#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:30,958 INFO L290 TraceCheckUtils]: 33: Hoare triple {13468#(<= ~counter~0 3)} ~cond := #in~cond; {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:30,958 INFO L290 TraceCheckUtils]: 34: Hoare triple {13468#(<= ~counter~0 3)} assume !(0 == ~cond); {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:30,958 INFO L290 TraceCheckUtils]: 35: Hoare triple {13468#(<= ~counter~0 3)} assume true; {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:30,959 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13468#(<= ~counter~0 3)} {13468#(<= ~counter~0 3)} #71#return; {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:30,959 INFO L290 TraceCheckUtils]: 37: Hoare triple {13468#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:30,959 INFO L290 TraceCheckUtils]: 38: Hoare triple {13468#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:30,960 INFO L290 TraceCheckUtils]: 39: Hoare triple {13468#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:30,960 INFO L290 TraceCheckUtils]: 40: Hoare triple {13496#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:30,972 INFO L272 TraceCheckUtils]: 41: Hoare triple {13496#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:30,972 INFO L290 TraceCheckUtils]: 42: Hoare triple {13496#(<= ~counter~0 4)} ~cond := #in~cond; {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:30,973 INFO L290 TraceCheckUtils]: 43: Hoare triple {13496#(<= ~counter~0 4)} assume !(0 == ~cond); {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:30,973 INFO L290 TraceCheckUtils]: 44: Hoare triple {13496#(<= ~counter~0 4)} assume true; {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:30,973 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {13496#(<= ~counter~0 4)} {13496#(<= ~counter~0 4)} #71#return; {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:30,974 INFO L290 TraceCheckUtils]: 46: Hoare triple {13496#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:30,974 INFO L290 TraceCheckUtils]: 47: Hoare triple {13496#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:30,975 INFO L290 TraceCheckUtils]: 48: Hoare triple {13496#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:30,975 INFO L290 TraceCheckUtils]: 49: Hoare triple {13524#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:30,975 INFO L272 TraceCheckUtils]: 50: Hoare triple {13524#(<= ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:30,976 INFO L290 TraceCheckUtils]: 51: Hoare triple {13524#(<= ~counter~0 5)} ~cond := #in~cond; {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:30,976 INFO L290 TraceCheckUtils]: 52: Hoare triple {13524#(<= ~counter~0 5)} assume !(0 == ~cond); {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:30,976 INFO L290 TraceCheckUtils]: 53: Hoare triple {13524#(<= ~counter~0 5)} assume true; {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:30,977 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {13524#(<= ~counter~0 5)} {13524#(<= ~counter~0 5)} #71#return; {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:30,977 INFO L290 TraceCheckUtils]: 55: Hoare triple {13524#(<= ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:30,977 INFO L290 TraceCheckUtils]: 56: Hoare triple {13524#(<= ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:30,978 INFO L290 TraceCheckUtils]: 57: Hoare triple {13524#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:30,978 INFO L290 TraceCheckUtils]: 58: Hoare triple {13552#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:30,979 INFO L272 TraceCheckUtils]: 59: Hoare triple {13552#(<= ~counter~0 6)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:30,979 INFO L290 TraceCheckUtils]: 60: Hoare triple {13552#(<= ~counter~0 6)} ~cond := #in~cond; {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:30,979 INFO L290 TraceCheckUtils]: 61: Hoare triple {13552#(<= ~counter~0 6)} assume !(0 == ~cond); {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:30,979 INFO L290 TraceCheckUtils]: 62: Hoare triple {13552#(<= ~counter~0 6)} assume true; {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:30,980 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {13552#(<= ~counter~0 6)} {13552#(<= ~counter~0 6)} #71#return; {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:30,980 INFO L290 TraceCheckUtils]: 64: Hoare triple {13552#(<= ~counter~0 6)} assume !!(0 != ~a~0 && 0 != ~b~0); {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:30,980 INFO L290 TraceCheckUtils]: 65: Hoare triple {13552#(<= ~counter~0 6)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:30,981 INFO L290 TraceCheckUtils]: 66: Hoare triple {13552#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:30,981 INFO L290 TraceCheckUtils]: 67: Hoare triple {13580#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:30,982 INFO L272 TraceCheckUtils]: 68: Hoare triple {13580#(<= ~counter~0 7)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:30,982 INFO L290 TraceCheckUtils]: 69: Hoare triple {13580#(<= ~counter~0 7)} ~cond := #in~cond; {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:30,982 INFO L290 TraceCheckUtils]: 70: Hoare triple {13580#(<= ~counter~0 7)} assume !(0 == ~cond); {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:30,982 INFO L290 TraceCheckUtils]: 71: Hoare triple {13580#(<= ~counter~0 7)} assume true; {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:30,983 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13580#(<= ~counter~0 7)} {13580#(<= ~counter~0 7)} #71#return; {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:30,983 INFO L290 TraceCheckUtils]: 73: Hoare triple {13580#(<= ~counter~0 7)} assume !!(0 != ~a~0 && 0 != ~b~0); {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:30,983 INFO L290 TraceCheckUtils]: 74: Hoare triple {13580#(<= ~counter~0 7)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:30,984 INFO L290 TraceCheckUtils]: 75: Hoare triple {13580#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13608#(<= |main_#t~post6| 7)} is VALID [2022-04-28 14:05:30,984 INFO L290 TraceCheckUtils]: 76: Hoare triple {13608#(<= |main_#t~post6| 7)} assume !(#t~post6 < 10);havoc #t~post6; {13371#false} is VALID [2022-04-28 14:05:30,984 INFO L272 TraceCheckUtils]: 77: Hoare triple {13371#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {13371#false} is VALID [2022-04-28 14:05:30,984 INFO L290 TraceCheckUtils]: 78: Hoare triple {13371#false} ~cond := #in~cond; {13371#false} is VALID [2022-04-28 14:05:30,984 INFO L290 TraceCheckUtils]: 79: Hoare triple {13371#false} assume 0 == ~cond; {13371#false} is VALID [2022-04-28 14:05:30,984 INFO L290 TraceCheckUtils]: 80: Hoare triple {13371#false} assume !false; {13371#false} is VALID [2022-04-28 14:05:30,985 INFO L134 CoverageAnalysis]: Checked inductivity of 217 backedges. 14 proven. 203 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 14:05:30,985 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:05:31,330 INFO L290 TraceCheckUtils]: 80: Hoare triple {13371#false} assume !false; {13371#false} is VALID [2022-04-28 14:05:31,331 INFO L290 TraceCheckUtils]: 79: Hoare triple {13371#false} assume 0 == ~cond; {13371#false} is VALID [2022-04-28 14:05:31,331 INFO L290 TraceCheckUtils]: 78: Hoare triple {13371#false} ~cond := #in~cond; {13371#false} is VALID [2022-04-28 14:05:31,331 INFO L272 TraceCheckUtils]: 77: Hoare triple {13371#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {13371#false} is VALID [2022-04-28 14:05:31,331 INFO L290 TraceCheckUtils]: 76: Hoare triple {13636#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {13371#false} is VALID [2022-04-28 14:05:31,339 INFO L290 TraceCheckUtils]: 75: Hoare triple {13640#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13636#(< |main_#t~post6| 10)} is VALID [2022-04-28 14:05:31,340 INFO L290 TraceCheckUtils]: 74: Hoare triple {13640#(< ~counter~0 10)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13640#(< ~counter~0 10)} is VALID [2022-04-28 14:05:31,340 INFO L290 TraceCheckUtils]: 73: Hoare triple {13640#(< ~counter~0 10)} assume !!(0 != ~a~0 && 0 != ~b~0); {13640#(< ~counter~0 10)} is VALID [2022-04-28 14:05:31,341 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13370#true} {13640#(< ~counter~0 10)} #71#return; {13640#(< ~counter~0 10)} is VALID [2022-04-28 14:05:31,341 INFO L290 TraceCheckUtils]: 71: Hoare triple {13370#true} assume true; {13370#true} is VALID [2022-04-28 14:05:31,341 INFO L290 TraceCheckUtils]: 70: Hoare triple {13370#true} assume !(0 == ~cond); {13370#true} is VALID [2022-04-28 14:05:31,341 INFO L290 TraceCheckUtils]: 69: Hoare triple {13370#true} ~cond := #in~cond; {13370#true} is VALID [2022-04-28 14:05:31,341 INFO L272 TraceCheckUtils]: 68: Hoare triple {13640#(< ~counter~0 10)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13370#true} is VALID [2022-04-28 14:05:31,341 INFO L290 TraceCheckUtils]: 67: Hoare triple {13640#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {13640#(< ~counter~0 10)} is VALID [2022-04-28 14:05:31,342 INFO L290 TraceCheckUtils]: 66: Hoare triple {13668#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13640#(< ~counter~0 10)} is VALID [2022-04-28 14:05:31,342 INFO L290 TraceCheckUtils]: 65: Hoare triple {13668#(< ~counter~0 9)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13668#(< ~counter~0 9)} is VALID [2022-04-28 14:05:31,342 INFO L290 TraceCheckUtils]: 64: Hoare triple {13668#(< ~counter~0 9)} assume !!(0 != ~a~0 && 0 != ~b~0); {13668#(< ~counter~0 9)} is VALID [2022-04-28 14:05:31,343 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {13370#true} {13668#(< ~counter~0 9)} #71#return; {13668#(< ~counter~0 9)} is VALID [2022-04-28 14:05:31,343 INFO L290 TraceCheckUtils]: 62: Hoare triple {13370#true} assume true; {13370#true} is VALID [2022-04-28 14:05:31,343 INFO L290 TraceCheckUtils]: 61: Hoare triple {13370#true} assume !(0 == ~cond); {13370#true} is VALID [2022-04-28 14:05:31,343 INFO L290 TraceCheckUtils]: 60: Hoare triple {13370#true} ~cond := #in~cond; {13370#true} is VALID [2022-04-28 14:05:31,343 INFO L272 TraceCheckUtils]: 59: Hoare triple {13668#(< ~counter~0 9)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13370#true} is VALID [2022-04-28 14:05:31,344 INFO L290 TraceCheckUtils]: 58: Hoare triple {13668#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {13668#(< ~counter~0 9)} is VALID [2022-04-28 14:05:31,344 INFO L290 TraceCheckUtils]: 57: Hoare triple {13580#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13668#(< ~counter~0 9)} is VALID [2022-04-28 14:05:31,344 INFO L290 TraceCheckUtils]: 56: Hoare triple {13580#(<= ~counter~0 7)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:31,345 INFO L290 TraceCheckUtils]: 55: Hoare triple {13580#(<= ~counter~0 7)} assume !!(0 != ~a~0 && 0 != ~b~0); {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:31,345 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {13370#true} {13580#(<= ~counter~0 7)} #71#return; {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:31,345 INFO L290 TraceCheckUtils]: 53: Hoare triple {13370#true} assume true; {13370#true} is VALID [2022-04-28 14:05:31,345 INFO L290 TraceCheckUtils]: 52: Hoare triple {13370#true} assume !(0 == ~cond); {13370#true} is VALID [2022-04-28 14:05:31,345 INFO L290 TraceCheckUtils]: 51: Hoare triple {13370#true} ~cond := #in~cond; {13370#true} is VALID [2022-04-28 14:05:31,346 INFO L272 TraceCheckUtils]: 50: Hoare triple {13580#(<= ~counter~0 7)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13370#true} is VALID [2022-04-28 14:05:31,346 INFO L290 TraceCheckUtils]: 49: Hoare triple {13580#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:31,346 INFO L290 TraceCheckUtils]: 48: Hoare triple {13552#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13580#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:31,346 INFO L290 TraceCheckUtils]: 47: Hoare triple {13552#(<= ~counter~0 6)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:31,347 INFO L290 TraceCheckUtils]: 46: Hoare triple {13552#(<= ~counter~0 6)} assume !!(0 != ~a~0 && 0 != ~b~0); {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:31,347 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {13370#true} {13552#(<= ~counter~0 6)} #71#return; {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:31,347 INFO L290 TraceCheckUtils]: 44: Hoare triple {13370#true} assume true; {13370#true} is VALID [2022-04-28 14:05:31,347 INFO L290 TraceCheckUtils]: 43: Hoare triple {13370#true} assume !(0 == ~cond); {13370#true} is VALID [2022-04-28 14:05:31,347 INFO L290 TraceCheckUtils]: 42: Hoare triple {13370#true} ~cond := #in~cond; {13370#true} is VALID [2022-04-28 14:05:31,347 INFO L272 TraceCheckUtils]: 41: Hoare triple {13552#(<= ~counter~0 6)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13370#true} is VALID [2022-04-28 14:05:31,348 INFO L290 TraceCheckUtils]: 40: Hoare triple {13552#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:31,348 INFO L290 TraceCheckUtils]: 39: Hoare triple {13524#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13552#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:31,348 INFO L290 TraceCheckUtils]: 38: Hoare triple {13524#(<= ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:31,349 INFO L290 TraceCheckUtils]: 37: Hoare triple {13524#(<= ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:31,349 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13370#true} {13524#(<= ~counter~0 5)} #71#return; {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:31,349 INFO L290 TraceCheckUtils]: 35: Hoare triple {13370#true} assume true; {13370#true} is VALID [2022-04-28 14:05:31,349 INFO L290 TraceCheckUtils]: 34: Hoare triple {13370#true} assume !(0 == ~cond); {13370#true} is VALID [2022-04-28 14:05:31,349 INFO L290 TraceCheckUtils]: 33: Hoare triple {13370#true} ~cond := #in~cond; {13370#true} is VALID [2022-04-28 14:05:31,349 INFO L272 TraceCheckUtils]: 32: Hoare triple {13524#(<= ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13370#true} is VALID [2022-04-28 14:05:31,350 INFO L290 TraceCheckUtils]: 31: Hoare triple {13524#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:31,350 INFO L290 TraceCheckUtils]: 30: Hoare triple {13496#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13524#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:31,350 INFO L290 TraceCheckUtils]: 29: Hoare triple {13496#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:31,351 INFO L290 TraceCheckUtils]: 28: Hoare triple {13496#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:31,351 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {13370#true} {13496#(<= ~counter~0 4)} #71#return; {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:31,351 INFO L290 TraceCheckUtils]: 26: Hoare triple {13370#true} assume true; {13370#true} is VALID [2022-04-28 14:05:31,351 INFO L290 TraceCheckUtils]: 25: Hoare triple {13370#true} assume !(0 == ~cond); {13370#true} is VALID [2022-04-28 14:05:31,351 INFO L290 TraceCheckUtils]: 24: Hoare triple {13370#true} ~cond := #in~cond; {13370#true} is VALID [2022-04-28 14:05:31,351 INFO L272 TraceCheckUtils]: 23: Hoare triple {13496#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13370#true} is VALID [2022-04-28 14:05:31,352 INFO L290 TraceCheckUtils]: 22: Hoare triple {13496#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:31,352 INFO L290 TraceCheckUtils]: 21: Hoare triple {13468#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13496#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:31,352 INFO L290 TraceCheckUtils]: 20: Hoare triple {13468#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:31,353 INFO L290 TraceCheckUtils]: 19: Hoare triple {13468#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:31,353 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {13370#true} {13468#(<= ~counter~0 3)} #71#return; {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:31,353 INFO L290 TraceCheckUtils]: 17: Hoare triple {13370#true} assume true; {13370#true} is VALID [2022-04-28 14:05:31,353 INFO L290 TraceCheckUtils]: 16: Hoare triple {13370#true} assume !(0 == ~cond); {13370#true} is VALID [2022-04-28 14:05:31,353 INFO L290 TraceCheckUtils]: 15: Hoare triple {13370#true} ~cond := #in~cond; {13370#true} is VALID [2022-04-28 14:05:31,353 INFO L272 TraceCheckUtils]: 14: Hoare triple {13468#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {13370#true} is VALID [2022-04-28 14:05:31,354 INFO L290 TraceCheckUtils]: 13: Hoare triple {13468#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:31,354 INFO L290 TraceCheckUtils]: 12: Hoare triple {13440#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13468#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:31,354 INFO L290 TraceCheckUtils]: 11: Hoare triple {13440#(<= ~counter~0 2)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:31,355 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13370#true} {13440#(<= ~counter~0 2)} #69#return; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:31,355 INFO L290 TraceCheckUtils]: 9: Hoare triple {13370#true} assume true; {13370#true} is VALID [2022-04-28 14:05:31,355 INFO L290 TraceCheckUtils]: 8: Hoare triple {13370#true} assume !(0 == ~cond); {13370#true} is VALID [2022-04-28 14:05:31,355 INFO L290 TraceCheckUtils]: 7: Hoare triple {13370#true} ~cond := #in~cond; {13370#true} is VALID [2022-04-28 14:05:31,355 INFO L272 TraceCheckUtils]: 6: Hoare triple {13440#(<= ~counter~0 2)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13370#true} is VALID [2022-04-28 14:05:31,355 INFO L290 TraceCheckUtils]: 5: Hoare triple {13440#(<= ~counter~0 2)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:31,356 INFO L272 TraceCheckUtils]: 4: Hoare triple {13440#(<= ~counter~0 2)} call #t~ret7 := main(); {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:31,356 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13440#(<= ~counter~0 2)} {13370#true} #77#return; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:31,356 INFO L290 TraceCheckUtils]: 2: Hoare triple {13440#(<= ~counter~0 2)} assume true; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:31,357 INFO L290 TraceCheckUtils]: 1: Hoare triple {13370#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; {13440#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:31,357 INFO L272 TraceCheckUtils]: 0: Hoare triple {13370#true} call ULTIMATE.init(); {13370#true} is VALID [2022-04-28 14:05:31,357 INFO L134 CoverageAnalysis]: Checked inductivity of 217 backedges. 14 proven. 119 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-28 14:05:31,357 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:05:31,357 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [745954740] [2022-04-28 14:05:31,357 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:05:31,357 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [569653045] [2022-04-28 14:05:31,357 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [569653045] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:05:31,357 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:05:31,357 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 14 [2022-04-28 14:05:31,358 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:05:31,358 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [516334929] [2022-04-28 14:05:31,358 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [516334929] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:05:31,358 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:05:31,358 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 14:05:31,358 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1648236338] [2022-04-28 14:05:31,358 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:05:31,358 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Word has length 81 [2022-04-28 14:05:31,358 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:05:31,358 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:05:31,432 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:05:31,433 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 14:05:31,433 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:05:31,433 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 14:05:31,433 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 14:05:31,433 INFO L87 Difference]: Start difference. First operand 109 states and 132 transitions. Second operand has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:05:31,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:05:31,891 INFO L93 Difference]: Finished difference Result 128 states and 155 transitions. [2022-04-28 14:05:31,891 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 14:05:31,891 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Word has length 81 [2022-04-28 14:05:31,891 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:05:31,891 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:05:31,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 141 transitions. [2022-04-28 14:05:31,893 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:05:31,894 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 141 transitions. [2022-04-28 14:05:31,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 141 transitions. [2022-04-28 14:05:32,010 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 141 edges. 141 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:05:32,011 INFO L225 Difference]: With dead ends: 128 [2022-04-28 14:05:32,011 INFO L226 Difference]: Without dead ends: 120 [2022-04-28 14:05:32,012 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 168 GetRequests, 148 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 39 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=162, Invalid=258, Unknown=0, NotChecked=0, Total=420 [2022-04-28 14:05:32,012 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 72 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 14:05:32,012 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [72 Valid, 170 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 14:05:32,013 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 120 states. [2022-04-28 14:05:32,197 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 120 to 120. [2022-04-28 14:05:32,197 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:05:32,198 INFO L82 GeneralOperation]: Start isEquivalent. First operand 120 states. Second operand has 120 states, 93 states have (on average 1.2903225806451613) internal successors, (120), 94 states have internal predecessors, (120), 14 states have call successors, (14), 13 states have call predecessors, (14), 12 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 14:05:32,198 INFO L74 IsIncluded]: Start isIncluded. First operand 120 states. Second operand has 120 states, 93 states have (on average 1.2903225806451613) internal successors, (120), 94 states have internal predecessors, (120), 14 states have call successors, (14), 13 states have call predecessors, (14), 12 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 14:05:32,198 INFO L87 Difference]: Start difference. First operand 120 states. Second operand has 120 states, 93 states have (on average 1.2903225806451613) internal successors, (120), 94 states have internal predecessors, (120), 14 states have call successors, (14), 13 states have call predecessors, (14), 12 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 14:05:32,199 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:05:32,199 INFO L93 Difference]: Finished difference Result 120 states and 146 transitions. [2022-04-28 14:05:32,199 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 146 transitions. [2022-04-28 14:05:32,200 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:05:32,200 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:05:32,200 INFO L74 IsIncluded]: Start isIncluded. First operand has 120 states, 93 states have (on average 1.2903225806451613) internal successors, (120), 94 states have internal predecessors, (120), 14 states have call successors, (14), 13 states have call predecessors, (14), 12 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 120 states. [2022-04-28 14:05:32,200 INFO L87 Difference]: Start difference. First operand has 120 states, 93 states have (on average 1.2903225806451613) internal successors, (120), 94 states have internal predecessors, (120), 14 states have call successors, (14), 13 states have call predecessors, (14), 12 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 120 states. [2022-04-28 14:05:32,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:05:32,202 INFO L93 Difference]: Finished difference Result 120 states and 146 transitions. [2022-04-28 14:05:32,202 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 146 transitions. [2022-04-28 14:05:32,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:05:32,202 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:05:32,202 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:05:32,202 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:05:32,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 120 states, 93 states have (on average 1.2903225806451613) internal successors, (120), 94 states have internal predecessors, (120), 14 states have call successors, (14), 13 states have call predecessors, (14), 12 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 14:05:32,204 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 146 transitions. [2022-04-28 14:05:32,204 INFO L78 Accepts]: Start accepts. Automaton has 120 states and 146 transitions. Word has length 81 [2022-04-28 14:05:32,204 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:05:32,204 INFO L495 AbstractCegarLoop]: Abstraction has 120 states and 146 transitions. [2022-04-28 14:05:32,204 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 14:05:32,204 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 120 states and 146 transitions. [2022-04-28 14:05:47,418 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 146 edges. 139 inductive. 0 not inductive. 7 times theorem prover too weak to decide inductivity. [2022-04-28 14:05:47,418 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 146 transitions. [2022-04-28 14:05:47,419 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2022-04-28 14:05:47,419 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:05:47,419 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 8, 8, 8, 8, 8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 14:05:47,448 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-28 14:05:47,635 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-28 14:05:47,635 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:05:47,636 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:05:47,636 INFO L85 PathProgramCache]: Analyzing trace with hash -1054018310, now seen corresponding path program 15 times [2022-04-28 14:05:47,636 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:05:47,636 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [646180283] [2022-04-28 14:05:53,687 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:05:53,687 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:05:53,687 INFO L85 PathProgramCache]: Analyzing trace with hash -1054018310, now seen corresponding path program 16 times [2022-04-28 14:05:53,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:05:53,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [482522758] [2022-04-28 14:05:53,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:05:53,688 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:05:53,705 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:05:53,705 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1412934527] [2022-04-28 14:05:53,705 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 14:05:53,705 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:05:53,705 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:05:53,706 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:05:53,709 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-28 14:05:53,860 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 14:05:53,860 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:05:53,861 INFO L263 TraceCheckSpWp]: Trace formula consists of 294 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 14:05:53,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:05:53,890 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:05:54,324 INFO L272 TraceCheckUtils]: 0: Hoare triple {14619#true} call ULTIMATE.init(); {14619#true} is VALID [2022-04-28 14:05:54,324 INFO L290 TraceCheckUtils]: 1: Hoare triple {14619#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; {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,325 INFO L290 TraceCheckUtils]: 2: Hoare triple {14627#(<= ~counter~0 0)} assume true; {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,325 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14627#(<= ~counter~0 0)} {14619#true} #77#return; {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,325 INFO L272 TraceCheckUtils]: 4: Hoare triple {14627#(<= ~counter~0 0)} call #t~ret7 := main(); {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,325 INFO L290 TraceCheckUtils]: 5: Hoare triple {14627#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,326 INFO L272 TraceCheckUtils]: 6: Hoare triple {14627#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,326 INFO L290 TraceCheckUtils]: 7: Hoare triple {14627#(<= ~counter~0 0)} ~cond := #in~cond; {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,326 INFO L290 TraceCheckUtils]: 8: Hoare triple {14627#(<= ~counter~0 0)} assume !(0 == ~cond); {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,327 INFO L290 TraceCheckUtils]: 9: Hoare triple {14627#(<= ~counter~0 0)} assume true; {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,327 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14627#(<= ~counter~0 0)} {14627#(<= ~counter~0 0)} #69#return; {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,327 INFO L290 TraceCheckUtils]: 11: Hoare triple {14627#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {14627#(<= ~counter~0 0)} is VALID [2022-04-28 14:05:54,328 INFO L290 TraceCheckUtils]: 12: Hoare triple {14627#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,328 INFO L290 TraceCheckUtils]: 13: Hoare triple {14661#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,329 INFO L272 TraceCheckUtils]: 14: Hoare triple {14661#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,329 INFO L290 TraceCheckUtils]: 15: Hoare triple {14661#(<= ~counter~0 1)} ~cond := #in~cond; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,329 INFO L290 TraceCheckUtils]: 16: Hoare triple {14661#(<= ~counter~0 1)} assume !(0 == ~cond); {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,329 INFO L290 TraceCheckUtils]: 17: Hoare triple {14661#(<= ~counter~0 1)} assume true; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,330 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14661#(<= ~counter~0 1)} {14661#(<= ~counter~0 1)} #71#return; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,330 INFO L290 TraceCheckUtils]: 19: Hoare triple {14661#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,331 INFO L290 TraceCheckUtils]: 20: Hoare triple {14661#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,331 INFO L290 TraceCheckUtils]: 21: Hoare triple {14661#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,331 INFO L290 TraceCheckUtils]: 22: Hoare triple {14689#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,332 INFO L272 TraceCheckUtils]: 23: Hoare triple {14689#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,332 INFO L290 TraceCheckUtils]: 24: Hoare triple {14689#(<= ~counter~0 2)} ~cond := #in~cond; {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,332 INFO L290 TraceCheckUtils]: 25: Hoare triple {14689#(<= ~counter~0 2)} assume !(0 == ~cond); {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,333 INFO L290 TraceCheckUtils]: 26: Hoare triple {14689#(<= ~counter~0 2)} assume true; {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,333 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {14689#(<= ~counter~0 2)} {14689#(<= ~counter~0 2)} #71#return; {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,334 INFO L290 TraceCheckUtils]: 28: Hoare triple {14689#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,334 INFO L290 TraceCheckUtils]: 29: Hoare triple {14689#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,334 INFO L290 TraceCheckUtils]: 30: Hoare triple {14689#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,335 INFO L290 TraceCheckUtils]: 31: Hoare triple {14717#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,335 INFO L272 TraceCheckUtils]: 32: Hoare triple {14717#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,335 INFO L290 TraceCheckUtils]: 33: Hoare triple {14717#(<= ~counter~0 3)} ~cond := #in~cond; {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,336 INFO L290 TraceCheckUtils]: 34: Hoare triple {14717#(<= ~counter~0 3)} assume !(0 == ~cond); {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,336 INFO L290 TraceCheckUtils]: 35: Hoare triple {14717#(<= ~counter~0 3)} assume true; {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,337 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14717#(<= ~counter~0 3)} {14717#(<= ~counter~0 3)} #71#return; {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,337 INFO L290 TraceCheckUtils]: 37: Hoare triple {14717#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,337 INFO L290 TraceCheckUtils]: 38: Hoare triple {14717#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,338 INFO L290 TraceCheckUtils]: 39: Hoare triple {14717#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,338 INFO L290 TraceCheckUtils]: 40: Hoare triple {14745#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,338 INFO L272 TraceCheckUtils]: 41: Hoare triple {14745#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,339 INFO L290 TraceCheckUtils]: 42: Hoare triple {14745#(<= ~counter~0 4)} ~cond := #in~cond; {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,339 INFO L290 TraceCheckUtils]: 43: Hoare triple {14745#(<= ~counter~0 4)} assume !(0 == ~cond); {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,339 INFO L290 TraceCheckUtils]: 44: Hoare triple {14745#(<= ~counter~0 4)} assume true; {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,340 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {14745#(<= ~counter~0 4)} {14745#(<= ~counter~0 4)} #71#return; {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,340 INFO L290 TraceCheckUtils]: 46: Hoare triple {14745#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,340 INFO L290 TraceCheckUtils]: 47: Hoare triple {14745#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,341 INFO L290 TraceCheckUtils]: 48: Hoare triple {14745#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,341 INFO L290 TraceCheckUtils]: 49: Hoare triple {14773#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,342 INFO L272 TraceCheckUtils]: 50: Hoare triple {14773#(<= ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,342 INFO L290 TraceCheckUtils]: 51: Hoare triple {14773#(<= ~counter~0 5)} ~cond := #in~cond; {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,342 INFO L290 TraceCheckUtils]: 52: Hoare triple {14773#(<= ~counter~0 5)} assume !(0 == ~cond); {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,342 INFO L290 TraceCheckUtils]: 53: Hoare triple {14773#(<= ~counter~0 5)} assume true; {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,343 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {14773#(<= ~counter~0 5)} {14773#(<= ~counter~0 5)} #71#return; {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,343 INFO L290 TraceCheckUtils]: 55: Hoare triple {14773#(<= ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,343 INFO L290 TraceCheckUtils]: 56: Hoare triple {14773#(<= ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,344 INFO L290 TraceCheckUtils]: 57: Hoare triple {14773#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,344 INFO L290 TraceCheckUtils]: 58: Hoare triple {14801#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,345 INFO L272 TraceCheckUtils]: 59: Hoare triple {14801#(<= ~counter~0 6)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,345 INFO L290 TraceCheckUtils]: 60: Hoare triple {14801#(<= ~counter~0 6)} ~cond := #in~cond; {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,345 INFO L290 TraceCheckUtils]: 61: Hoare triple {14801#(<= ~counter~0 6)} assume !(0 == ~cond); {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,346 INFO L290 TraceCheckUtils]: 62: Hoare triple {14801#(<= ~counter~0 6)} assume true; {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,346 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {14801#(<= ~counter~0 6)} {14801#(<= ~counter~0 6)} #71#return; {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,347 INFO L290 TraceCheckUtils]: 64: Hoare triple {14801#(<= ~counter~0 6)} assume !!(0 != ~a~0 && 0 != ~b~0); {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,347 INFO L290 TraceCheckUtils]: 65: Hoare triple {14801#(<= ~counter~0 6)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,347 INFO L290 TraceCheckUtils]: 66: Hoare triple {14801#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,348 INFO L290 TraceCheckUtils]: 67: Hoare triple {14829#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,348 INFO L272 TraceCheckUtils]: 68: Hoare triple {14829#(<= ~counter~0 7)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,349 INFO L290 TraceCheckUtils]: 69: Hoare triple {14829#(<= ~counter~0 7)} ~cond := #in~cond; {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,349 INFO L290 TraceCheckUtils]: 70: Hoare triple {14829#(<= ~counter~0 7)} assume !(0 == ~cond); {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,349 INFO L290 TraceCheckUtils]: 71: Hoare triple {14829#(<= ~counter~0 7)} assume true; {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,350 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {14829#(<= ~counter~0 7)} {14829#(<= ~counter~0 7)} #71#return; {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,350 INFO L290 TraceCheckUtils]: 73: Hoare triple {14829#(<= ~counter~0 7)} assume !!(0 != ~a~0 && 0 != ~b~0); {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,350 INFO L290 TraceCheckUtils]: 74: Hoare triple {14829#(<= ~counter~0 7)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,351 INFO L290 TraceCheckUtils]: 75: Hoare triple {14829#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,351 INFO L290 TraceCheckUtils]: 76: Hoare triple {14857#(<= ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,352 INFO L272 TraceCheckUtils]: 77: Hoare triple {14857#(<= ~counter~0 8)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,352 INFO L290 TraceCheckUtils]: 78: Hoare triple {14857#(<= ~counter~0 8)} ~cond := #in~cond; {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,352 INFO L290 TraceCheckUtils]: 79: Hoare triple {14857#(<= ~counter~0 8)} assume !(0 == ~cond); {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,352 INFO L290 TraceCheckUtils]: 80: Hoare triple {14857#(<= ~counter~0 8)} assume true; {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,353 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {14857#(<= ~counter~0 8)} {14857#(<= ~counter~0 8)} #71#return; {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,353 INFO L290 TraceCheckUtils]: 82: Hoare triple {14857#(<= ~counter~0 8)} assume !!(0 != ~a~0 && 0 != ~b~0); {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,353 INFO L290 TraceCheckUtils]: 83: Hoare triple {14857#(<= ~counter~0 8)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,354 INFO L290 TraceCheckUtils]: 84: Hoare triple {14857#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14885#(<= |main_#t~post6| 8)} is VALID [2022-04-28 14:05:54,354 INFO L290 TraceCheckUtils]: 85: Hoare triple {14885#(<= |main_#t~post6| 8)} assume !(#t~post6 < 10);havoc #t~post6; {14620#false} is VALID [2022-04-28 14:05:54,354 INFO L272 TraceCheckUtils]: 86: Hoare triple {14620#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {14620#false} is VALID [2022-04-28 14:05:54,354 INFO L290 TraceCheckUtils]: 87: Hoare triple {14620#false} ~cond := #in~cond; {14620#false} is VALID [2022-04-28 14:05:54,354 INFO L290 TraceCheckUtils]: 88: Hoare triple {14620#false} assume 0 == ~cond; {14620#false} is VALID [2022-04-28 14:05:54,354 INFO L290 TraceCheckUtils]: 89: Hoare triple {14620#false} assume !false; {14620#false} is VALID [2022-04-28 14:05:54,355 INFO L134 CoverageAnalysis]: Checked inductivity of 284 backedges. 16 proven. 268 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 14:05:54,355 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:05:54,752 INFO L290 TraceCheckUtils]: 89: Hoare triple {14620#false} assume !false; {14620#false} is VALID [2022-04-28 14:05:54,753 INFO L290 TraceCheckUtils]: 88: Hoare triple {14620#false} assume 0 == ~cond; {14620#false} is VALID [2022-04-28 14:05:54,753 INFO L290 TraceCheckUtils]: 87: Hoare triple {14620#false} ~cond := #in~cond; {14620#false} is VALID [2022-04-28 14:05:54,753 INFO L272 TraceCheckUtils]: 86: Hoare triple {14620#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {14620#false} is VALID [2022-04-28 14:05:54,753 INFO L290 TraceCheckUtils]: 85: Hoare triple {14913#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {14620#false} is VALID [2022-04-28 14:05:54,753 INFO L290 TraceCheckUtils]: 84: Hoare triple {14917#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14913#(< |main_#t~post6| 10)} is VALID [2022-04-28 14:05:54,754 INFO L290 TraceCheckUtils]: 83: Hoare triple {14917#(< ~counter~0 10)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14917#(< ~counter~0 10)} is VALID [2022-04-28 14:05:54,754 INFO L290 TraceCheckUtils]: 82: Hoare triple {14917#(< ~counter~0 10)} assume !!(0 != ~a~0 && 0 != ~b~0); {14917#(< ~counter~0 10)} is VALID [2022-04-28 14:05:54,755 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {14619#true} {14917#(< ~counter~0 10)} #71#return; {14917#(< ~counter~0 10)} is VALID [2022-04-28 14:05:54,755 INFO L290 TraceCheckUtils]: 80: Hoare triple {14619#true} assume true; {14619#true} is VALID [2022-04-28 14:05:54,755 INFO L290 TraceCheckUtils]: 79: Hoare triple {14619#true} assume !(0 == ~cond); {14619#true} is VALID [2022-04-28 14:05:54,755 INFO L290 TraceCheckUtils]: 78: Hoare triple {14619#true} ~cond := #in~cond; {14619#true} is VALID [2022-04-28 14:05:54,755 INFO L272 TraceCheckUtils]: 77: Hoare triple {14917#(< ~counter~0 10)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14619#true} is VALID [2022-04-28 14:05:54,755 INFO L290 TraceCheckUtils]: 76: Hoare triple {14917#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {14917#(< ~counter~0 10)} is VALID [2022-04-28 14:05:54,756 INFO L290 TraceCheckUtils]: 75: Hoare triple {14857#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14917#(< ~counter~0 10)} is VALID [2022-04-28 14:05:54,756 INFO L290 TraceCheckUtils]: 74: Hoare triple {14857#(<= ~counter~0 8)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,756 INFO L290 TraceCheckUtils]: 73: Hoare triple {14857#(<= ~counter~0 8)} assume !!(0 != ~a~0 && 0 != ~b~0); {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,757 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {14619#true} {14857#(<= ~counter~0 8)} #71#return; {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,757 INFO L290 TraceCheckUtils]: 71: Hoare triple {14619#true} assume true; {14619#true} is VALID [2022-04-28 14:05:54,757 INFO L290 TraceCheckUtils]: 70: Hoare triple {14619#true} assume !(0 == ~cond); {14619#true} is VALID [2022-04-28 14:05:54,757 INFO L290 TraceCheckUtils]: 69: Hoare triple {14619#true} ~cond := #in~cond; {14619#true} is VALID [2022-04-28 14:05:54,757 INFO L272 TraceCheckUtils]: 68: Hoare triple {14857#(<= ~counter~0 8)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14619#true} is VALID [2022-04-28 14:05:54,758 INFO L290 TraceCheckUtils]: 67: Hoare triple {14857#(<= ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,758 INFO L290 TraceCheckUtils]: 66: Hoare triple {14829#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14857#(<= ~counter~0 8)} is VALID [2022-04-28 14:05:54,759 INFO L290 TraceCheckUtils]: 65: Hoare triple {14829#(<= ~counter~0 7)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,759 INFO L290 TraceCheckUtils]: 64: Hoare triple {14829#(<= ~counter~0 7)} assume !!(0 != ~a~0 && 0 != ~b~0); {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,760 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {14619#true} {14829#(<= ~counter~0 7)} #71#return; {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,760 INFO L290 TraceCheckUtils]: 62: Hoare triple {14619#true} assume true; {14619#true} is VALID [2022-04-28 14:05:54,760 INFO L290 TraceCheckUtils]: 61: Hoare triple {14619#true} assume !(0 == ~cond); {14619#true} is VALID [2022-04-28 14:05:54,760 INFO L290 TraceCheckUtils]: 60: Hoare triple {14619#true} ~cond := #in~cond; {14619#true} is VALID [2022-04-28 14:05:54,760 INFO L272 TraceCheckUtils]: 59: Hoare triple {14829#(<= ~counter~0 7)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14619#true} is VALID [2022-04-28 14:05:54,760 INFO L290 TraceCheckUtils]: 58: Hoare triple {14829#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,761 INFO L290 TraceCheckUtils]: 57: Hoare triple {14801#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14829#(<= ~counter~0 7)} is VALID [2022-04-28 14:05:54,761 INFO L290 TraceCheckUtils]: 56: Hoare triple {14801#(<= ~counter~0 6)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,761 INFO L290 TraceCheckUtils]: 55: Hoare triple {14801#(<= ~counter~0 6)} assume !!(0 != ~a~0 && 0 != ~b~0); {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,762 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {14619#true} {14801#(<= ~counter~0 6)} #71#return; {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,762 INFO L290 TraceCheckUtils]: 53: Hoare triple {14619#true} assume true; {14619#true} is VALID [2022-04-28 14:05:54,762 INFO L290 TraceCheckUtils]: 52: Hoare triple {14619#true} assume !(0 == ~cond); {14619#true} is VALID [2022-04-28 14:05:54,762 INFO L290 TraceCheckUtils]: 51: Hoare triple {14619#true} ~cond := #in~cond; {14619#true} is VALID [2022-04-28 14:05:54,762 INFO L272 TraceCheckUtils]: 50: Hoare triple {14801#(<= ~counter~0 6)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14619#true} is VALID [2022-04-28 14:05:54,763 INFO L290 TraceCheckUtils]: 49: Hoare triple {14801#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,763 INFO L290 TraceCheckUtils]: 48: Hoare triple {14773#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14801#(<= ~counter~0 6)} is VALID [2022-04-28 14:05:54,763 INFO L290 TraceCheckUtils]: 47: Hoare triple {14773#(<= ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,764 INFO L290 TraceCheckUtils]: 46: Hoare triple {14773#(<= ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,764 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {14619#true} {14773#(<= ~counter~0 5)} #71#return; {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,764 INFO L290 TraceCheckUtils]: 44: Hoare triple {14619#true} assume true; {14619#true} is VALID [2022-04-28 14:05:54,764 INFO L290 TraceCheckUtils]: 43: Hoare triple {14619#true} assume !(0 == ~cond); {14619#true} is VALID [2022-04-28 14:05:54,764 INFO L290 TraceCheckUtils]: 42: Hoare triple {14619#true} ~cond := #in~cond; {14619#true} is VALID [2022-04-28 14:05:54,765 INFO L272 TraceCheckUtils]: 41: Hoare triple {14773#(<= ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14619#true} is VALID [2022-04-28 14:05:54,765 INFO L290 TraceCheckUtils]: 40: Hoare triple {14773#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,765 INFO L290 TraceCheckUtils]: 39: Hoare triple {14745#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14773#(<= ~counter~0 5)} is VALID [2022-04-28 14:05:54,766 INFO L290 TraceCheckUtils]: 38: Hoare triple {14745#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,766 INFO L290 TraceCheckUtils]: 37: Hoare triple {14745#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,766 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14619#true} {14745#(<= ~counter~0 4)} #71#return; {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,766 INFO L290 TraceCheckUtils]: 35: Hoare triple {14619#true} assume true; {14619#true} is VALID [2022-04-28 14:05:54,767 INFO L290 TraceCheckUtils]: 34: Hoare triple {14619#true} assume !(0 == ~cond); {14619#true} is VALID [2022-04-28 14:05:54,767 INFO L290 TraceCheckUtils]: 33: Hoare triple {14619#true} ~cond := #in~cond; {14619#true} is VALID [2022-04-28 14:05:54,767 INFO L272 TraceCheckUtils]: 32: Hoare triple {14745#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14619#true} is VALID [2022-04-28 14:05:54,767 INFO L290 TraceCheckUtils]: 31: Hoare triple {14745#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,767 INFO L290 TraceCheckUtils]: 30: Hoare triple {14717#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14745#(<= ~counter~0 4)} is VALID [2022-04-28 14:05:54,768 INFO L290 TraceCheckUtils]: 29: Hoare triple {14717#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,768 INFO L290 TraceCheckUtils]: 28: Hoare triple {14717#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,768 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {14619#true} {14717#(<= ~counter~0 3)} #71#return; {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,768 INFO L290 TraceCheckUtils]: 26: Hoare triple {14619#true} assume true; {14619#true} is VALID [2022-04-28 14:05:54,769 INFO L290 TraceCheckUtils]: 25: Hoare triple {14619#true} assume !(0 == ~cond); {14619#true} is VALID [2022-04-28 14:05:54,769 INFO L290 TraceCheckUtils]: 24: Hoare triple {14619#true} ~cond := #in~cond; {14619#true} is VALID [2022-04-28 14:05:54,769 INFO L272 TraceCheckUtils]: 23: Hoare triple {14717#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14619#true} is VALID [2022-04-28 14:05:54,769 INFO L290 TraceCheckUtils]: 22: Hoare triple {14717#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,769 INFO L290 TraceCheckUtils]: 21: Hoare triple {14689#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14717#(<= ~counter~0 3)} is VALID [2022-04-28 14:05:54,770 INFO L290 TraceCheckUtils]: 20: Hoare triple {14689#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,770 INFO L290 TraceCheckUtils]: 19: Hoare triple {14689#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,771 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14619#true} {14689#(<= ~counter~0 2)} #71#return; {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,771 INFO L290 TraceCheckUtils]: 17: Hoare triple {14619#true} assume true; {14619#true} is VALID [2022-04-28 14:05:54,771 INFO L290 TraceCheckUtils]: 16: Hoare triple {14619#true} assume !(0 == ~cond); {14619#true} is VALID [2022-04-28 14:05:54,771 INFO L290 TraceCheckUtils]: 15: Hoare triple {14619#true} ~cond := #in~cond; {14619#true} is VALID [2022-04-28 14:05:54,771 INFO L272 TraceCheckUtils]: 14: Hoare triple {14689#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {14619#true} is VALID [2022-04-28 14:05:54,771 INFO L290 TraceCheckUtils]: 13: Hoare triple {14689#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,772 INFO L290 TraceCheckUtils]: 12: Hoare triple {14661#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14689#(<= ~counter~0 2)} is VALID [2022-04-28 14:05:54,772 INFO L290 TraceCheckUtils]: 11: Hoare triple {14661#(<= ~counter~0 1)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,773 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14619#true} {14661#(<= ~counter~0 1)} #69#return; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,773 INFO L290 TraceCheckUtils]: 9: Hoare triple {14619#true} assume true; {14619#true} is VALID [2022-04-28 14:05:54,773 INFO L290 TraceCheckUtils]: 8: Hoare triple {14619#true} assume !(0 == ~cond); {14619#true} is VALID [2022-04-28 14:05:54,773 INFO L290 TraceCheckUtils]: 7: Hoare triple {14619#true} ~cond := #in~cond; {14619#true} is VALID [2022-04-28 14:05:54,773 INFO L272 TraceCheckUtils]: 6: Hoare triple {14661#(<= ~counter~0 1)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14619#true} is VALID [2022-04-28 14:05:54,773 INFO L290 TraceCheckUtils]: 5: Hoare triple {14661#(<= ~counter~0 1)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,773 INFO L272 TraceCheckUtils]: 4: Hoare triple {14661#(<= ~counter~0 1)} call #t~ret7 := main(); {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,774 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14661#(<= ~counter~0 1)} {14619#true} #77#return; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,774 INFO L290 TraceCheckUtils]: 2: Hoare triple {14661#(<= ~counter~0 1)} assume true; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,774 INFO L290 TraceCheckUtils]: 1: Hoare triple {14619#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; {14661#(<= ~counter~0 1)} is VALID [2022-04-28 14:05:54,775 INFO L272 TraceCheckUtils]: 0: Hoare triple {14619#true} call ULTIMATE.init(); {14619#true} is VALID [2022-04-28 14:05:54,775 INFO L134 CoverageAnalysis]: Checked inductivity of 284 backedges. 16 proven. 156 refuted. 0 times theorem prover too weak. 112 trivial. 0 not checked. [2022-04-28 14:05:54,775 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:05:54,775 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [482522758] [2022-04-28 14:05:54,775 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:05:54,775 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1412934527] [2022-04-28 14:05:54,775 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1412934527] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:05:54,775 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:05:54,776 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 14 [2022-04-28 14:05:54,776 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:05:54,776 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [646180283] [2022-04-28 14:05:54,776 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [646180283] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:05:54,776 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:05:54,776 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 14:05:54,776 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [781537668] [2022-04-28 14:05:54,776 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:05:54,777 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Word has length 90 [2022-04-28 14:05:54,777 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:05:54,777 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:05:54,851 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:05:54,851 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 14:05:54,851 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:05:54,851 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 14:05:54,851 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 14:05:54,852 INFO L87 Difference]: Start difference. First operand 120 states and 146 transitions. Second operand has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:05:55,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:05:55,386 INFO L93 Difference]: Finished difference Result 139 states and 169 transitions. [2022-04-28 14:05:55,386 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 14:05:55,386 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Word has length 90 [2022-04-28 14:05:55,386 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:05:55,386 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:05:55,388 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 155 transitions. [2022-04-28 14:05:55,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:05:55,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 155 transitions. [2022-04-28 14:05:55,389 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 155 transitions. [2022-04-28 14:05:55,522 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:05:55,524 INFO L225 Difference]: With dead ends: 139 [2022-04-28 14:05:55,524 INFO L226 Difference]: Without dead ends: 131 [2022-04-28 14:05:55,524 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 166 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 46 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=175, Invalid=287, Unknown=0, NotChecked=0, Total=462 [2022-04-28 14:05:55,524 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 88 mSDsluCounter, 168 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 88 SdHoareTripleChecker+Valid, 206 SdHoareTripleChecker+Invalid, 66 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 14:05:55,525 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [88 Valid, 206 Invalid, 66 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 14:05:55,525 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-28 14:05:55,729 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 131. [2022-04-28 14:05:55,729 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:05:55,730 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 131 states, 102 states have (on average 1.2941176470588236) internal successors, (132), 103 states have internal predecessors, (132), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 14:05:55,730 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 131 states, 102 states have (on average 1.2941176470588236) internal successors, (132), 103 states have internal predecessors, (132), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 14:05:55,730 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 131 states, 102 states have (on average 1.2941176470588236) internal successors, (132), 103 states have internal predecessors, (132), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 14:05:55,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:05:55,735 INFO L93 Difference]: Finished difference Result 131 states and 160 transitions. [2022-04-28 14:05:55,735 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 160 transitions. [2022-04-28 14:05:55,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:05:55,736 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:05:55,736 INFO L74 IsIncluded]: Start isIncluded. First operand has 131 states, 102 states have (on average 1.2941176470588236) internal successors, (132), 103 states have internal predecessors, (132), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 131 states. [2022-04-28 14:05:55,736 INFO L87 Difference]: Start difference. First operand has 131 states, 102 states have (on average 1.2941176470588236) internal successors, (132), 103 states have internal predecessors, (132), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 131 states. [2022-04-28 14:05:55,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:05:55,737 INFO L93 Difference]: Finished difference Result 131 states and 160 transitions. [2022-04-28 14:05:55,738 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 160 transitions. [2022-04-28 14:05:55,738 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:05:55,738 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:05:55,738 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:05:55,738 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:05:55,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 102 states have (on average 1.2941176470588236) internal successors, (132), 103 states have internal predecessors, (132), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 14:05:55,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 160 transitions. [2022-04-28 14:05:55,741 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 160 transitions. Word has length 90 [2022-04-28 14:05:55,741 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:05:55,741 INFO L495 AbstractCegarLoop]: Abstraction has 131 states and 160 transitions. [2022-04-28 14:05:55,741 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 14:05:55,741 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 160 transitions. [2022-04-28 14:06:13,188 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 160 edges. 152 inductive. 0 not inductive. 8 times theorem prover too weak to decide inductivity. [2022-04-28 14:06:13,188 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 160 transitions. [2022-04-28 14:06:13,189 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-28 14:06:13,189 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:06:13,189 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 9, 9, 9, 9, 9, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 14:06:13,196 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-28 14:06:13,396 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-28 14:06:13,396 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:06:13,396 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:06:13,396 INFO L85 PathProgramCache]: Analyzing trace with hash -164303550, now seen corresponding path program 17 times [2022-04-28 14:06:13,396 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:06:13,396 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [325842560] [2022-04-28 14:06:19,445 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:06:19,445 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:06:19,445 INFO L85 PathProgramCache]: Analyzing trace with hash -164303550, now seen corresponding path program 18 times [2022-04-28 14:06:19,445 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:06:19,445 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1428907006] [2022-04-28 14:06:19,445 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:06:19,445 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:06:19,458 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:06:19,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [200093409] [2022-04-28 14:06:19,458 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 14:06:19,458 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:06:19,458 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:06:19,459 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:06:19,460 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-28 14:06:19,585 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 10 check-sat command(s) [2022-04-28 14:06:19,585 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 14:06:19,587 INFO L263 TraceCheckSpWp]: Trace formula consists of 320 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 14:06:19,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 14:06:19,605 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 14:06:20,064 INFO L272 TraceCheckUtils]: 0: Hoare triple {15990#true} call ULTIMATE.init(); {15990#true} is VALID [2022-04-28 14:06:20,065 INFO L290 TraceCheckUtils]: 1: Hoare triple {15990#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; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,065 INFO L290 TraceCheckUtils]: 2: Hoare triple {15998#(<= ~counter~0 0)} assume true; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,065 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15998#(<= ~counter~0 0)} {15990#true} #77#return; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,066 INFO L272 TraceCheckUtils]: 4: Hoare triple {15998#(<= ~counter~0 0)} call #t~ret7 := main(); {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,066 INFO L290 TraceCheckUtils]: 5: Hoare triple {15998#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,066 INFO L272 TraceCheckUtils]: 6: Hoare triple {15998#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,067 INFO L290 TraceCheckUtils]: 7: Hoare triple {15998#(<= ~counter~0 0)} ~cond := #in~cond; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,067 INFO L290 TraceCheckUtils]: 8: Hoare triple {15998#(<= ~counter~0 0)} assume !(0 == ~cond); {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,067 INFO L290 TraceCheckUtils]: 9: Hoare triple {15998#(<= ~counter~0 0)} assume true; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,067 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15998#(<= ~counter~0 0)} {15998#(<= ~counter~0 0)} #69#return; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,068 INFO L290 TraceCheckUtils]: 11: Hoare triple {15998#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,068 INFO L290 TraceCheckUtils]: 12: Hoare triple {15998#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,069 INFO L290 TraceCheckUtils]: 13: Hoare triple {16032#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,069 INFO L272 TraceCheckUtils]: 14: Hoare triple {16032#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,069 INFO L290 TraceCheckUtils]: 15: Hoare triple {16032#(<= ~counter~0 1)} ~cond := #in~cond; {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,070 INFO L290 TraceCheckUtils]: 16: Hoare triple {16032#(<= ~counter~0 1)} assume !(0 == ~cond); {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,070 INFO L290 TraceCheckUtils]: 17: Hoare triple {16032#(<= ~counter~0 1)} assume true; {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,070 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {16032#(<= ~counter~0 1)} {16032#(<= ~counter~0 1)} #71#return; {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,071 INFO L290 TraceCheckUtils]: 19: Hoare triple {16032#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,071 INFO L290 TraceCheckUtils]: 20: Hoare triple {16032#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,071 INFO L290 TraceCheckUtils]: 21: Hoare triple {16032#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,072 INFO L290 TraceCheckUtils]: 22: Hoare triple {16060#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,072 INFO L272 TraceCheckUtils]: 23: Hoare triple {16060#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,072 INFO L290 TraceCheckUtils]: 24: Hoare triple {16060#(<= ~counter~0 2)} ~cond := #in~cond; {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,073 INFO L290 TraceCheckUtils]: 25: Hoare triple {16060#(<= ~counter~0 2)} assume !(0 == ~cond); {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,073 INFO L290 TraceCheckUtils]: 26: Hoare triple {16060#(<= ~counter~0 2)} assume true; {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,073 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {16060#(<= ~counter~0 2)} {16060#(<= ~counter~0 2)} #71#return; {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,074 INFO L290 TraceCheckUtils]: 28: Hoare triple {16060#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,074 INFO L290 TraceCheckUtils]: 29: Hoare triple {16060#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,074 INFO L290 TraceCheckUtils]: 30: Hoare triple {16060#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,074 INFO L290 TraceCheckUtils]: 31: Hoare triple {16088#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,075 INFO L272 TraceCheckUtils]: 32: Hoare triple {16088#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,075 INFO L290 TraceCheckUtils]: 33: Hoare triple {16088#(<= ~counter~0 3)} ~cond := #in~cond; {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,075 INFO L290 TraceCheckUtils]: 34: Hoare triple {16088#(<= ~counter~0 3)} assume !(0 == ~cond); {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,076 INFO L290 TraceCheckUtils]: 35: Hoare triple {16088#(<= ~counter~0 3)} assume true; {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,076 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16088#(<= ~counter~0 3)} {16088#(<= ~counter~0 3)} #71#return; {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,076 INFO L290 TraceCheckUtils]: 37: Hoare triple {16088#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,077 INFO L290 TraceCheckUtils]: 38: Hoare triple {16088#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,077 INFO L290 TraceCheckUtils]: 39: Hoare triple {16088#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,077 INFO L290 TraceCheckUtils]: 40: Hoare triple {16116#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,078 INFO L272 TraceCheckUtils]: 41: Hoare triple {16116#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,078 INFO L290 TraceCheckUtils]: 42: Hoare triple {16116#(<= ~counter~0 4)} ~cond := #in~cond; {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,078 INFO L290 TraceCheckUtils]: 43: Hoare triple {16116#(<= ~counter~0 4)} assume !(0 == ~cond); {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,079 INFO L290 TraceCheckUtils]: 44: Hoare triple {16116#(<= ~counter~0 4)} assume true; {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,079 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {16116#(<= ~counter~0 4)} {16116#(<= ~counter~0 4)} #71#return; {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,079 INFO L290 TraceCheckUtils]: 46: Hoare triple {16116#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,080 INFO L290 TraceCheckUtils]: 47: Hoare triple {16116#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,080 INFO L290 TraceCheckUtils]: 48: Hoare triple {16116#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,080 INFO L290 TraceCheckUtils]: 49: Hoare triple {16144#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,081 INFO L272 TraceCheckUtils]: 50: Hoare triple {16144#(<= ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,081 INFO L290 TraceCheckUtils]: 51: Hoare triple {16144#(<= ~counter~0 5)} ~cond := #in~cond; {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,081 INFO L290 TraceCheckUtils]: 52: Hoare triple {16144#(<= ~counter~0 5)} assume !(0 == ~cond); {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,082 INFO L290 TraceCheckUtils]: 53: Hoare triple {16144#(<= ~counter~0 5)} assume true; {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,082 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {16144#(<= ~counter~0 5)} {16144#(<= ~counter~0 5)} #71#return; {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,082 INFO L290 TraceCheckUtils]: 55: Hoare triple {16144#(<= ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,083 INFO L290 TraceCheckUtils]: 56: Hoare triple {16144#(<= ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,083 INFO L290 TraceCheckUtils]: 57: Hoare triple {16144#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,083 INFO L290 TraceCheckUtils]: 58: Hoare triple {16172#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,084 INFO L272 TraceCheckUtils]: 59: Hoare triple {16172#(<= ~counter~0 6)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,084 INFO L290 TraceCheckUtils]: 60: Hoare triple {16172#(<= ~counter~0 6)} ~cond := #in~cond; {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,084 INFO L290 TraceCheckUtils]: 61: Hoare triple {16172#(<= ~counter~0 6)} assume !(0 == ~cond); {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,085 INFO L290 TraceCheckUtils]: 62: Hoare triple {16172#(<= ~counter~0 6)} assume true; {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,085 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {16172#(<= ~counter~0 6)} {16172#(<= ~counter~0 6)} #71#return; {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,086 INFO L290 TraceCheckUtils]: 64: Hoare triple {16172#(<= ~counter~0 6)} assume !!(0 != ~a~0 && 0 != ~b~0); {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,086 INFO L290 TraceCheckUtils]: 65: Hoare triple {16172#(<= ~counter~0 6)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,086 INFO L290 TraceCheckUtils]: 66: Hoare triple {16172#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,087 INFO L290 TraceCheckUtils]: 67: Hoare triple {16200#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,087 INFO L272 TraceCheckUtils]: 68: Hoare triple {16200#(<= ~counter~0 7)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,087 INFO L290 TraceCheckUtils]: 69: Hoare triple {16200#(<= ~counter~0 7)} ~cond := #in~cond; {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,088 INFO L290 TraceCheckUtils]: 70: Hoare triple {16200#(<= ~counter~0 7)} assume !(0 == ~cond); {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,088 INFO L290 TraceCheckUtils]: 71: Hoare triple {16200#(<= ~counter~0 7)} assume true; {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,088 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {16200#(<= ~counter~0 7)} {16200#(<= ~counter~0 7)} #71#return; {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,089 INFO L290 TraceCheckUtils]: 73: Hoare triple {16200#(<= ~counter~0 7)} assume !!(0 != ~a~0 && 0 != ~b~0); {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,089 INFO L290 TraceCheckUtils]: 74: Hoare triple {16200#(<= ~counter~0 7)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,089 INFO L290 TraceCheckUtils]: 75: Hoare triple {16200#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,090 INFO L290 TraceCheckUtils]: 76: Hoare triple {16228#(<= ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,090 INFO L272 TraceCheckUtils]: 77: Hoare triple {16228#(<= ~counter~0 8)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,091 INFO L290 TraceCheckUtils]: 78: Hoare triple {16228#(<= ~counter~0 8)} ~cond := #in~cond; {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,091 INFO L290 TraceCheckUtils]: 79: Hoare triple {16228#(<= ~counter~0 8)} assume !(0 == ~cond); {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,091 INFO L290 TraceCheckUtils]: 80: Hoare triple {16228#(<= ~counter~0 8)} assume true; {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,092 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {16228#(<= ~counter~0 8)} {16228#(<= ~counter~0 8)} #71#return; {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,092 INFO L290 TraceCheckUtils]: 82: Hoare triple {16228#(<= ~counter~0 8)} assume !!(0 != ~a~0 && 0 != ~b~0); {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,092 INFO L290 TraceCheckUtils]: 83: Hoare triple {16228#(<= ~counter~0 8)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,093 INFO L290 TraceCheckUtils]: 84: Hoare triple {16228#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,093 INFO L290 TraceCheckUtils]: 85: Hoare triple {16256#(<= ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,094 INFO L272 TraceCheckUtils]: 86: Hoare triple {16256#(<= ~counter~0 9)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,094 INFO L290 TraceCheckUtils]: 87: Hoare triple {16256#(<= ~counter~0 9)} ~cond := #in~cond; {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,094 INFO L290 TraceCheckUtils]: 88: Hoare triple {16256#(<= ~counter~0 9)} assume !(0 == ~cond); {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,094 INFO L290 TraceCheckUtils]: 89: Hoare triple {16256#(<= ~counter~0 9)} assume true; {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,095 INFO L284 TraceCheckUtils]: 90: Hoare quadruple {16256#(<= ~counter~0 9)} {16256#(<= ~counter~0 9)} #71#return; {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,095 INFO L290 TraceCheckUtils]: 91: Hoare triple {16256#(<= ~counter~0 9)} assume !!(0 != ~a~0 && 0 != ~b~0); {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,095 INFO L290 TraceCheckUtils]: 92: Hoare triple {16256#(<= ~counter~0 9)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,096 INFO L290 TraceCheckUtils]: 93: Hoare triple {16256#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16284#(<= |main_#t~post6| 9)} is VALID [2022-04-28 14:06:20,096 INFO L290 TraceCheckUtils]: 94: Hoare triple {16284#(<= |main_#t~post6| 9)} assume !(#t~post6 < 10);havoc #t~post6; {15991#false} is VALID [2022-04-28 14:06:20,096 INFO L272 TraceCheckUtils]: 95: Hoare triple {15991#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {15991#false} is VALID [2022-04-28 14:06:20,096 INFO L290 TraceCheckUtils]: 96: Hoare triple {15991#false} ~cond := #in~cond; {15991#false} is VALID [2022-04-28 14:06:20,096 INFO L290 TraceCheckUtils]: 97: Hoare triple {15991#false} assume 0 == ~cond; {15991#false} is VALID [2022-04-28 14:06:20,096 INFO L290 TraceCheckUtils]: 98: Hoare triple {15991#false} assume !false; {15991#false} is VALID [2022-04-28 14:06:20,097 INFO L134 CoverageAnalysis]: Checked inductivity of 360 backedges. 18 proven. 342 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 14:06:20,097 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 14:06:20,569 INFO L290 TraceCheckUtils]: 98: Hoare triple {15991#false} assume !false; {15991#false} is VALID [2022-04-28 14:06:20,569 INFO L290 TraceCheckUtils]: 97: Hoare triple {15991#false} assume 0 == ~cond; {15991#false} is VALID [2022-04-28 14:06:20,569 INFO L290 TraceCheckUtils]: 96: Hoare triple {15991#false} ~cond := #in~cond; {15991#false} is VALID [2022-04-28 14:06:20,569 INFO L272 TraceCheckUtils]: 95: Hoare triple {15991#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {15991#false} is VALID [2022-04-28 14:06:20,570 INFO L290 TraceCheckUtils]: 94: Hoare triple {16284#(<= |main_#t~post6| 9)} assume !(#t~post6 < 10);havoc #t~post6; {15991#false} is VALID [2022-04-28 14:06:20,570 INFO L290 TraceCheckUtils]: 93: Hoare triple {16256#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16284#(<= |main_#t~post6| 9)} is VALID [2022-04-28 14:06:20,570 INFO L290 TraceCheckUtils]: 92: Hoare triple {16256#(<= ~counter~0 9)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,570 INFO L290 TraceCheckUtils]: 91: Hoare triple {16256#(<= ~counter~0 9)} assume !!(0 != ~a~0 && 0 != ~b~0); {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,571 INFO L284 TraceCheckUtils]: 90: Hoare quadruple {15990#true} {16256#(<= ~counter~0 9)} #71#return; {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,571 INFO L290 TraceCheckUtils]: 89: Hoare triple {15990#true} assume true; {15990#true} is VALID [2022-04-28 14:06:20,571 INFO L290 TraceCheckUtils]: 88: Hoare triple {15990#true} assume !(0 == ~cond); {15990#true} is VALID [2022-04-28 14:06:20,571 INFO L290 TraceCheckUtils]: 87: Hoare triple {15990#true} ~cond := #in~cond; {15990#true} is VALID [2022-04-28 14:06:20,571 INFO L272 TraceCheckUtils]: 86: Hoare triple {16256#(<= ~counter~0 9)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {15990#true} is VALID [2022-04-28 14:06:20,571 INFO L290 TraceCheckUtils]: 85: Hoare triple {16256#(<= ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,572 INFO L290 TraceCheckUtils]: 84: Hoare triple {16228#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16256#(<= ~counter~0 9)} is VALID [2022-04-28 14:06:20,572 INFO L290 TraceCheckUtils]: 83: Hoare triple {16228#(<= ~counter~0 8)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,573 INFO L290 TraceCheckUtils]: 82: Hoare triple {16228#(<= ~counter~0 8)} assume !!(0 != ~a~0 && 0 != ~b~0); {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,573 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {15990#true} {16228#(<= ~counter~0 8)} #71#return; {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,573 INFO L290 TraceCheckUtils]: 80: Hoare triple {15990#true} assume true; {15990#true} is VALID [2022-04-28 14:06:20,573 INFO L290 TraceCheckUtils]: 79: Hoare triple {15990#true} assume !(0 == ~cond); {15990#true} is VALID [2022-04-28 14:06:20,573 INFO L290 TraceCheckUtils]: 78: Hoare triple {15990#true} ~cond := #in~cond; {15990#true} is VALID [2022-04-28 14:06:20,573 INFO L272 TraceCheckUtils]: 77: Hoare triple {16228#(<= ~counter~0 8)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {15990#true} is VALID [2022-04-28 14:06:20,574 INFO L290 TraceCheckUtils]: 76: Hoare triple {16228#(<= ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,574 INFO L290 TraceCheckUtils]: 75: Hoare triple {16200#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16228#(<= ~counter~0 8)} is VALID [2022-04-28 14:06:20,574 INFO L290 TraceCheckUtils]: 74: Hoare triple {16200#(<= ~counter~0 7)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,574 INFO L290 TraceCheckUtils]: 73: Hoare triple {16200#(<= ~counter~0 7)} assume !!(0 != ~a~0 && 0 != ~b~0); {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,575 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15990#true} {16200#(<= ~counter~0 7)} #71#return; {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,575 INFO L290 TraceCheckUtils]: 71: Hoare triple {15990#true} assume true; {15990#true} is VALID [2022-04-28 14:06:20,575 INFO L290 TraceCheckUtils]: 70: Hoare triple {15990#true} assume !(0 == ~cond); {15990#true} is VALID [2022-04-28 14:06:20,575 INFO L290 TraceCheckUtils]: 69: Hoare triple {15990#true} ~cond := #in~cond; {15990#true} is VALID [2022-04-28 14:06:20,575 INFO L272 TraceCheckUtils]: 68: Hoare triple {16200#(<= ~counter~0 7)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {15990#true} is VALID [2022-04-28 14:06:20,575 INFO L290 TraceCheckUtils]: 67: Hoare triple {16200#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,576 INFO L290 TraceCheckUtils]: 66: Hoare triple {16172#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16200#(<= ~counter~0 7)} is VALID [2022-04-28 14:06:20,576 INFO L290 TraceCheckUtils]: 65: Hoare triple {16172#(<= ~counter~0 6)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,576 INFO L290 TraceCheckUtils]: 64: Hoare triple {16172#(<= ~counter~0 6)} assume !!(0 != ~a~0 && 0 != ~b~0); {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,577 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {15990#true} {16172#(<= ~counter~0 6)} #71#return; {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,577 INFO L290 TraceCheckUtils]: 62: Hoare triple {15990#true} assume true; {15990#true} is VALID [2022-04-28 14:06:20,577 INFO L290 TraceCheckUtils]: 61: Hoare triple {15990#true} assume !(0 == ~cond); {15990#true} is VALID [2022-04-28 14:06:20,577 INFO L290 TraceCheckUtils]: 60: Hoare triple {15990#true} ~cond := #in~cond; {15990#true} is VALID [2022-04-28 14:06:20,577 INFO L272 TraceCheckUtils]: 59: Hoare triple {16172#(<= ~counter~0 6)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {15990#true} is VALID [2022-04-28 14:06:20,577 INFO L290 TraceCheckUtils]: 58: Hoare triple {16172#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,578 INFO L290 TraceCheckUtils]: 57: Hoare triple {16144#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16172#(<= ~counter~0 6)} is VALID [2022-04-28 14:06:20,578 INFO L290 TraceCheckUtils]: 56: Hoare triple {16144#(<= ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,578 INFO L290 TraceCheckUtils]: 55: Hoare triple {16144#(<= ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,579 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {15990#true} {16144#(<= ~counter~0 5)} #71#return; {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,579 INFO L290 TraceCheckUtils]: 53: Hoare triple {15990#true} assume true; {15990#true} is VALID [2022-04-28 14:06:20,579 INFO L290 TraceCheckUtils]: 52: Hoare triple {15990#true} assume !(0 == ~cond); {15990#true} is VALID [2022-04-28 14:06:20,579 INFO L290 TraceCheckUtils]: 51: Hoare triple {15990#true} ~cond := #in~cond; {15990#true} is VALID [2022-04-28 14:06:20,579 INFO L272 TraceCheckUtils]: 50: Hoare triple {16144#(<= ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {15990#true} is VALID [2022-04-28 14:06:20,579 INFO L290 TraceCheckUtils]: 49: Hoare triple {16144#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,580 INFO L290 TraceCheckUtils]: 48: Hoare triple {16116#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16144#(<= ~counter~0 5)} is VALID [2022-04-28 14:06:20,580 INFO L290 TraceCheckUtils]: 47: Hoare triple {16116#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,580 INFO L290 TraceCheckUtils]: 46: Hoare triple {16116#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,581 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {15990#true} {16116#(<= ~counter~0 4)} #71#return; {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,581 INFO L290 TraceCheckUtils]: 44: Hoare triple {15990#true} assume true; {15990#true} is VALID [2022-04-28 14:06:20,581 INFO L290 TraceCheckUtils]: 43: Hoare triple {15990#true} assume !(0 == ~cond); {15990#true} is VALID [2022-04-28 14:06:20,581 INFO L290 TraceCheckUtils]: 42: Hoare triple {15990#true} ~cond := #in~cond; {15990#true} is VALID [2022-04-28 14:06:20,581 INFO L272 TraceCheckUtils]: 41: Hoare triple {16116#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {15990#true} is VALID [2022-04-28 14:06:20,581 INFO L290 TraceCheckUtils]: 40: Hoare triple {16116#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,582 INFO L290 TraceCheckUtils]: 39: Hoare triple {16088#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16116#(<= ~counter~0 4)} is VALID [2022-04-28 14:06:20,587 INFO L290 TraceCheckUtils]: 38: Hoare triple {16088#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,587 INFO L290 TraceCheckUtils]: 37: Hoare triple {16088#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,588 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {15990#true} {16088#(<= ~counter~0 3)} #71#return; {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,588 INFO L290 TraceCheckUtils]: 35: Hoare triple {15990#true} assume true; {15990#true} is VALID [2022-04-28 14:06:20,588 INFO L290 TraceCheckUtils]: 34: Hoare triple {15990#true} assume !(0 == ~cond); {15990#true} is VALID [2022-04-28 14:06:20,588 INFO L290 TraceCheckUtils]: 33: Hoare triple {15990#true} ~cond := #in~cond; {15990#true} is VALID [2022-04-28 14:06:20,588 INFO L272 TraceCheckUtils]: 32: Hoare triple {16088#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {15990#true} is VALID [2022-04-28 14:06:20,588 INFO L290 TraceCheckUtils]: 31: Hoare triple {16088#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,589 INFO L290 TraceCheckUtils]: 30: Hoare triple {16060#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16088#(<= ~counter~0 3)} is VALID [2022-04-28 14:06:20,591 INFO L290 TraceCheckUtils]: 29: Hoare triple {16060#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,591 INFO L290 TraceCheckUtils]: 28: Hoare triple {16060#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,591 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {15990#true} {16060#(<= ~counter~0 2)} #71#return; {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,592 INFO L290 TraceCheckUtils]: 26: Hoare triple {15990#true} assume true; {15990#true} is VALID [2022-04-28 14:06:20,592 INFO L290 TraceCheckUtils]: 25: Hoare triple {15990#true} assume !(0 == ~cond); {15990#true} is VALID [2022-04-28 14:06:20,592 INFO L290 TraceCheckUtils]: 24: Hoare triple {15990#true} ~cond := #in~cond; {15990#true} is VALID [2022-04-28 14:06:20,592 INFO L272 TraceCheckUtils]: 23: Hoare triple {16060#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {15990#true} is VALID [2022-04-28 14:06:20,592 INFO L290 TraceCheckUtils]: 22: Hoare triple {16060#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,592 INFO L290 TraceCheckUtils]: 21: Hoare triple {16032#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16060#(<= ~counter~0 2)} is VALID [2022-04-28 14:06:20,593 INFO L290 TraceCheckUtils]: 20: Hoare triple {16032#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,593 INFO L290 TraceCheckUtils]: 19: Hoare triple {16032#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,593 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {15990#true} {16032#(<= ~counter~0 1)} #71#return; {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,593 INFO L290 TraceCheckUtils]: 17: Hoare triple {15990#true} assume true; {15990#true} is VALID [2022-04-28 14:06:20,594 INFO L290 TraceCheckUtils]: 16: Hoare triple {15990#true} assume !(0 == ~cond); {15990#true} is VALID [2022-04-28 14:06:20,594 INFO L290 TraceCheckUtils]: 15: Hoare triple {15990#true} ~cond := #in~cond; {15990#true} is VALID [2022-04-28 14:06:20,594 INFO L272 TraceCheckUtils]: 14: Hoare triple {16032#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {15990#true} is VALID [2022-04-28 14:06:20,594 INFO L290 TraceCheckUtils]: 13: Hoare triple {16032#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,594 INFO L290 TraceCheckUtils]: 12: Hoare triple {15998#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16032#(<= ~counter~0 1)} is VALID [2022-04-28 14:06:20,594 INFO L290 TraceCheckUtils]: 11: Hoare triple {15998#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,595 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15990#true} {15998#(<= ~counter~0 0)} #69#return; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,595 INFO L290 TraceCheckUtils]: 9: Hoare triple {15990#true} assume true; {15990#true} is VALID [2022-04-28 14:06:20,595 INFO L290 TraceCheckUtils]: 8: Hoare triple {15990#true} assume !(0 == ~cond); {15990#true} is VALID [2022-04-28 14:06:20,595 INFO L290 TraceCheckUtils]: 7: Hoare triple {15990#true} ~cond := #in~cond; {15990#true} is VALID [2022-04-28 14:06:20,595 INFO L272 TraceCheckUtils]: 6: Hoare triple {15998#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15990#true} is VALID [2022-04-28 14:06:20,595 INFO L290 TraceCheckUtils]: 5: Hoare triple {15998#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,596 INFO L272 TraceCheckUtils]: 4: Hoare triple {15998#(<= ~counter~0 0)} call #t~ret7 := main(); {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,596 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15998#(<= ~counter~0 0)} {15990#true} #77#return; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,596 INFO L290 TraceCheckUtils]: 2: Hoare triple {15998#(<= ~counter~0 0)} assume true; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,597 INFO L290 TraceCheckUtils]: 1: Hoare triple {15990#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; {15998#(<= ~counter~0 0)} is VALID [2022-04-28 14:06:20,597 INFO L272 TraceCheckUtils]: 0: Hoare triple {15990#true} call ULTIMATE.init(); {15990#true} is VALID [2022-04-28 14:06:20,597 INFO L134 CoverageAnalysis]: Checked inductivity of 360 backedges. 18 proven. 198 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2022-04-28 14:06:20,597 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 14:06:20,597 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1428907006] [2022-04-28 14:06:20,597 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 14:06:20,597 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [200093409] [2022-04-28 14:06:20,597 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [200093409] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 14:06:20,597 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 14:06:20,597 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 13 [2022-04-28 14:06:20,598 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 14:06:20,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [325842560] [2022-04-28 14:06:20,598 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [325842560] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 14:06:20,598 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 14:06:20,598 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 14:06:20,598 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [503743986] [2022-04-28 14:06:20,598 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 14:06:20,598 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Word has length 99 [2022-04-28 14:06:20,598 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 14:06:20,598 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:06:20,675 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:06:20,675 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 14:06:20,675 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 14:06:20,676 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 14:06:20,676 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=88, Unknown=0, NotChecked=0, Total=156 [2022-04-28 14:06:20,676 INFO L87 Difference]: Start difference. First operand 131 states and 160 transitions. Second operand has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:06:21,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:06:21,224 INFO L93 Difference]: Finished difference Result 150 states and 183 transitions. [2022-04-28 14:06:21,224 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 14:06:21,224 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Word has length 99 [2022-04-28 14:06:21,224 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 14:06:21,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:06:21,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 169 transitions. [2022-04-28 14:06:21,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:06:21,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 169 transitions. [2022-04-28 14:06:21,227 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 169 transitions. [2022-04-28 14:06:21,395 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 169 edges. 169 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 14:06:21,397 INFO L225 Difference]: With dead ends: 150 [2022-04-28 14:06:21,397 INFO L226 Difference]: Without dead ends: 142 [2022-04-28 14:06:21,397 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 206 GetRequests, 185 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 54 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=176, Invalid=286, Unknown=0, NotChecked=0, Total=462 [2022-04-28 14:06:21,398 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 127 mSDsluCounter, 155 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 127 SdHoareTripleChecker+Valid, 194 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 14:06:21,398 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [127 Valid, 194 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 53 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 14:06:21,398 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 142 states. [2022-04-28 14:06:21,638 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 142 to 142. [2022-04-28 14:06:21,638 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 14:06:21,638 INFO L82 GeneralOperation]: Start isEquivalent. First operand 142 states. Second operand has 142 states, 111 states have (on average 1.2972972972972974) internal successors, (144), 112 states have internal predecessors, (144), 16 states have call successors, (16), 15 states have call predecessors, (16), 14 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-28 14:06:21,638 INFO L74 IsIncluded]: Start isIncluded. First operand 142 states. Second operand has 142 states, 111 states have (on average 1.2972972972972974) internal successors, (144), 112 states have internal predecessors, (144), 16 states have call successors, (16), 15 states have call predecessors, (16), 14 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-28 14:06:21,639 INFO L87 Difference]: Start difference. First operand 142 states. Second operand has 142 states, 111 states have (on average 1.2972972972972974) internal successors, (144), 112 states have internal predecessors, (144), 16 states have call successors, (16), 15 states have call predecessors, (16), 14 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-28 14:06:21,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:06:21,640 INFO L93 Difference]: Finished difference Result 142 states and 174 transitions. [2022-04-28 14:06:21,640 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 174 transitions. [2022-04-28 14:06:21,641 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:06:21,641 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:06:21,641 INFO L74 IsIncluded]: Start isIncluded. First operand has 142 states, 111 states have (on average 1.2972972972972974) internal successors, (144), 112 states have internal predecessors, (144), 16 states have call successors, (16), 15 states have call predecessors, (16), 14 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 142 states. [2022-04-28 14:06:21,641 INFO L87 Difference]: Start difference. First operand has 142 states, 111 states have (on average 1.2972972972972974) internal successors, (144), 112 states have internal predecessors, (144), 16 states have call successors, (16), 15 states have call predecessors, (16), 14 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 142 states. [2022-04-28 14:06:21,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 14:06:21,642 INFO L93 Difference]: Finished difference Result 142 states and 174 transitions. [2022-04-28 14:06:21,642 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 174 transitions. [2022-04-28 14:06:21,643 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 14:06:21,643 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 14:06:21,643 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 14:06:21,643 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 14:06:21,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 142 states, 111 states have (on average 1.2972972972972974) internal successors, (144), 112 states have internal predecessors, (144), 16 states have call successors, (16), 15 states have call predecessors, (16), 14 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-28 14:06:21,645 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 142 states to 142 states and 174 transitions. [2022-04-28 14:06:21,645 INFO L78 Accepts]: Start accepts. Automaton has 142 states and 174 transitions. Word has length 99 [2022-04-28 14:06:21,645 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 14:06:21,645 INFO L495 AbstractCegarLoop]: Abstraction has 142 states and 174 transitions. [2022-04-28 14:06:21,645 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 14:06:21,645 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 142 states and 174 transitions. [2022-04-28 14:06:41,211 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 174 edges. 165 inductive. 0 not inductive. 9 times theorem prover too weak to decide inductivity. [2022-04-28 14:06:41,211 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 174 transitions. [2022-04-28 14:06:41,212 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-28 14:06:41,212 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 14:06:41,212 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 10, 10, 10, 10, 10, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 14:06:41,234 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-28 14:06:41,429 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:06:41,429 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 14:06:41,430 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 14:06:41,430 INFO L85 PathProgramCache]: Analyzing trace with hash 1397474810, now seen corresponding path program 19 times [2022-04-28 14:06:41,430 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 14:06:41,430 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1588061624] [2022-04-28 14:06:47,487 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-28 14:06:47,487 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 14:06:47,487 INFO L85 PathProgramCache]: Analyzing trace with hash 1397474810, now seen corresponding path program 20 times [2022-04-28 14:06:47,487 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 14:06:47,487 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1540626387] [2022-04-28 14:06:47,487 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 14:06:47,487 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 14:06:47,503 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 14:06:47,503 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1386264322] [2022-04-28 14:06:47,503 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 14:06:47,503 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:06:47,503 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 14:06:47,507 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 14:06:47,508 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-28 14:06:47,611 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 14:06:47,611 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-28 14:06:47,611 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-28 14:06:47,702 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-28 14:06:47,747 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-28 14:06:47,747 INFO L130 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found a feasible trace [2022-04-28 14:06:47,747 INFO L271 BasicCegarLoop]: Counterexample is feasible [2022-04-28 14:06:47,750 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-28 14:06:47,759 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-28 14:06:47,957 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 14:06:47,960 INFO L356 BasicCegarLoop]: Path program histogram: [20, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2] [2022-04-28 14:06:47,963 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-28 14:06:47,979 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L46-2 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L46-2 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-28 14:06:47,980 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-04-28 14:06:47,981 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-04-28 14:06:47,981 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-28 14:06:47,981 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 02:06:47 BoogieIcfgContainer [2022-04-28 14:06:47,982 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-28 14:06:47,982 INFO L158 Benchmark]: Toolchain (without parser) took 526085.20ms. Allocated memory was 196.1MB in the beginning and 235.9MB in the end (delta: 39.8MB). Free memory was 147.2MB in the beginning and 93.1MB in the end (delta: 54.1MB). Peak memory consumption was 95.5MB. Max. memory is 8.0GB. [2022-04-28 14:06:47,983 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 196.1MB. Free memory was 163.5MB in the beginning and 163.4MB in the end (delta: 151.9kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 14:06:47,983 INFO L158 Benchmark]: CACSL2BoogieTranslator took 167.33ms. Allocated memory is still 196.1MB. Free memory was 147.0MB in the beginning and 171.4MB in the end (delta: -24.3MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-28 14:06:47,983 INFO L158 Benchmark]: Boogie Preprocessor took 20.33ms. Allocated memory is still 196.1MB. Free memory was 171.4MB in the beginning and 169.8MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-28 14:06:47,983 INFO L158 Benchmark]: RCFGBuilder took 267.68ms. Allocated memory is still 196.1MB. Free memory was 169.8MB in the beginning and 157.3MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-28 14:06:47,983 INFO L158 Benchmark]: TraceAbstraction took 525623.50ms. Allocated memory was 196.1MB in the beginning and 235.9MB in the end (delta: 39.8MB). Free memory was 156.4MB in the beginning and 93.6MB in the end (delta: 62.8MB). Peak memory consumption was 103.4MB. Max. memory is 8.0GB. [2022-04-28 14:06:47,984 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.11ms. Allocated memory is still 196.1MB. Free memory was 163.5MB in the beginning and 163.4MB in the end (delta: 151.9kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 167.33ms. Allocated memory is still 196.1MB. Free memory was 147.0MB in the beginning and 171.4MB in the end (delta: -24.3MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 20.33ms. Allocated memory is still 196.1MB. Free memory was 171.4MB in the beginning and 169.8MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 267.68ms. Allocated memory is still 196.1MB. Free memory was 169.8MB in the beginning and 157.3MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 525623.50ms. Allocated memory was 196.1MB in the beginning and 235.9MB in the end (delta: 39.8MB). Free memory was 156.4MB in the beginning and 93.6MB in the end (delta: 62.8MB). Peak memory consumption was 103.4MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 14]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L19] int counter = 0; [L21] int x, y; [L22] long long a, b, p, q; [L24] x = __VERIFIER_nondet_int() [L25] y = __VERIFIER_nondet_int() [L26] CALL assume_abort_if_not(y >= 1) [L9] COND FALSE !(!cond) [L26] RET assume_abort_if_not(y >= 1) [L28] a = x [L29] b = y [L30] p = 1 [L31] q = 0 [L33] EXPR counter++ [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) [L12] COND FALSE !(!(cond)) [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) [L36] COND FALSE !(!(a != 0 && b != 0)) [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p [L33] EXPR counter++ [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) [L12] COND FALSE !(!(cond)) [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) [L36] COND FALSE !(!(a != 0 && b != 0)) [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p [L33] EXPR counter++ [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) [L12] COND FALSE !(!(cond)) [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) [L36] COND FALSE !(!(a != 0 && b != 0)) [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p [L33] EXPR counter++ [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) [L12] COND FALSE !(!(cond)) [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) [L36] COND FALSE !(!(a != 0 && b != 0)) [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p [L33] EXPR counter++ [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) [L12] COND FALSE !(!(cond)) [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) [L36] COND FALSE !(!(a != 0 && b != 0)) [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p [L33] EXPR counter++ [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) [L12] COND FALSE !(!(cond)) [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) [L36] COND FALSE !(!(a != 0 && b != 0)) [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p [L33] EXPR counter++ [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) [L12] COND FALSE !(!(cond)) [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) [L36] COND FALSE !(!(a != 0 && b != 0)) [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p [L33] EXPR counter++ [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) [L12] COND FALSE !(!(cond)) [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) [L36] COND FALSE !(!(a != 0 && b != 0)) [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p [L33] EXPR counter++ [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) [L12] COND FALSE !(!(cond)) [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) [L36] COND FALSE !(!(a != 0 && b != 0)) [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p [L33] EXPR counter++ [L33] COND TRUE counter++<10 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) [L12] COND FALSE !(!(cond)) [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) [L36] COND FALSE !(!(a != 0 && b != 0)) [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p [L33] EXPR counter++ [L33] COND FALSE !(counter++<10) [L56] CALL __VERIFIER_assert(q == (long long) x * y) [L12] COND TRUE !(cond) [L14] reach_error() - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 35 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 525.6s, OverallIterations: 24, TraceHistogramMax: 11, PathProgramHistogramMax: 20, EmptinessCheckTime: 0.0s, AutomataDifference: 26.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 3 mSolverCounterUnknown, 781 SdHoareTripleChecker+Valid, 10.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 760 mSDsluCounter, 2887 SdHoareTripleChecker+Invalid, 10.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 2182 mSDsCounter, 167 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1656 IncrementalHoareTripleChecker+Invalid, 1826 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 167 mSolverCounterUnsat, 705 mSDtfsCounter, 1656 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 1822 GetRequests, 1547 SyntacticMatches, 16 SemanticMatches, 259 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 380 ImplicationChecksByTransitivity, 1.7s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=142occurred in iteration=23, InterpolantAutomatonStates: 225, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 2.4s AutomataMinimizationTime, 23 MinimizatonAttempts, 104 StatesRemovedByMinimization, 14 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: No data available, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-28 14:06:48,089 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...