/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/cohendiv-ll_valuebound100.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 11:25:07,271 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 11:25:07,281 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 11:25:07,339 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 11:25:07,339 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 11:25:07,340 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 11:25:07,342 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 11:25:07,343 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 11:25:07,345 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 11:25:07,346 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 11:25:07,347 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 11:25:07,352 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 11:25:07,353 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 11:25:07,358 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 11:25:07,359 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 11:25:07,361 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 11:25:07,362 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 11:25:07,363 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 11:25:07,364 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 11:25:07,365 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 11:25:07,366 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 11:25:07,369 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 11:25:07,370 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 11:25:07,371 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 11:25:07,372 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 11:25:07,379 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 11:25:07,380 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 11:25:07,380 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 11:25:07,381 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 11:25:07,381 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 11:25:07,382 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 11:25:07,382 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 11:25:07,382 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 11:25:07,383 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 11:25:07,383 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 11:25:07,384 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 11:25:07,384 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 11:25:07,385 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 11:25:07,385 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 11:25:07,385 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 11:25:07,386 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 11:25:07,392 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 11:25:07,393 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-08 11:25:07,402 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 11:25:07,402 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 11:25:07,404 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 11:25:07,404 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 11:25:07,404 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 11:25:07,404 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 11:25:07,404 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 11:25:07,404 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 11:25:07,405 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 11:25:07,405 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 11:25:07,405 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 11:25:07,406 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 11:25:07,406 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 11:25:07,406 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 11:25:07,406 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 11:25:07,406 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 11:25:07,406 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 11:25:07,406 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 11:25:07,406 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 11:25:07,406 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 11:25:07,407 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 11:25:07,407 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-08 11:25:07,407 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-08 11:25:07,627 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 11:25:07,651 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 11:25:07,653 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 11:25:07,654 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 11:25:07,655 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 11:25:07,656 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound100.c [2022-04-08 11:25:07,713 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a830dc1ee/cffa90b9475a4e87af71d2dc3b5a1b19/FLAG16ca14690 [2022-04-08 11:25:08,145 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 11:25:08,146 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound100.c [2022-04-08 11:25:08,157 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a830dc1ee/cffa90b9475a4e87af71d2dc3b5a1b19/FLAG16ca14690 [2022-04-08 11:25:08,548 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a830dc1ee/cffa90b9475a4e87af71d2dc3b5a1b19 [2022-04-08 11:25:08,549 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 11:25:08,550 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 11:25:08,552 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 11:25:08,552 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 11:25:08,556 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 11:25:08,557 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 11:25:08" (1/1) ... [2022-04-08 11:25:08,558 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@27deb443 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08, skipping insertion in model container [2022-04-08 11:25:08,558 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 11:25:08" (1/1) ... [2022-04-08 11:25:08,564 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 11:25:08,578 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 11:25:08,737 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/cohendiv-ll_valuebound100.c[576,589] [2022-04-08 11:25:08,766 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 11:25:08,783 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 11:25:08,796 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/cohendiv-ll_valuebound100.c[576,589] [2022-04-08 11:25:08,820 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 11:25:08,831 INFO L208 MainTranslator]: Completed translation [2022-04-08 11:25:08,833 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08 WrapperNode [2022-04-08 11:25:08,833 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 11:25:08,834 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 11:25:08,834 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 11:25:08,835 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 11:25:08,844 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08" (1/1) ... [2022-04-08 11:25:08,844 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08" (1/1) ... [2022-04-08 11:25:08,851 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08" (1/1) ... [2022-04-08 11:25:08,851 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08" (1/1) ... [2022-04-08 11:25:08,865 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08" (1/1) ... [2022-04-08 11:25:08,871 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08" (1/1) ... [2022-04-08 11:25:08,876 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08" (1/1) ... [2022-04-08 11:25:08,879 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 11:25:08,880 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 11:25:08,881 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 11:25:08,881 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 11:25:08,882 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08" (1/1) ... [2022-04-08 11:25:08,888 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 11:25:08,896 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:08,908 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-08 11:25:08,933 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-08 11:25:08,950 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 11:25:08,950 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 11:25:08,951 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 11:25:08,951 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 11:25:08,951 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 11:25:08,951 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 11:25:08,952 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 11:25:08,952 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 11:25:08,952 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 11:25:08,952 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 11:25:08,952 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 11:25:08,952 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 11:25:08,952 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 11:25:08,953 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 11:25:08,953 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 11:25:08,954 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 11:25:08,954 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 11:25:08,954 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 11:25:08,954 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 11:25:08,954 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 11:25:09,017 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 11:25:09,019 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 11:25:09,236 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 11:25:09,242 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 11:25:09,242 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 11:25:09,243 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 11:25:09 BoogieIcfgContainer [2022-04-08 11:25:09,244 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 11:25:09,245 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 11:25:09,245 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 11:25:09,258 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 11:25:09,259 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 11:25:08" (1/3) ... [2022-04-08 11:25:09,259 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4a5f6555 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 11:25:09, skipping insertion in model container [2022-04-08 11:25:09,259 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:25:08" (2/3) ... [2022-04-08 11:25:09,260 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4a5f6555 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 11:25:09, skipping insertion in model container [2022-04-08 11:25:09,260 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 11:25:09" (3/3) ... [2022-04-08 11:25:09,261 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound100.c [2022-04-08 11:25:09,265 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 11:25:09,265 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 11:25:09,319 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 11:25:09,325 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-08 11:25:09,325 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 11:25:09,352 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 11:25:09,359 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 11:25:09,360 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:09,360 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:25:09,361 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:09,366 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:09,366 INFO L85 PathProgramCache]: Analyzing trace with hash -1768835633, now seen corresponding path program 1 times [2022-04-08 11:25:09,374 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:09,375 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2030120857] [2022-04-08 11:25:09,386 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:25:09,387 INFO L85 PathProgramCache]: Analyzing trace with hash -1768835633, now seen corresponding path program 2 times [2022-04-08 11:25:09,391 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:09,391 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1228675174] [2022-04-08 11:25:09,391 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:09,392 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:09,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:09,569 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 11:25:09,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:09,587 INFO L290 TraceCheckUtils]: 0: Hoare triple {59#(and (= |#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(14, 2);call #Ultimate.allocInit(12, 3); {42#true} is VALID [2022-04-08 11:25:09,587 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-08 11:25:09,587 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-08 11:25:09,588 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 11:25:09,590 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:09,595 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:25:09,596 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:25:09,596 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:25:09,597 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-08 11:25:09,597 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 11:25:09,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:09,604 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:25:09,604 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:25:09,605 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:25:09,605 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-08 11:25:09,605 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 11:25:09,607 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:09,612 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:25:09,613 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:25:09,613 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:25:09,613 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-08 11:25:09,614 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} call ULTIMATE.init(); {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 11:25:09,615 INFO L290 TraceCheckUtils]: 1: Hoare triple {59#(and (= |#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(14, 2);call #Ultimate.allocInit(12, 3); {42#true} is VALID [2022-04-08 11:25:09,615 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-08 11:25:09,615 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-08 11:25:09,615 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} call #t~ret6 := main(); {42#true} is VALID [2022-04-08 11:25:09,616 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {42#true} is VALID [2022-04-08 11:25:09,616 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {42#true} is VALID [2022-04-08 11:25:09,616 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:25:09,617 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:25:09,617 INFO L290 TraceCheckUtils]: 9: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:25:09,617 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-08 11:25:09,617 INFO L290 TraceCheckUtils]: 11: Hoare triple {43#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {43#false} is VALID [2022-04-08 11:25:09,618 INFO L272 TraceCheckUtils]: 12: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {42#true} is VALID [2022-04-08 11:25:09,618 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:25:09,618 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:25:09,618 INFO L290 TraceCheckUtils]: 15: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:25:09,619 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-08 11:25:09,619 INFO L272 TraceCheckUtils]: 17: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42#true} is VALID [2022-04-08 11:25:09,619 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:25:09,620 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:25:09,620 INFO L290 TraceCheckUtils]: 20: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:25:09,620 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-08 11:25:09,620 INFO L290 TraceCheckUtils]: 22: Hoare triple {43#false} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {43#false} is VALID [2022-04-08 11:25:09,621 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#false} assume false; {43#false} is VALID [2022-04-08 11:25:09,621 INFO L272 TraceCheckUtils]: 24: Hoare triple {43#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {43#false} is VALID [2022-04-08 11:25:09,621 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} ~cond := #in~cond; {43#false} is VALID [2022-04-08 11:25:09,621 INFO L290 TraceCheckUtils]: 26: Hoare triple {43#false} assume 0 == ~cond; {43#false} is VALID [2022-04-08 11:25:09,621 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} assume !false; {43#false} is VALID [2022-04-08 11:25:09,622 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 11:25:09,622 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:09,623 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1228675174] [2022-04-08 11:25:09,623 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1228675174] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:09,624 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:09,624 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 11:25:09,626 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:09,626 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2030120857] [2022-04-08 11:25:09,626 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2030120857] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:09,626 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:09,627 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 11:25:09,627 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [940256692] [2022-04-08 11:25:09,627 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:09,632 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-08 11:25:09,634 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:09,636 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 11:25:09,669 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:09,669 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 11:25:09,669 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:09,688 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 11:25:09,689 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 11:25:09,691 INFO L87 Difference]: Start difference. First operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 11:25:09,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:09,916 INFO L93 Difference]: Finished difference Result 71 states and 110 transitions. [2022-04-08 11:25:09,916 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 11:25:09,916 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-08 11:25:09,916 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:09,918 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 11:25:09,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-08 11:25:09,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 11:25:09,956 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-08 11:25:09,956 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-08 11:25:10,105 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:10,114 INFO L225 Difference]: With dead ends: 71 [2022-04-08 11:25:10,114 INFO L226 Difference]: Without dead ends: 34 [2022-04-08 11:25:10,117 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 11:25:10,120 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:10,121 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 41 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:25:10,134 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-08 11:25:10,149 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-08 11:25:10,149 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:10,150 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 11:25:10,151 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 11:25:10,152 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 11:25:10,157 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:10,158 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 11:25:10,158 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 11:25:10,159 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:10,159 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:10,159 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-08 11:25:10,160 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-08 11:25:10,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:10,164 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 11:25:10,164 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 11:25:10,165 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:10,165 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:10,165 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:10,166 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:10,166 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 11:25:10,170 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-08 11:25:10,174 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 28 [2022-04-08 11:25:10,174 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:10,174 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-08 11:25:10,175 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 11:25:10,175 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 43 transitions. [2022-04-08 11:25:10,225 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:10,225 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 11:25:10,226 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 11:25:10,226 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:10,227 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:25:10,227 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 11:25:10,227 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:10,228 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:10,228 INFO L85 PathProgramCache]: Analyzing trace with hash 1378913883, now seen corresponding path program 1 times [2022-04-08 11:25:10,228 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:10,228 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [340276736] [2022-04-08 11:25:10,229 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:25:10,229 INFO L85 PathProgramCache]: Analyzing trace with hash 1378913883, now seen corresponding path program 2 times [2022-04-08 11:25:10,230 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:10,230 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [213874225] [2022-04-08 11:25:10,230 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:10,230 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:10,253 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:25:10,254 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1199395040] [2022-04-08 11:25:10,254 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:25:10,254 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:10,255 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:10,256 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:25:10,262 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-08 11:25:10,313 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 11:25:10,314 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:25:10,316 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:25:10,337 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:10,345 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:10,571 INFO L272 TraceCheckUtils]: 0: Hoare triple {340#true} call ULTIMATE.init(); {340#true} is VALID [2022-04-08 11:25:10,572 INFO L290 TraceCheckUtils]: 1: Hoare triple {340#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(14, 2);call #Ultimate.allocInit(12, 3); {340#true} is VALID [2022-04-08 11:25:10,573 INFO L290 TraceCheckUtils]: 2: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-08 11:25:10,573 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {340#true} {340#true} #98#return; {340#true} is VALID [2022-04-08 11:25:10,573 INFO L272 TraceCheckUtils]: 4: Hoare triple {340#true} call #t~ret6 := main(); {340#true} is VALID [2022-04-08 11:25:10,577 INFO L290 TraceCheckUtils]: 5: Hoare triple {340#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {340#true} is VALID [2022-04-08 11:25:10,577 INFO L272 TraceCheckUtils]: 6: Hoare triple {340#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {340#true} is VALID [2022-04-08 11:25:10,578 INFO L290 TraceCheckUtils]: 7: Hoare triple {340#true} ~cond := #in~cond; {340#true} is VALID [2022-04-08 11:25:10,578 INFO L290 TraceCheckUtils]: 8: Hoare triple {340#true} assume !(0 == ~cond); {340#true} is VALID [2022-04-08 11:25:10,578 INFO L290 TraceCheckUtils]: 9: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-08 11:25:10,578 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {340#true} {340#true} #78#return; {340#true} is VALID [2022-04-08 11:25:10,579 INFO L290 TraceCheckUtils]: 11: Hoare triple {340#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {340#true} is VALID [2022-04-08 11:25:10,579 INFO L272 TraceCheckUtils]: 12: Hoare triple {340#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {340#true} is VALID [2022-04-08 11:25:10,579 INFO L290 TraceCheckUtils]: 13: Hoare triple {340#true} ~cond := #in~cond; {340#true} is VALID [2022-04-08 11:25:10,579 INFO L290 TraceCheckUtils]: 14: Hoare triple {340#true} assume !(0 == ~cond); {340#true} is VALID [2022-04-08 11:25:10,579 INFO L290 TraceCheckUtils]: 15: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-08 11:25:10,580 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {340#true} {340#true} #80#return; {340#true} is VALID [2022-04-08 11:25:10,580 INFO L272 TraceCheckUtils]: 17: Hoare triple {340#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {340#true} is VALID [2022-04-08 11:25:10,580 INFO L290 TraceCheckUtils]: 18: Hoare triple {340#true} ~cond := #in~cond; {340#true} is VALID [2022-04-08 11:25:10,580 INFO L290 TraceCheckUtils]: 19: Hoare triple {340#true} assume !(0 == ~cond); {340#true} is VALID [2022-04-08 11:25:10,581 INFO L290 TraceCheckUtils]: 20: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-08 11:25:10,581 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {340#true} {340#true} #82#return; {340#true} is VALID [2022-04-08 11:25:10,584 INFO L290 TraceCheckUtils]: 22: Hoare triple {340#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {411#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-08 11:25:10,585 INFO L290 TraceCheckUtils]: 23: Hoare triple {411#(and (= main_~a~0 0) (= main_~b~0 0))} assume !false; {411#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-08 11:25:10,587 INFO L272 TraceCheckUtils]: 24: Hoare triple {411#(and (= main_~a~0 0) (= main_~b~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {418#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:10,588 INFO L290 TraceCheckUtils]: 25: Hoare triple {418#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {422#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:10,589 INFO L290 TraceCheckUtils]: 26: Hoare triple {422#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {341#false} is VALID [2022-04-08 11:25:10,589 INFO L290 TraceCheckUtils]: 27: Hoare triple {341#false} assume !false; {341#false} is VALID [2022-04-08 11:25:10,589 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 11:25:10,590 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:25:10,590 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:10,591 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [213874225] [2022-04-08 11:25:10,591 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:10,591 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1199395040] [2022-04-08 11:25:10,591 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1199395040] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:10,591 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:10,592 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:25:10,593 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:10,593 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [340276736] [2022-04-08 11:25:10,593 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [340276736] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:10,593 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:10,593 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:25:10,593 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [870726370] [2022-04-08 11:25:10,594 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:10,594 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-08 11:25:10,595 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:10,595 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 11:25:10,629 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:10,629 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:25:10,629 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:10,630 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:25:10,630 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:25:10,631 INFO L87 Difference]: Start difference. First operand 34 states and 43 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 11:25:10,838 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:10,838 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-08 11:25:10,839 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:25:10,839 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-08 11:25:10,839 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:10,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 11:25:10,842 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-08 11:25:10,843 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 11:25:10,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-08 11:25:10,845 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-08 11:25:10,914 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:10,920 INFO L225 Difference]: With dead ends: 45 [2022-04-08 11:25:10,921 INFO L226 Difference]: Without dead ends: 43 [2022-04-08 11:25:10,923 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 11:25:10,928 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 149 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:10,932 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 149 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:25:10,936 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-08 11:25:10,953 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-08 11:25:10,953 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:10,954 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 11:25:10,955 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 11:25:10,957 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 11:25:10,967 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:10,967 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-08 11:25:10,967 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-08 11:25:10,971 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:10,971 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:10,972 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-08 11:25:10,972 INFO L87 Difference]: Start difference. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-08 11:25:10,975 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:10,976 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-08 11:25:10,976 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-08 11:25:10,976 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:10,976 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:10,977 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:10,977 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:10,977 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 11:25:10,980 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-08 11:25:10,980 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 28 [2022-04-08 11:25:10,980 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:10,980 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-08 11:25:10,981 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 11:25:10,981 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 49 transitions. [2022-04-08 11:25:11,032 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:11,032 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-08 11:25:11,033 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 11:25:11,033 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:11,033 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:25:11,067 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-08 11:25:11,260 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:11,260 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:11,261 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:11,261 INFO L85 PathProgramCache]: Analyzing trace with hash -1928335320, now seen corresponding path program 1 times [2022-04-08 11:25:11,261 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:11,261 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [195347040] [2022-04-08 11:25:11,262 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:25:11,262 INFO L85 PathProgramCache]: Analyzing trace with hash -1928335320, now seen corresponding path program 2 times [2022-04-08 11:25:11,262 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:11,262 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [125414647] [2022-04-08 11:25:11,262 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:11,263 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:11,290 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:25:11,290 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2047806282] [2022-04-08 11:25:11,290 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:25:11,291 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:11,291 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:11,296 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:25:11,325 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-08 11:25:11,365 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:25:11,365 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:25:11,366 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 11:25:11,387 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:11,389 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:11,707 INFO L272 TraceCheckUtils]: 0: Hoare triple {686#true} call ULTIMATE.init(); {686#true} is VALID [2022-04-08 11:25:11,708 INFO L290 TraceCheckUtils]: 1: Hoare triple {686#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(14, 2);call #Ultimate.allocInit(12, 3); {686#true} is VALID [2022-04-08 11:25:11,708 INFO L290 TraceCheckUtils]: 2: Hoare triple {686#true} assume true; {686#true} is VALID [2022-04-08 11:25:11,708 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {686#true} {686#true} #98#return; {686#true} is VALID [2022-04-08 11:25:11,708 INFO L272 TraceCheckUtils]: 4: Hoare triple {686#true} call #t~ret6 := main(); {686#true} is VALID [2022-04-08 11:25:11,708 INFO L290 TraceCheckUtils]: 5: Hoare triple {686#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {686#true} is VALID [2022-04-08 11:25:11,708 INFO L272 TraceCheckUtils]: 6: Hoare triple {686#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {686#true} is VALID [2022-04-08 11:25:11,709 INFO L290 TraceCheckUtils]: 7: Hoare triple {686#true} ~cond := #in~cond; {686#true} is VALID [2022-04-08 11:25:11,709 INFO L290 TraceCheckUtils]: 8: Hoare triple {686#true} assume !(0 == ~cond); {686#true} is VALID [2022-04-08 11:25:11,709 INFO L290 TraceCheckUtils]: 9: Hoare triple {686#true} assume true; {686#true} is VALID [2022-04-08 11:25:11,709 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {686#true} {686#true} #78#return; {686#true} is VALID [2022-04-08 11:25:11,709 INFO L290 TraceCheckUtils]: 11: Hoare triple {686#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {686#true} is VALID [2022-04-08 11:25:11,710 INFO L272 TraceCheckUtils]: 12: Hoare triple {686#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {686#true} is VALID [2022-04-08 11:25:11,710 INFO L290 TraceCheckUtils]: 13: Hoare triple {686#true} ~cond := #in~cond; {730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 11:25:11,711 INFO L290 TraceCheckUtils]: 14: Hoare triple {730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:25:11,711 INFO L290 TraceCheckUtils]: 15: Hoare triple {734#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:25:11,713 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {734#(not (= |assume_abort_if_not_#in~cond| 0))} {686#true} #80#return; {741#(and (<= 0 main_~y~0) (<= main_~y~0 100))} is VALID [2022-04-08 11:25:11,714 INFO L272 TraceCheckUtils]: 17: Hoare triple {741#(and (<= 0 main_~y~0) (<= main_~y~0 100))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {686#true} is VALID [2022-04-08 11:25:11,714 INFO L290 TraceCheckUtils]: 18: Hoare triple {686#true} ~cond := #in~cond; {730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 11:25:11,715 INFO L290 TraceCheckUtils]: 19: Hoare triple {730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:25:11,715 INFO L290 TraceCheckUtils]: 20: Hoare triple {734#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:25:11,716 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {734#(not (= |assume_abort_if_not_#in~cond| 0))} {741#(and (<= 0 main_~y~0) (<= main_~y~0 100))} #82#return; {757#(and (<= main_~y~0 100) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:11,717 INFO L290 TraceCheckUtils]: 22: Hoare triple {757#(and (<= main_~y~0 100) (<= 1 main_~y~0))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:11,717 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} assume !false; {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:11,717 INFO L272 TraceCheckUtils]: 24: Hoare triple {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {686#true} is VALID [2022-04-08 11:25:11,718 INFO L290 TraceCheckUtils]: 25: Hoare triple {686#true} ~cond := #in~cond; {686#true} is VALID [2022-04-08 11:25:11,719 INFO L290 TraceCheckUtils]: 26: Hoare triple {686#true} assume !(0 == ~cond); {686#true} is VALID [2022-04-08 11:25:11,720 INFO L290 TraceCheckUtils]: 27: Hoare triple {686#true} assume true; {686#true} is VALID [2022-04-08 11:25:11,721 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {686#true} {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} #84#return; {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:11,722 INFO L272 TraceCheckUtils]: 29: Hoare triple {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {783#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:11,725 INFO L290 TraceCheckUtils]: 30: Hoare triple {783#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {787#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:11,725 INFO L290 TraceCheckUtils]: 31: Hoare triple {787#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {687#false} is VALID [2022-04-08 11:25:11,725 INFO L290 TraceCheckUtils]: 32: Hoare triple {687#false} assume !false; {687#false} is VALID [2022-04-08 11:25:11,726 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-08 11:25:11,726 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:25:11,726 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:11,726 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [125414647] [2022-04-08 11:25:11,726 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:11,726 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2047806282] [2022-04-08 11:25:11,727 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2047806282] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:11,727 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:11,727 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 11:25:11,727 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:11,727 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [195347040] [2022-04-08 11:25:11,727 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [195347040] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:11,728 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:11,728 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 11:25:11,728 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [667220494] [2022-04-08 11:25:11,728 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:11,728 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-08 11:25:11,729 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:11,729 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 11:25:11,754 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:11,754 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 11:25:11,755 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:11,755 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 11:25:11,755 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-08 11:25:11,756 INFO L87 Difference]: Start difference. First operand 40 states and 49 transitions. Second operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 11:25:12,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:12,221 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2022-04-08 11:25:12,221 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 11:25:12,221 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-08 11:25:12,222 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:12,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 11:25:12,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-08 11:25:12,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 11:25:12,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-08 11:25:12,236 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 69 transitions. [2022-04-08 11:25:12,307 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:12,312 INFO L225 Difference]: With dead ends: 57 [2022-04-08 11:25:12,313 INFO L226 Difference]: Without dead ends: 54 [2022-04-08 11:25:12,315 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-08 11:25:12,325 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 29 mSDsluCounter, 141 mSDsCounter, 0 mSdLazyCounter, 143 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 152 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 143 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:12,325 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 180 Invalid, 152 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 143 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:25:12,326 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-08 11:25:12,371 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-08 11:25:12,371 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:12,371 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 11:25:12,372 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 11:25:12,372 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 11:25:12,376 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:12,376 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-08 11:25:12,376 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-08 11:25:12,377 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:12,377 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:12,377 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-08 11:25:12,378 INFO L87 Difference]: Start difference. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-08 11:25:12,381 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:12,381 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-08 11:25:12,381 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-08 11:25:12,382 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:12,382 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:12,382 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:12,382 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:12,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 11:25:12,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 67 transitions. [2022-04-08 11:25:12,386 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 67 transitions. Word has length 33 [2022-04-08 11:25:12,386 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:12,386 INFO L478 AbstractCegarLoop]: Abstraction has 53 states and 67 transitions. [2022-04-08 11:25:12,386 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 11:25:12,386 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 53 states and 67 transitions. [2022-04-08 11:25:12,458 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:12,459 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 67 transitions. [2022-04-08 11:25:12,459 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-08 11:25:12,459 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:12,460 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:25:12,490 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-08 11:25:12,675 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-08 11:25:12,676 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:12,676 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:12,676 INFO L85 PathProgramCache]: Analyzing trace with hash -1297647068, now seen corresponding path program 1 times [2022-04-08 11:25:12,676 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:12,676 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1984691519] [2022-04-08 11:25:12,677 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:25:12,677 INFO L85 PathProgramCache]: Analyzing trace with hash -1297647068, now seen corresponding path program 2 times [2022-04-08 11:25:12,677 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:12,677 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [93641941] [2022-04-08 11:25:12,677 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:12,677 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:12,694 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:25:12,695 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1801491777] [2022-04-08 11:25:12,695 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:25:12,695 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:12,709 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:12,710 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:25:12,733 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-08 11:25:12,763 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:25:12,763 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:25:12,764 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:25:12,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:12,776 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:12,895 INFO L272 TraceCheckUtils]: 0: Hoare triple {1125#true} call ULTIMATE.init(); {1125#true} is VALID [2022-04-08 11:25:12,896 INFO L290 TraceCheckUtils]: 1: Hoare triple {1125#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(14, 2);call #Ultimate.allocInit(12, 3); {1125#true} is VALID [2022-04-08 11:25:12,898 INFO L290 TraceCheckUtils]: 2: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:25:12,898 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1125#true} {1125#true} #98#return; {1125#true} is VALID [2022-04-08 11:25:12,898 INFO L272 TraceCheckUtils]: 4: Hoare triple {1125#true} call #t~ret6 := main(); {1125#true} is VALID [2022-04-08 11:25:12,898 INFO L290 TraceCheckUtils]: 5: Hoare triple {1125#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1125#true} is VALID [2022-04-08 11:25:12,898 INFO L272 TraceCheckUtils]: 6: Hoare triple {1125#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {1125#true} is VALID [2022-04-08 11:25:12,898 INFO L290 TraceCheckUtils]: 7: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-08 11:25:12,899 INFO L290 TraceCheckUtils]: 8: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-08 11:25:12,899 INFO L290 TraceCheckUtils]: 9: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:25:12,900 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1125#true} {1125#true} #78#return; {1125#true} is VALID [2022-04-08 11:25:12,900 INFO L290 TraceCheckUtils]: 11: Hoare triple {1125#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1125#true} is VALID [2022-04-08 11:25:12,900 INFO L272 TraceCheckUtils]: 12: Hoare triple {1125#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {1125#true} is VALID [2022-04-08 11:25:12,901 INFO L290 TraceCheckUtils]: 13: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-08 11:25:12,902 INFO L290 TraceCheckUtils]: 14: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-08 11:25:12,914 INFO L290 TraceCheckUtils]: 15: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:25:12,915 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1125#true} {1125#true} #80#return; {1125#true} is VALID [2022-04-08 11:25:12,915 INFO L272 TraceCheckUtils]: 17: Hoare triple {1125#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1125#true} is VALID [2022-04-08 11:25:12,915 INFO L290 TraceCheckUtils]: 18: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-08 11:25:12,915 INFO L290 TraceCheckUtils]: 19: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-08 11:25:12,916 INFO L290 TraceCheckUtils]: 20: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:25:12,916 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1125#true} {1125#true} #82#return; {1125#true} is VALID [2022-04-08 11:25:12,916 INFO L290 TraceCheckUtils]: 22: Hoare triple {1125#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1125#true} is VALID [2022-04-08 11:25:12,916 INFO L290 TraceCheckUtils]: 23: Hoare triple {1125#true} assume !false; {1125#true} is VALID [2022-04-08 11:25:12,916 INFO L272 TraceCheckUtils]: 24: Hoare triple {1125#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1125#true} is VALID [2022-04-08 11:25:12,916 INFO L290 TraceCheckUtils]: 25: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-08 11:25:12,916 INFO L290 TraceCheckUtils]: 26: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-08 11:25:12,917 INFO L290 TraceCheckUtils]: 27: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:25:12,917 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1125#true} {1125#true} #84#return; {1125#true} is VALID [2022-04-08 11:25:12,917 INFO L272 TraceCheckUtils]: 29: Hoare triple {1125#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1125#true} is VALID [2022-04-08 11:25:12,917 INFO L290 TraceCheckUtils]: 30: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-08 11:25:12,917 INFO L290 TraceCheckUtils]: 31: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-08 11:25:12,917 INFO L290 TraceCheckUtils]: 32: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:25:12,917 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1125#true} {1125#true} #86#return; {1125#true} is VALID [2022-04-08 11:25:12,919 INFO L290 TraceCheckUtils]: 34: Hoare triple {1125#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1232#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:25:12,919 INFO L290 TraceCheckUtils]: 35: Hoare triple {1232#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} assume !false; {1232#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:25:12,920 INFO L272 TraceCheckUtils]: 36: Hoare triple {1232#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1239#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:12,920 INFO L290 TraceCheckUtils]: 37: Hoare triple {1239#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1243#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:12,921 INFO L290 TraceCheckUtils]: 38: Hoare triple {1243#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1126#false} is VALID [2022-04-08 11:25:12,921 INFO L290 TraceCheckUtils]: 39: Hoare triple {1126#false} assume !false; {1126#false} is VALID [2022-04-08 11:25:12,921 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 11:25:12,921 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:25:12,921 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:12,921 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [93641941] [2022-04-08 11:25:12,921 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:12,922 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1801491777] [2022-04-08 11:25:12,922 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1801491777] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:12,922 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:12,922 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:25:12,922 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:12,922 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1984691519] [2022-04-08 11:25:12,922 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1984691519] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:12,922 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:12,923 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:25:12,923 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [876134804] [2022-04-08 11:25:12,923 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:12,923 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-08 11:25:12,925 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:12,925 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-08 11:25:12,949 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:12,950 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:25:12,950 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:12,951 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:25:12,951 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:25:12,952 INFO L87 Difference]: Start difference. First operand 53 states and 67 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-08 11:25:13,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:13,258 INFO L93 Difference]: Finished difference Result 79 states and 105 transitions. [2022-04-08 11:25:13,259 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:25:13,259 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-08 11:25:13,259 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:13,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-08 11:25:13,263 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2022-04-08 11:25:13,264 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-08 11:25:13,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2022-04-08 11:25:13,266 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 69 transitions. [2022-04-08 11:25:13,323 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:13,326 INFO L225 Difference]: With dead ends: 79 [2022-04-08 11:25:13,326 INFO L226 Difference]: Without dead ends: 77 [2022-04-08 11:25:13,326 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 36 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 11:25:13,327 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 64 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 65 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 64 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:13,327 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 144 Invalid, 65 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 64 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:25:13,328 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-08 11:25:13,383 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 70. [2022-04-08 11:25:13,383 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:13,384 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:13,384 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:13,385 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:13,389 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:13,389 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-08 11:25:13,389 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-08 11:25:13,390 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:13,390 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:13,390 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 77 states. [2022-04-08 11:25:13,391 INFO L87 Difference]: Start difference. First operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 77 states. [2022-04-08 11:25:13,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:13,395 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-08 11:25:13,395 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-08 11:25:13,396 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:13,396 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:13,396 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:13,396 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:13,396 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:13,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 92 transitions. [2022-04-08 11:25:13,400 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 92 transitions. Word has length 40 [2022-04-08 11:25:13,400 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:13,400 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 92 transitions. [2022-04-08 11:25:13,401 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-08 11:25:13,401 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 92 transitions. [2022-04-08 11:25:13,508 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:13,509 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 92 transitions. [2022-04-08 11:25:13,509 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-08 11:25:13,509 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:13,510 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:25:13,536 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-08 11:25:13,723 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:13,723 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:13,724 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:13,724 INFO L85 PathProgramCache]: Analyzing trace with hash -391974204, now seen corresponding path program 1 times [2022-04-08 11:25:13,724 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:13,724 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [927109171] [2022-04-08 11:25:13,725 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:25:13,725 INFO L85 PathProgramCache]: Analyzing trace with hash -391974204, now seen corresponding path program 2 times [2022-04-08 11:25:13,725 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:13,725 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [206375387] [2022-04-08 11:25:13,725 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:13,725 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:13,745 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:25:13,745 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1118044986] [2022-04-08 11:25:13,745 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:25:13,746 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:13,746 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:13,747 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:25:13,764 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-08 11:25:13,805 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:25:13,805 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:25:13,806 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:25:13,819 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:13,820 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:14,006 INFO L272 TraceCheckUtils]: 0: Hoare triple {1703#true} call ULTIMATE.init(); {1703#true} is VALID [2022-04-08 11:25:14,006 INFO L290 TraceCheckUtils]: 1: Hoare triple {1703#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(14, 2);call #Ultimate.allocInit(12, 3); {1703#true} is VALID [2022-04-08 11:25:14,006 INFO L290 TraceCheckUtils]: 2: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:25:14,006 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1703#true} {1703#true} #98#return; {1703#true} is VALID [2022-04-08 11:25:14,007 INFO L272 TraceCheckUtils]: 4: Hoare triple {1703#true} call #t~ret6 := main(); {1703#true} is VALID [2022-04-08 11:25:14,007 INFO L290 TraceCheckUtils]: 5: Hoare triple {1703#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1703#true} is VALID [2022-04-08 11:25:14,007 INFO L272 TraceCheckUtils]: 6: Hoare triple {1703#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {1703#true} is VALID [2022-04-08 11:25:14,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:25:14,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:25:14,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:25:14,007 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1703#true} {1703#true} #78#return; {1703#true} is VALID [2022-04-08 11:25:14,008 INFO L290 TraceCheckUtils]: 11: Hoare triple {1703#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1703#true} is VALID [2022-04-08 11:25:14,008 INFO L272 TraceCheckUtils]: 12: Hoare triple {1703#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {1703#true} is VALID [2022-04-08 11:25:14,008 INFO L290 TraceCheckUtils]: 13: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:25:14,008 INFO L290 TraceCheckUtils]: 14: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:25:14,008 INFO L290 TraceCheckUtils]: 15: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:25:14,008 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1703#true} {1703#true} #80#return; {1703#true} is VALID [2022-04-08 11:25:14,008 INFO L272 TraceCheckUtils]: 17: Hoare triple {1703#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1703#true} is VALID [2022-04-08 11:25:14,009 INFO L290 TraceCheckUtils]: 18: Hoare triple {1703#true} ~cond := #in~cond; {1762#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 11:25:14,009 INFO L290 TraceCheckUtils]: 19: Hoare triple {1762#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1766#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:25:14,009 INFO L290 TraceCheckUtils]: 20: Hoare triple {1766#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1766#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:25:14,010 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1766#(not (= |assume_abort_if_not_#in~cond| 0))} {1703#true} #82#return; {1773#(<= 1 main_~y~0)} is VALID [2022-04-08 11:25:14,010 INFO L290 TraceCheckUtils]: 22: Hoare triple {1773#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1773#(<= 1 main_~y~0)} is VALID [2022-04-08 11:25:14,011 INFO L290 TraceCheckUtils]: 23: Hoare triple {1773#(<= 1 main_~y~0)} assume !false; {1773#(<= 1 main_~y~0)} is VALID [2022-04-08 11:25:14,011 INFO L272 TraceCheckUtils]: 24: Hoare triple {1773#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1703#true} is VALID [2022-04-08 11:25:14,011 INFO L290 TraceCheckUtils]: 25: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:25:14,011 INFO L290 TraceCheckUtils]: 26: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:25:14,011 INFO L290 TraceCheckUtils]: 27: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:25:14,013 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1703#true} {1773#(<= 1 main_~y~0)} #84#return; {1773#(<= 1 main_~y~0)} is VALID [2022-04-08 11:25:14,013 INFO L272 TraceCheckUtils]: 29: Hoare triple {1773#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1703#true} is VALID [2022-04-08 11:25:14,013 INFO L290 TraceCheckUtils]: 30: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:25:14,013 INFO L290 TraceCheckUtils]: 31: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:25:14,013 INFO L290 TraceCheckUtils]: 32: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:25:14,014 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1703#true} {1773#(<= 1 main_~y~0)} #86#return; {1773#(<= 1 main_~y~0)} is VALID [2022-04-08 11:25:14,015 INFO L290 TraceCheckUtils]: 34: Hoare triple {1773#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1813#(<= 1 main_~r~0)} is VALID [2022-04-08 11:25:14,015 INFO L290 TraceCheckUtils]: 35: Hoare triple {1813#(<= 1 main_~r~0)} assume !false; {1813#(<= 1 main_~r~0)} is VALID [2022-04-08 11:25:14,015 INFO L272 TraceCheckUtils]: 36: Hoare triple {1813#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1703#true} is VALID [2022-04-08 11:25:14,016 INFO L290 TraceCheckUtils]: 37: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:25:14,016 INFO L290 TraceCheckUtils]: 38: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:25:14,016 INFO L290 TraceCheckUtils]: 39: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:25:14,016 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1703#true} {1813#(<= 1 main_~r~0)} #88#return; {1813#(<= 1 main_~r~0)} is VALID [2022-04-08 11:25:14,017 INFO L272 TraceCheckUtils]: 41: Hoare triple {1813#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1703#true} is VALID [2022-04-08 11:25:14,017 INFO L290 TraceCheckUtils]: 42: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:25:14,017 INFO L290 TraceCheckUtils]: 43: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:25:14,017 INFO L290 TraceCheckUtils]: 44: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:25:14,023 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1703#true} {1813#(<= 1 main_~r~0)} #90#return; {1813#(<= 1 main_~r~0)} is VALID [2022-04-08 11:25:14,024 INFO L272 TraceCheckUtils]: 46: Hoare triple {1813#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {1850#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:14,024 INFO L290 TraceCheckUtils]: 47: Hoare triple {1850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:14,025 INFO L290 TraceCheckUtils]: 48: Hoare triple {1854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1704#false} is VALID [2022-04-08 11:25:14,025 INFO L290 TraceCheckUtils]: 49: Hoare triple {1704#false} assume !false; {1704#false} is VALID [2022-04-08 11:25:14,025 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-08 11:25:14,025 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:25:14,025 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:14,025 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [206375387] [2022-04-08 11:25:14,026 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:14,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1118044986] [2022-04-08 11:25:14,026 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1118044986] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:14,026 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:14,026 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:25:14,026 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:14,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [927109171] [2022-04-08 11:25:14,026 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [927109171] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:14,026 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:14,026 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:25:14,027 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [833991940] [2022-04-08 11:25:14,027 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:14,027 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, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-08 11:25:14,027 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:14,027 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, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 11:25:14,060 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:14,060 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:25:14,061 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:14,061 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:25:14,061 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-08 11:25:14,061 INFO L87 Difference]: Start difference. First operand 70 states and 92 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, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 11:25:14,465 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:14,465 INFO L93 Difference]: Finished difference Result 76 states and 97 transitions. [2022-04-08 11:25:14,465 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 11:25:14,466 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, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-08 11:25:14,466 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:14,466 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, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 11:25:14,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-08 11:25:14,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, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 11:25:14,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-08 11:25:14,469 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-08 11:25:14,507 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:14,509 INFO L225 Difference]: With dead ends: 76 [2022-04-08 11:25:14,509 INFO L226 Difference]: Without dead ends: 74 [2022-04-08 11:25:14,510 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-08 11:25:14,510 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 16 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:14,510 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 160 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:25:14,511 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-08 11:25:14,601 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-08 11:25:14,601 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:14,602 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:14,603 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:14,603 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:14,609 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:14,609 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-08 11:25:14,609 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-08 11:25:14,610 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:14,610 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:14,612 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 74 states. [2022-04-08 11:25:14,612 INFO L87 Difference]: Start difference. First operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 74 states. [2022-04-08 11:25:14,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:14,616 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-08 11:25:14,617 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-08 11:25:14,617 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:14,618 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:14,618 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:14,618 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:14,619 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:14,623 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 95 transitions. [2022-04-08 11:25:14,623 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 95 transitions. Word has length 50 [2022-04-08 11:25:14,623 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:14,624 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 95 transitions. [2022-04-08 11:25:14,624 INFO L479 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, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 11:25:14,624 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 74 states and 95 transitions. [2022-04-08 11:25:14,726 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:14,726 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-08 11:25:14,727 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-08 11:25:14,727 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:14,727 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:25:14,754 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 11:25:14,951 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:14,952 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:14,952 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:14,952 INFO L85 PathProgramCache]: Analyzing trace with hash 991781023, now seen corresponding path program 1 times [2022-04-08 11:25:14,952 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:14,952 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1067907676] [2022-04-08 11:25:14,953 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:25:14,953 INFO L85 PathProgramCache]: Analyzing trace with hash 991781023, now seen corresponding path program 2 times [2022-04-08 11:25:14,953 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:14,953 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [705556440] [2022-04-08 11:25:14,953 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:14,954 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:14,975 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:25:14,975 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1997596724] [2022-04-08 11:25:14,976 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:25:14,976 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:14,976 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:14,984 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:25:15,020 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-08 11:25:15,046 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:25:15,046 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:25:15,047 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:25:15,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:15,067 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:15,373 INFO L272 TraceCheckUtils]: 0: Hoare triple {2314#true} call ULTIMATE.init(); {2314#true} is VALID [2022-04-08 11:25:15,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {2314#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(14, 2);call #Ultimate.allocInit(12, 3); {2314#true} is VALID [2022-04-08 11:25:15,373 INFO L290 TraceCheckUtils]: 2: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:15,373 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2314#true} {2314#true} #98#return; {2314#true} is VALID [2022-04-08 11:25:15,373 INFO L272 TraceCheckUtils]: 4: Hoare triple {2314#true} call #t~ret6 := main(); {2314#true} is VALID [2022-04-08 11:25:15,374 INFO L290 TraceCheckUtils]: 5: Hoare triple {2314#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2314#true} is VALID [2022-04-08 11:25:15,374 INFO L272 TraceCheckUtils]: 6: Hoare triple {2314#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:15,374 INFO L290 TraceCheckUtils]: 7: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:15,374 INFO L290 TraceCheckUtils]: 8: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:15,374 INFO L290 TraceCheckUtils]: 9: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:15,374 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2314#true} {2314#true} #78#return; {2314#true} is VALID [2022-04-08 11:25:15,374 INFO L290 TraceCheckUtils]: 11: Hoare triple {2314#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2314#true} is VALID [2022-04-08 11:25:15,375 INFO L272 TraceCheckUtils]: 12: Hoare triple {2314#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:15,375 INFO L290 TraceCheckUtils]: 13: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:15,375 INFO L290 TraceCheckUtils]: 14: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:15,375 INFO L290 TraceCheckUtils]: 15: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:15,375 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2314#true} {2314#true} #80#return; {2314#true} is VALID [2022-04-08 11:25:15,375 INFO L272 TraceCheckUtils]: 17: Hoare triple {2314#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:15,375 INFO L290 TraceCheckUtils]: 18: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:15,376 INFO L290 TraceCheckUtils]: 19: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:15,376 INFO L290 TraceCheckUtils]: 20: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:15,376 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2314#true} {2314#true} #82#return; {2314#true} is VALID [2022-04-08 11:25:15,376 INFO L290 TraceCheckUtils]: 22: Hoare triple {2314#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2314#true} is VALID [2022-04-08 11:25:15,376 INFO L290 TraceCheckUtils]: 23: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-08 11:25:15,376 INFO L272 TraceCheckUtils]: 24: Hoare triple {2314#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:15,376 INFO L290 TraceCheckUtils]: 25: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:15,376 INFO L290 TraceCheckUtils]: 26: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:15,377 INFO L290 TraceCheckUtils]: 27: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:15,377 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2314#true} {2314#true} #84#return; {2314#true} is VALID [2022-04-08 11:25:15,377 INFO L272 TraceCheckUtils]: 29: Hoare triple {2314#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:15,377 INFO L290 TraceCheckUtils]: 30: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:15,377 INFO L290 TraceCheckUtils]: 31: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:15,377 INFO L290 TraceCheckUtils]: 32: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:15,377 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2314#true} {2314#true} #86#return; {2314#true} is VALID [2022-04-08 11:25:15,378 INFO L290 TraceCheckUtils]: 34: Hoare triple {2314#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2314#true} is VALID [2022-04-08 11:25:15,378 INFO L290 TraceCheckUtils]: 35: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-08 11:25:15,378 INFO L272 TraceCheckUtils]: 36: Hoare triple {2314#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:15,378 INFO L290 TraceCheckUtils]: 37: Hoare triple {2314#true} ~cond := #in~cond; {2430#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:15,379 INFO L290 TraceCheckUtils]: 38: Hoare triple {2430#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:15,379 INFO L290 TraceCheckUtils]: 39: Hoare triple {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:15,380 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} {2314#true} #88#return; {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-08 11:25:15,380 INFO L272 TraceCheckUtils]: 41: Hoare triple {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:15,381 INFO L290 TraceCheckUtils]: 42: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:15,381 INFO L290 TraceCheckUtils]: 43: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:15,381 INFO L290 TraceCheckUtils]: 44: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:15,381 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2314#true} {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} #90#return; {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-08 11:25:15,382 INFO L272 TraceCheckUtils]: 46: Hoare triple {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:15,382 INFO L290 TraceCheckUtils]: 47: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:15,382 INFO L290 TraceCheckUtils]: 48: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:15,382 INFO L290 TraceCheckUtils]: 49: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:15,383 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2314#true} {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} #92#return; {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-08 11:25:15,383 INFO L290 TraceCheckUtils]: 51: Hoare triple {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {2475#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-08 11:25:15,384 INFO L272 TraceCheckUtils]: 52: Hoare triple {2475#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:15,385 INFO L290 TraceCheckUtils]: 53: Hoare triple {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2483#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:15,387 INFO L290 TraceCheckUtils]: 54: Hoare triple {2483#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2315#false} is VALID [2022-04-08 11:25:15,387 INFO L290 TraceCheckUtils]: 55: Hoare triple {2315#false} assume !false; {2315#false} is VALID [2022-04-08 11:25:15,388 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-08 11:25:15,388 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:25:23,922 INFO L290 TraceCheckUtils]: 55: Hoare triple {2315#false} assume !false; {2315#false} is VALID [2022-04-08 11:25:23,922 INFO L290 TraceCheckUtils]: 54: Hoare triple {2483#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2315#false} is VALID [2022-04-08 11:25:23,923 INFO L290 TraceCheckUtils]: 53: Hoare triple {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2483#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:23,924 INFO L272 TraceCheckUtils]: 52: Hoare triple {2475#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:23,924 INFO L290 TraceCheckUtils]: 51: Hoare triple {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} assume !!(~r~0 >= 2 * ~b~0); {2475#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-08 11:25:23,927 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2314#true} {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #92#return; {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-08 11:25:23,927 INFO L290 TraceCheckUtils]: 49: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:23,927 INFO L290 TraceCheckUtils]: 48: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:23,928 INFO L290 TraceCheckUtils]: 47: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:23,928 INFO L272 TraceCheckUtils]: 46: Hoare triple {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:23,928 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2314#true} {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #90#return; {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-08 11:25:23,928 INFO L290 TraceCheckUtils]: 44: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:23,928 INFO L290 TraceCheckUtils]: 43: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:23,929 INFO L290 TraceCheckUtils]: 42: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:23,929 INFO L272 TraceCheckUtils]: 41: Hoare triple {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:23,929 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} {2314#true} #88#return; {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-08 11:25:23,930 INFO L290 TraceCheckUtils]: 39: Hoare triple {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:23,930 INFO L290 TraceCheckUtils]: 38: Hoare triple {2545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:23,931 INFO L290 TraceCheckUtils]: 37: Hoare triple {2314#true} ~cond := #in~cond; {2545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:25:23,931 INFO L272 TraceCheckUtils]: 36: Hoare triple {2314#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:23,931 INFO L290 TraceCheckUtils]: 35: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-08 11:25:23,931 INFO L290 TraceCheckUtils]: 34: Hoare triple {2314#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2314#true} is VALID [2022-04-08 11:25:23,931 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2314#true} {2314#true} #86#return; {2314#true} is VALID [2022-04-08 11:25:23,931 INFO L290 TraceCheckUtils]: 32: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:23,931 INFO L290 TraceCheckUtils]: 31: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:23,931 INFO L290 TraceCheckUtils]: 30: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:23,931 INFO L272 TraceCheckUtils]: 29: Hoare triple {2314#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2314#true} {2314#true} #84#return; {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L290 TraceCheckUtils]: 27: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L290 TraceCheckUtils]: 26: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L290 TraceCheckUtils]: 25: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L272 TraceCheckUtils]: 24: Hoare triple {2314#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L290 TraceCheckUtils]: 23: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L290 TraceCheckUtils]: 22: Hoare triple {2314#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2314#true} {2314#true} #82#return; {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L290 TraceCheckUtils]: 20: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L290 TraceCheckUtils]: 19: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L290 TraceCheckUtils]: 18: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:23,932 INFO L272 TraceCheckUtils]: 17: Hoare triple {2314#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2314#true} {2314#true} #80#return; {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L290 TraceCheckUtils]: 15: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L290 TraceCheckUtils]: 14: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L290 TraceCheckUtils]: 13: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L272 TraceCheckUtils]: 12: Hoare triple {2314#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L290 TraceCheckUtils]: 11: Hoare triple {2314#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2314#true} {2314#true} #78#return; {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L290 TraceCheckUtils]: 9: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L290 TraceCheckUtils]: 8: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L290 TraceCheckUtils]: 7: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:25:23,933 INFO L272 TraceCheckUtils]: 6: Hoare triple {2314#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:25:23,934 INFO L290 TraceCheckUtils]: 5: Hoare triple {2314#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2314#true} is VALID [2022-04-08 11:25:23,934 INFO L272 TraceCheckUtils]: 4: Hoare triple {2314#true} call #t~ret6 := main(); {2314#true} is VALID [2022-04-08 11:25:23,934 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2314#true} {2314#true} #98#return; {2314#true} is VALID [2022-04-08 11:25:23,934 INFO L290 TraceCheckUtils]: 2: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:25:23,934 INFO L290 TraceCheckUtils]: 1: Hoare triple {2314#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(14, 2);call #Ultimate.allocInit(12, 3); {2314#true} is VALID [2022-04-08 11:25:23,934 INFO L272 TraceCheckUtils]: 0: Hoare triple {2314#true} call ULTIMATE.init(); {2314#true} is VALID [2022-04-08 11:25:23,941 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-08 11:25:23,941 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:23,941 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [705556440] [2022-04-08 11:25:23,941 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:23,941 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1997596724] [2022-04-08 11:25:23,941 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1997596724] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:25:23,942 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:25:23,942 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 11:25:23,942 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:23,942 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1067907676] [2022-04-08 11:25:23,942 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1067907676] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:23,942 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:23,942 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:25:23,943 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1418536657] [2022-04-08 11:25:23,943 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:23,944 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 56 [2022-04-08 11:25:23,945 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:23,946 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 11:25:23,977 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:23,978 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:25:23,978 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:23,978 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:25:23,978 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:25:23,978 INFO L87 Difference]: Start difference. First operand 74 states and 95 transitions. Second operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 11:25:24,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:24,443 INFO L93 Difference]: Finished difference Result 80 states and 100 transitions. [2022-04-08 11:25:24,443 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 11:25:24,443 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 56 [2022-04-08 11:25:24,443 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:24,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 11:25:24,445 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-08 11:25:24,445 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 11:25:24,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-08 11:25:24,446 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-08 11:25:24,500 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:24,503 INFO L225 Difference]: With dead ends: 80 [2022-04-08 11:25:24,503 INFO L226 Difference]: Without dead ends: 78 [2022-04-08 11:25:24,503 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 102 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-08 11:25:24,504 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 17 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 130 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 138 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 130 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:24,505 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 141 Invalid, 138 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 130 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:25:24,505 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-08 11:25:24,609 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-08 11:25:24,609 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:24,610 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:24,610 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:24,610 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:24,615 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:24,615 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-08 11:25:24,615 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-08 11:25:24,615 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:24,615 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:24,616 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 78 states. [2022-04-08 11:25:24,616 INFO L87 Difference]: Start difference. First operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 78 states. [2022-04-08 11:25:24,619 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:24,620 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-08 11:25:24,620 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-08 11:25:24,620 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:24,620 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:24,620 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:24,620 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:24,621 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 11:25:24,623 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 98 transitions. [2022-04-08 11:25:24,624 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 98 transitions. Word has length 56 [2022-04-08 11:25:24,624 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:24,624 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 98 transitions. [2022-04-08 11:25:24,624 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 11:25:24,624 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 78 states and 98 transitions. [2022-04-08 11:25:24,743 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:24,743 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-08 11:25:24,744 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-08 11:25:24,744 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:24,744 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 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, 1, 1, 1, 1, 1] [2022-04-08 11:25:24,767 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-08 11:25:24,967 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:24,968 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:24,968 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:24,968 INFO L85 PathProgramCache]: Analyzing trace with hash -2096667334, now seen corresponding path program 1 times [2022-04-08 11:25:24,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:24,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [823054234] [2022-04-08 11:25:24,969 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:25:24,969 INFO L85 PathProgramCache]: Analyzing trace with hash -2096667334, now seen corresponding path program 2 times [2022-04-08 11:25:24,969 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:24,969 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1621224671] [2022-04-08 11:25:24,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:24,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:24,986 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:25:24,986 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [344339100] [2022-04-08 11:25:24,986 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:25:24,986 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:24,987 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:24,987 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:25:25,014 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-08 11:25:25,048 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:25:25,048 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:25:25,049 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 11:25:25,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:25,067 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:25,404 INFO L272 TraceCheckUtils]: 0: Hoare triple {3137#true} call ULTIMATE.init(); {3137#true} is VALID [2022-04-08 11:25:25,404 INFO L290 TraceCheckUtils]: 1: Hoare triple {3137#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(14, 2);call #Ultimate.allocInit(12, 3); {3137#true} is VALID [2022-04-08 11:25:25,404 INFO L290 TraceCheckUtils]: 2: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:25,405 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3137#true} {3137#true} #98#return; {3137#true} is VALID [2022-04-08 11:25:25,405 INFO L272 TraceCheckUtils]: 4: Hoare triple {3137#true} call #t~ret6 := main(); {3137#true} is VALID [2022-04-08 11:25:25,405 INFO L290 TraceCheckUtils]: 5: Hoare triple {3137#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3137#true} is VALID [2022-04-08 11:25:25,405 INFO L272 TraceCheckUtils]: 6: Hoare triple {3137#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:25,405 INFO L290 TraceCheckUtils]: 7: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:25,405 INFO L290 TraceCheckUtils]: 8: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:25,405 INFO L290 TraceCheckUtils]: 9: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:25,405 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3137#true} {3137#true} #78#return; {3137#true} is VALID [2022-04-08 11:25:25,405 INFO L290 TraceCheckUtils]: 11: Hoare triple {3137#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3137#true} is VALID [2022-04-08 11:25:25,406 INFO L272 TraceCheckUtils]: 12: Hoare triple {3137#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:25,406 INFO L290 TraceCheckUtils]: 13: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:25,406 INFO L290 TraceCheckUtils]: 14: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:25,406 INFO L290 TraceCheckUtils]: 15: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:25,406 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3137#true} {3137#true} #80#return; {3137#true} is VALID [2022-04-08 11:25:25,406 INFO L272 TraceCheckUtils]: 17: Hoare triple {3137#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:25,406 INFO L290 TraceCheckUtils]: 18: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:25,406 INFO L290 TraceCheckUtils]: 19: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:25,406 INFO L290 TraceCheckUtils]: 20: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:25,407 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3137#true} {3137#true} #82#return; {3137#true} is VALID [2022-04-08 11:25:25,410 INFO L290 TraceCheckUtils]: 22: Hoare triple {3137#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:25,410 INFO L290 TraceCheckUtils]: 23: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !false; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:25,410 INFO L272 TraceCheckUtils]: 24: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:25,411 INFO L290 TraceCheckUtils]: 25: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:25,411 INFO L290 TraceCheckUtils]: 26: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:25,411 INFO L290 TraceCheckUtils]: 27: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:25,412 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3137#true} {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #84#return; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:25,412 INFO L272 TraceCheckUtils]: 29: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:25,412 INFO L290 TraceCheckUtils]: 30: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:25,412 INFO L290 TraceCheckUtils]: 31: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:25,412 INFO L290 TraceCheckUtils]: 32: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:25,413 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3137#true} {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #86#return; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:25,413 INFO L290 TraceCheckUtils]: 34: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:25,414 INFO L290 TraceCheckUtils]: 35: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:25,414 INFO L272 TraceCheckUtils]: 36: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:25,414 INFO L290 TraceCheckUtils]: 37: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:25,414 INFO L290 TraceCheckUtils]: 38: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:25,414 INFO L290 TraceCheckUtils]: 39: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:25,415 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {3137#true} {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #88#return; {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:25,415 INFO L272 TraceCheckUtils]: 41: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:25,415 INFO L290 TraceCheckUtils]: 42: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:25,415 INFO L290 TraceCheckUtils]: 43: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:25,415 INFO L290 TraceCheckUtils]: 44: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:25,416 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3137#true} {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #90#return; {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:25,416 INFO L272 TraceCheckUtils]: 46: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:25,416 INFO L290 TraceCheckUtils]: 47: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:25,416 INFO L290 TraceCheckUtils]: 48: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:25,416 INFO L290 TraceCheckUtils]: 49: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:25,417 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3137#true} {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #92#return; {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:25,417 INFO L290 TraceCheckUtils]: 51: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:25,418 INFO L290 TraceCheckUtils]: 52: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-08 11:25:25,419 INFO L290 TraceCheckUtils]: 53: Hoare triple {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} assume !false; {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-08 11:25:25,419 INFO L272 TraceCheckUtils]: 54: Hoare triple {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:25,419 INFO L290 TraceCheckUtils]: 55: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:25,419 INFO L290 TraceCheckUtils]: 56: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:25,419 INFO L290 TraceCheckUtils]: 57: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:25,420 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {3137#true} {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} #84#return; {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-08 11:25:25,421 INFO L272 TraceCheckUtils]: 59: Hoare triple {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3322#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:25,422 INFO L290 TraceCheckUtils]: 60: Hoare triple {3322#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3326#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:25,422 INFO L290 TraceCheckUtils]: 61: Hoare triple {3326#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3138#false} is VALID [2022-04-08 11:25:25,422 INFO L290 TraceCheckUtils]: 62: Hoare triple {3138#false} assume !false; {3138#false} is VALID [2022-04-08 11:25:25,422 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 3 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-08 11:25:25,423 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:25:42,760 INFO L290 TraceCheckUtils]: 62: Hoare triple {3138#false} assume !false; {3138#false} is VALID [2022-04-08 11:25:42,760 INFO L290 TraceCheckUtils]: 61: Hoare triple {3326#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3138#false} is VALID [2022-04-08 11:25:42,760 INFO L290 TraceCheckUtils]: 60: Hoare triple {3322#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3326#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:42,761 INFO L272 TraceCheckUtils]: 59: Hoare triple {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3322#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:42,762 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {3137#true} {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #84#return; {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:42,763 INFO L290 TraceCheckUtils]: 57: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:42,763 INFO L290 TraceCheckUtils]: 56: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:42,763 INFO L290 TraceCheckUtils]: 55: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:42,763 INFO L272 TraceCheckUtils]: 54: Hoare triple {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:42,768 INFO L290 TraceCheckUtils]: 53: Hoare triple {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !false; {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:42,775 INFO L290 TraceCheckUtils]: 52: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:42,776 INFO L290 TraceCheckUtils]: 51: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(~r~0 >= 2 * ~b~0); {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:42,776 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3137#true} {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #92#return; {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:42,776 INFO L290 TraceCheckUtils]: 49: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:42,776 INFO L290 TraceCheckUtils]: 48: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:42,777 INFO L290 TraceCheckUtils]: 47: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:42,777 INFO L272 TraceCheckUtils]: 46: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:42,783 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3137#true} {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #90#return; {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:42,783 INFO L290 TraceCheckUtils]: 44: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:42,783 INFO L290 TraceCheckUtils]: 43: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:42,783 INFO L290 TraceCheckUtils]: 42: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:42,784 INFO L272 TraceCheckUtils]: 41: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:42,784 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {3137#true} {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #88#return; {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:42,784 INFO L290 TraceCheckUtils]: 39: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:42,784 INFO L290 TraceCheckUtils]: 38: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:42,784 INFO L290 TraceCheckUtils]: 37: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:42,785 INFO L272 TraceCheckUtils]: 36: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:42,785 INFO L290 TraceCheckUtils]: 35: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !false; {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:42,786 INFO L290 TraceCheckUtils]: 34: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:42,786 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3137#true} {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #86#return; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:42,786 INFO L290 TraceCheckUtils]: 32: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:42,786 INFO L290 TraceCheckUtils]: 31: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:42,786 INFO L290 TraceCheckUtils]: 30: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:42,787 INFO L272 TraceCheckUtils]: 29: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:42,787 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3137#true} {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #84#return; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:42,787 INFO L290 TraceCheckUtils]: 27: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:42,788 INFO L290 TraceCheckUtils]: 26: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:42,788 INFO L290 TraceCheckUtils]: 25: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:42,788 INFO L272 TraceCheckUtils]: 24: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:42,788 INFO L290 TraceCheckUtils]: 23: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !false; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:42,789 INFO L290 TraceCheckUtils]: 22: Hoare triple {3137#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:42,789 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3137#true} {3137#true} #82#return; {3137#true} is VALID [2022-04-08 11:25:42,789 INFO L290 TraceCheckUtils]: 20: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:42,789 INFO L290 TraceCheckUtils]: 19: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:42,789 INFO L290 TraceCheckUtils]: 18: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:42,789 INFO L272 TraceCheckUtils]: 17: Hoare triple {3137#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:42,789 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3137#true} {3137#true} #80#return; {3137#true} is VALID [2022-04-08 11:25:42,789 INFO L290 TraceCheckUtils]: 15: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:42,790 INFO L290 TraceCheckUtils]: 14: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:42,790 INFO L290 TraceCheckUtils]: 13: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:42,790 INFO L272 TraceCheckUtils]: 12: Hoare triple {3137#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:42,790 INFO L290 TraceCheckUtils]: 11: Hoare triple {3137#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3137#true} is VALID [2022-04-08 11:25:42,790 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3137#true} {3137#true} #78#return; {3137#true} is VALID [2022-04-08 11:25:42,790 INFO L290 TraceCheckUtils]: 9: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:42,790 INFO L290 TraceCheckUtils]: 8: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:25:42,790 INFO L290 TraceCheckUtils]: 7: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:25:42,790 INFO L272 TraceCheckUtils]: 6: Hoare triple {3137#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:25:42,791 INFO L290 TraceCheckUtils]: 5: Hoare triple {3137#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3137#true} is VALID [2022-04-08 11:25:42,791 INFO L272 TraceCheckUtils]: 4: Hoare triple {3137#true} call #t~ret6 := main(); {3137#true} is VALID [2022-04-08 11:25:42,791 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3137#true} {3137#true} #98#return; {3137#true} is VALID [2022-04-08 11:25:42,791 INFO L290 TraceCheckUtils]: 2: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:25:42,791 INFO L290 TraceCheckUtils]: 1: Hoare triple {3137#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(14, 2);call #Ultimate.allocInit(12, 3); {3137#true} is VALID [2022-04-08 11:25:42,791 INFO L272 TraceCheckUtils]: 0: Hoare triple {3137#true} call ULTIMATE.init(); {3137#true} is VALID [2022-04-08 11:25:42,792 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 3 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-08 11:25:42,792 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:42,792 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1621224671] [2022-04-08 11:25:42,792 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:42,793 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [344339100] [2022-04-08 11:25:42,793 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [344339100] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:25:42,793 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:25:42,793 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-04-08 11:25:42,793 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:42,793 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [823054234] [2022-04-08 11:25:42,793 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [823054234] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:42,793 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:42,793 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 11:25:42,793 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1822001204] [2022-04-08 11:25:42,793 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:42,794 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, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-08 11:25:42,794 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:42,794 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, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 11:25:42,830 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:42,830 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 11:25:42,830 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:42,831 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 11:25:42,831 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-08 11:25:42,832 INFO L87 Difference]: Start difference. First operand 78 states and 98 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, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 11:25:43,512 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:43,512 INFO L93 Difference]: Finished difference Result 111 states and 142 transitions. [2022-04-08 11:25:43,513 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 11:25:43,513 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, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-08 11:25:43,513 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:43,513 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, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 11:25:43,515 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 101 transitions. [2022-04-08 11:25:43,516 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, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 11:25:43,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 101 transitions. [2022-04-08 11:25:43,518 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 101 transitions. [2022-04-08 11:25:43,615 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:43,617 INFO L225 Difference]: With dead ends: 111 [2022-04-08 11:25:43,617 INFO L226 Difference]: Without dead ends: 108 [2022-04-08 11:25:43,618 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 116 SyntacticMatches, 2 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:25:43,618 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 19 mSDsluCounter, 165 mSDsCounter, 0 mSdLazyCounter, 186 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 222 SdHoareTripleChecker+Invalid, 196 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 186 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:43,619 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 222 Invalid, 196 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 186 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 11:25:43,619 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 108 states. [2022-04-08 11:25:43,746 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 108 to 103. [2022-04-08 11:25:43,746 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:43,747 INFO L82 GeneralOperation]: Start isEquivalent. First operand 108 states. Second operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-08 11:25:43,747 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-08 11:25:43,747 INFO L87 Difference]: Start difference. First operand 108 states. Second operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-08 11:25:43,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:43,751 INFO L93 Difference]: Finished difference Result 108 states and 138 transitions. [2022-04-08 11:25:43,751 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 138 transitions. [2022-04-08 11:25:43,752 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:43,752 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:43,752 INFO L74 IsIncluded]: Start isIncluded. First operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) Second operand 108 states. [2022-04-08 11:25:43,753 INFO L87 Difference]: Start difference. First operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) Second operand 108 states. [2022-04-08 11:25:43,756 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:43,757 INFO L93 Difference]: Finished difference Result 108 states and 138 transitions. [2022-04-08 11:25:43,757 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 138 transitions. [2022-04-08 11:25:43,757 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:43,757 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:43,757 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:43,758 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:43,758 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-08 11:25:43,762 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 132 transitions. [2022-04-08 11:25:43,762 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 132 transitions. Word has length 63 [2022-04-08 11:25:43,762 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:43,762 INFO L478 AbstractCegarLoop]: Abstraction has 103 states and 132 transitions. [2022-04-08 11:25:43,762 INFO L479 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, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 11:25:43,763 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 103 states and 132 transitions. [2022-04-08 11:25:43,920 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:43,921 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 132 transitions. [2022-04-08 11:25:43,921 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-08 11:25:43,921 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:43,922 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:25:43,938 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-08 11:25:44,123 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:44,124 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:44,124 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:44,124 INFO L85 PathProgramCache]: Analyzing trace with hash -2105983492, now seen corresponding path program 1 times [2022-04-08 11:25:44,124 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:44,124 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2083412321] [2022-04-08 11:25:44,125 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:25:44,125 INFO L85 PathProgramCache]: Analyzing trace with hash -2105983492, now seen corresponding path program 2 times [2022-04-08 11:25:44,125 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:44,125 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [84008986] [2022-04-08 11:25:44,125 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:44,126 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:44,148 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:25:44,148 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1286910964] [2022-04-08 11:25:44,148 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:25:44,148 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:44,148 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:44,149 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:25:44,150 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-08 11:25:44,207 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:25:44,207 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:25:44,208 INFO L263 TraceCheckSpWp]: Trace formula consists of 200 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-08 11:25:44,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:44,240 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:45,245 INFO L272 TraceCheckUtils]: 0: Hoare triple {4169#true} call ULTIMATE.init(); {4169#true} is VALID [2022-04-08 11:25:45,246 INFO L290 TraceCheckUtils]: 1: Hoare triple {4169#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(14, 2);call #Ultimate.allocInit(12, 3); {4169#true} is VALID [2022-04-08 11:25:45,246 INFO L290 TraceCheckUtils]: 2: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,246 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4169#true} {4169#true} #98#return; {4169#true} is VALID [2022-04-08 11:25:45,246 INFO L272 TraceCheckUtils]: 4: Hoare triple {4169#true} call #t~ret6 := main(); {4169#true} is VALID [2022-04-08 11:25:45,246 INFO L290 TraceCheckUtils]: 5: Hoare triple {4169#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4169#true} is VALID [2022-04-08 11:25:45,246 INFO L272 TraceCheckUtils]: 6: Hoare triple {4169#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,246 INFO L290 TraceCheckUtils]: 7: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,246 INFO L290 TraceCheckUtils]: 8: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,246 INFO L290 TraceCheckUtils]: 9: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,246 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4169#true} {4169#true} #78#return; {4169#true} is VALID [2022-04-08 11:25:45,247 INFO L290 TraceCheckUtils]: 11: Hoare triple {4169#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4169#true} is VALID [2022-04-08 11:25:45,247 INFO L272 TraceCheckUtils]: 12: Hoare triple {4169#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,247 INFO L290 TraceCheckUtils]: 13: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,247 INFO L290 TraceCheckUtils]: 14: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,247 INFO L290 TraceCheckUtils]: 15: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,247 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4169#true} {4169#true} #80#return; {4169#true} is VALID [2022-04-08 11:25:45,247 INFO L272 TraceCheckUtils]: 17: Hoare triple {4169#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,247 INFO L290 TraceCheckUtils]: 18: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,247 INFO L290 TraceCheckUtils]: 19: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,247 INFO L290 TraceCheckUtils]: 20: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,248 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4169#true} {4169#true} #82#return; {4169#true} is VALID [2022-04-08 11:25:45,248 INFO L290 TraceCheckUtils]: 22: Hoare triple {4169#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,248 INFO L290 TraceCheckUtils]: 23: Hoare triple {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !false; {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,249 INFO L272 TraceCheckUtils]: 24: Hoare triple {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,249 INFO L290 TraceCheckUtils]: 25: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,249 INFO L290 TraceCheckUtils]: 26: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,249 INFO L290 TraceCheckUtils]: 27: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,249 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4169#true} {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #84#return; {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,250 INFO L272 TraceCheckUtils]: 29: Hoare triple {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,250 INFO L290 TraceCheckUtils]: 30: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,250 INFO L290 TraceCheckUtils]: 31: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,250 INFO L290 TraceCheckUtils]: 32: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,250 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4169#true} {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #86#return; {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,251 INFO L290 TraceCheckUtils]: 34: Hoare triple {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,251 INFO L290 TraceCheckUtils]: 35: Hoare triple {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,251 INFO L272 TraceCheckUtils]: 36: Hoare triple {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,251 INFO L290 TraceCheckUtils]: 37: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,251 INFO L290 TraceCheckUtils]: 38: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,252 INFO L290 TraceCheckUtils]: 39: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,252 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {4169#true} {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #88#return; {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,252 INFO L272 TraceCheckUtils]: 41: Hoare triple {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,252 INFO L290 TraceCheckUtils]: 42: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,252 INFO L290 TraceCheckUtils]: 43: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,252 INFO L290 TraceCheckUtils]: 44: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,253 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4169#true} {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #90#return; {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,253 INFO L272 TraceCheckUtils]: 46: Hoare triple {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,253 INFO L290 TraceCheckUtils]: 47: Hoare triple {4169#true} ~cond := #in~cond; {4317#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:45,254 INFO L290 TraceCheckUtils]: 48: Hoare triple {4317#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:45,254 INFO L290 TraceCheckUtils]: 49: Hoare triple {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:45,255 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #92#return; {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,255 INFO L290 TraceCheckUtils]: 51: Hoare triple {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,255 INFO L272 TraceCheckUtils]: 52: Hoare triple {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,255 INFO L290 TraceCheckUtils]: 53: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,256 INFO L290 TraceCheckUtils]: 54: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,256 INFO L290 TraceCheckUtils]: 55: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,256 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {4169#true} {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #94#return; {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:45,257 INFO L290 TraceCheckUtils]: 57: Hoare triple {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-08 11:25:45,257 INFO L290 TraceCheckUtils]: 58: Hoare triple {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} assume !false; {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-08 11:25:45,257 INFO L272 TraceCheckUtils]: 59: Hoare triple {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,257 INFO L290 TraceCheckUtils]: 60: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,258 INFO L290 TraceCheckUtils]: 61: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,258 INFO L290 TraceCheckUtils]: 62: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,258 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {4169#true} {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} #88#return; {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-08 11:25:45,258 INFO L272 TraceCheckUtils]: 64: Hoare triple {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,258 INFO L290 TraceCheckUtils]: 65: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,258 INFO L290 TraceCheckUtils]: 66: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,259 INFO L290 TraceCheckUtils]: 67: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,259 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {4169#true} {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} #90#return; {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-08 11:25:45,259 INFO L272 TraceCheckUtils]: 69: Hoare triple {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,259 INFO L290 TraceCheckUtils]: 70: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:45,259 INFO L290 TraceCheckUtils]: 71: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:45,260 INFO L290 TraceCheckUtils]: 72: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:45,264 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {4169#true} {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} #92#return; {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-08 11:25:45,270 INFO L290 TraceCheckUtils]: 74: Hoare triple {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} assume !(~r~0 >= 2 * ~b~0); {4402#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (< main_~r~0 (* main_~b~0 2)) (<= main_~y~0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-08 11:25:45,272 INFO L290 TraceCheckUtils]: 75: Hoare triple {4402#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (< main_~r~0 (* main_~b~0 2)) (<= main_~y~0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {4406#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (< main_~x~0 (* main_~b~0 2)) (= main_~b~0 (* main_~y~0 2)) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~a~0 2) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 11:25:45,272 INFO L290 TraceCheckUtils]: 76: Hoare triple {4406#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (< main_~x~0 (* main_~b~0 2)) (= main_~b~0 (* main_~y~0 2)) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~a~0 2) (<= main_~y~0 main_~x~0))} assume !false; {4406#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (< main_~x~0 (* main_~b~0 2)) (= main_~b~0 (* main_~y~0 2)) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~a~0 2) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 11:25:45,272 INFO L272 TraceCheckUtils]: 77: Hoare triple {4406#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (< main_~x~0 (* main_~b~0 2)) (= main_~b~0 (* main_~y~0 2)) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~a~0 2) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:45,273 INFO L290 TraceCheckUtils]: 78: Hoare triple {4169#true} ~cond := #in~cond; {4317#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:45,273 INFO L290 TraceCheckUtils]: 79: Hoare triple {4317#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:45,273 INFO L290 TraceCheckUtils]: 80: Hoare triple {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:45,274 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} {4406#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (< main_~x~0 (* main_~b~0 2)) (= main_~b~0 (* main_~y~0 2)) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~a~0 2) (<= main_~y~0 main_~x~0))} #84#return; {4425#(and (= (* main_~q~0 main_~y~0) (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-08 11:25:45,275 INFO L272 TraceCheckUtils]: 82: Hoare triple {4425#(and (= (* main_~q~0 main_~y~0) (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4429#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:45,276 INFO L290 TraceCheckUtils]: 83: Hoare triple {4429#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4433#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:45,276 INFO L290 TraceCheckUtils]: 84: Hoare triple {4433#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4170#false} is VALID [2022-04-08 11:25:45,276 INFO L290 TraceCheckUtils]: 85: Hoare triple {4170#false} assume !false; {4170#false} is VALID [2022-04-08 11:25:45,276 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 54 proven. 22 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2022-04-08 11:25:45,277 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:26:39,463 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:26:39,464 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [84008986] [2022-04-08 11:26:39,464 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:26:39,464 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1286910964] [2022-04-08 11:26:39,464 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1286910964] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 11:26:39,464 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 11:26:39,464 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2022-04-08 11:26:39,464 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:26:39,464 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2083412321] [2022-04-08 11:26:39,464 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2083412321] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:26:39,465 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:26:39,465 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 11:26:39,465 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1463585112] [2022-04-08 11:26:39,465 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:26:39,465 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) Word has length 86 [2022-04-08 11:26:39,466 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:26:39,466 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-08 11:26:39,532 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:39,532 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 11:26:39,532 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:39,533 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 11:26:39,533 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=284, Unknown=0, NotChecked=0, Total=380 [2022-04-08 11:26:39,533 INFO L87 Difference]: Start difference. First operand 103 states and 132 transitions. Second operand has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-08 11:26:41,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:41,536 INFO L93 Difference]: Finished difference Result 147 states and 191 transitions. [2022-04-08 11:26:41,536 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 11:26:41,537 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) Word has length 86 [2022-04-08 11:26:41,537 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:26:41,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-08 11:26:41,540 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 114 transitions. [2022-04-08 11:26:41,540 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-08 11:26:41,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 114 transitions. [2022-04-08 11:26:41,543 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 114 transitions. [2022-04-08 11:26:41,662 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:41,665 INFO L225 Difference]: With dead ends: 147 [2022-04-08 11:26:41,665 INFO L226 Difference]: Without dead ends: 144 [2022-04-08 11:26:41,665 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 118 SyntacticMatches, 2 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 120 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=109, Invalid=353, Unknown=0, NotChecked=0, Total=462 [2022-04-08 11:26:41,666 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 27 mSDsluCounter, 219 mSDsCounter, 0 mSdLazyCounter, 628 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 263 SdHoareTripleChecker+Invalid, 649 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 628 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-08 11:26:41,666 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 263 Invalid, 649 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 628 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-08 11:26:41,667 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states. [2022-04-08 11:26:41,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 121. [2022-04-08 11:26:41,825 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:26:41,825 INFO L82 GeneralOperation]: Start isEquivalent. First operand 144 states. Second operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:26:41,826 INFO L74 IsIncluded]: Start isIncluded. First operand 144 states. Second operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:26:41,826 INFO L87 Difference]: Start difference. First operand 144 states. Second operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:26:41,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:41,831 INFO L93 Difference]: Finished difference Result 144 states and 187 transitions. [2022-04-08 11:26:41,831 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 187 transitions. [2022-04-08 11:26:41,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:26:41,832 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:26:41,832 INFO L74 IsIncluded]: Start isIncluded. First operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) Second operand 144 states. [2022-04-08 11:26:41,833 INFO L87 Difference]: Start difference. First operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) Second operand 144 states. [2022-04-08 11:26:41,838 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:41,838 INFO L93 Difference]: Finished difference Result 144 states and 187 transitions. [2022-04-08 11:26:41,838 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 187 transitions. [2022-04-08 11:26:41,839 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:26:41,839 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:26:41,839 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:26:41,839 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:26:41,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:26:41,844 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 121 states and 154 transitions. [2022-04-08 11:26:41,844 INFO L78 Accepts]: Start accepts. Automaton has 121 states and 154 transitions. Word has length 86 [2022-04-08 11:26:41,844 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:26:41,844 INFO L478 AbstractCegarLoop]: Abstraction has 121 states and 154 transitions. [2022-04-08 11:26:41,844 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-08 11:26:41,844 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 121 states and 154 transitions. [2022-04-08 11:26:42,030 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 154 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:42,030 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 154 transitions. [2022-04-08 11:26:42,033 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2022-04-08 11:26:42,033 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:26:42,033 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:26:42,049 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-08 11:26:42,234 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:26:42,234 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:26:42,235 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:26:42,235 INFO L85 PathProgramCache]: Analyzing trace with hash -895340852, now seen corresponding path program 3 times [2022-04-08 11:26:42,235 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:42,235 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [103999071] [2022-04-08 11:26:42,235 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:26:42,236 INFO L85 PathProgramCache]: Analyzing trace with hash -895340852, now seen corresponding path program 4 times [2022-04-08 11:26:42,236 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:26:42,236 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [849692577] [2022-04-08 11:26:42,236 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:26:42,236 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:26:42,259 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:26:42,259 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [484997715] [2022-04-08 11:26:42,259 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:26:42,259 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:26:42,259 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:26:42,261 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:26:42,263 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-08 11:26:42,316 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:26:42,316 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:26:42,317 INFO L263 TraceCheckSpWp]: Trace formula consists of 176 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 11:26:42,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:26:42,334 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:26:42,563 INFO L272 TraceCheckUtils]: 0: Hoare triple {5433#true} call ULTIMATE.init(); {5433#true} is VALID [2022-04-08 11:26:42,564 INFO L290 TraceCheckUtils]: 1: Hoare triple {5433#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(14, 2);call #Ultimate.allocInit(12, 3); {5433#true} is VALID [2022-04-08 11:26:42,564 INFO L290 TraceCheckUtils]: 2: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,564 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5433#true} {5433#true} #98#return; {5433#true} is VALID [2022-04-08 11:26:42,564 INFO L272 TraceCheckUtils]: 4: Hoare triple {5433#true} call #t~ret6 := main(); {5433#true} is VALID [2022-04-08 11:26:42,564 INFO L290 TraceCheckUtils]: 5: Hoare triple {5433#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5433#true} is VALID [2022-04-08 11:26:42,564 INFO L272 TraceCheckUtils]: 6: Hoare triple {5433#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:42,564 INFO L290 TraceCheckUtils]: 7: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:42,564 INFO L290 TraceCheckUtils]: 8: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:42,564 INFO L290 TraceCheckUtils]: 9: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,564 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5433#true} {5433#true} #78#return; {5433#true} is VALID [2022-04-08 11:26:42,565 INFO L290 TraceCheckUtils]: 11: Hoare triple {5433#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5433#true} is VALID [2022-04-08 11:26:42,565 INFO L272 TraceCheckUtils]: 12: Hoare triple {5433#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:42,565 INFO L290 TraceCheckUtils]: 13: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:42,565 INFO L290 TraceCheckUtils]: 14: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:42,565 INFO L290 TraceCheckUtils]: 15: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,565 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5433#true} {5433#true} #80#return; {5433#true} is VALID [2022-04-08 11:26:42,565 INFO L272 TraceCheckUtils]: 17: Hoare triple {5433#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:42,565 INFO L290 TraceCheckUtils]: 18: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:42,565 INFO L290 TraceCheckUtils]: 19: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:42,565 INFO L290 TraceCheckUtils]: 20: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,566 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5433#true} {5433#true} #82#return; {5433#true} is VALID [2022-04-08 11:26:42,566 INFO L290 TraceCheckUtils]: 22: Hoare triple {5433#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {5433#true} is VALID [2022-04-08 11:26:42,566 INFO L290 TraceCheckUtils]: 23: Hoare triple {5433#true} assume !false; {5433#true} is VALID [2022-04-08 11:26:42,566 INFO L272 TraceCheckUtils]: 24: Hoare triple {5433#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:42,566 INFO L290 TraceCheckUtils]: 25: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:42,566 INFO L290 TraceCheckUtils]: 26: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:42,566 INFO L290 TraceCheckUtils]: 27: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,566 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5433#true} {5433#true} #84#return; {5433#true} is VALID [2022-04-08 11:26:42,566 INFO L272 TraceCheckUtils]: 29: Hoare triple {5433#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:42,567 INFO L290 TraceCheckUtils]: 30: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:42,567 INFO L290 TraceCheckUtils]: 31: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:42,567 INFO L290 TraceCheckUtils]: 32: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,567 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {5433#true} {5433#true} #86#return; {5433#true} is VALID [2022-04-08 11:26:42,567 INFO L290 TraceCheckUtils]: 34: Hoare triple {5433#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5540#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:26:42,568 INFO L290 TraceCheckUtils]: 35: Hoare triple {5540#(<= main_~b~0 main_~y~0)} assume !false; {5540#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:26:42,568 INFO L272 TraceCheckUtils]: 36: Hoare triple {5540#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:42,568 INFO L290 TraceCheckUtils]: 37: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:42,568 INFO L290 TraceCheckUtils]: 38: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:42,568 INFO L290 TraceCheckUtils]: 39: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,568 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {5433#true} {5540#(<= main_~b~0 main_~y~0)} #88#return; {5540#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:26:42,569 INFO L272 TraceCheckUtils]: 41: Hoare triple {5540#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:42,569 INFO L290 TraceCheckUtils]: 42: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:42,569 INFO L290 TraceCheckUtils]: 43: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:42,569 INFO L290 TraceCheckUtils]: 44: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,569 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5433#true} {5540#(<= main_~b~0 main_~y~0)} #90#return; {5540#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:26:42,570 INFO L272 TraceCheckUtils]: 46: Hoare triple {5540#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:42,570 INFO L290 TraceCheckUtils]: 47: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:42,570 INFO L290 TraceCheckUtils]: 48: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:42,570 INFO L290 TraceCheckUtils]: 49: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,570 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5433#true} {5540#(<= main_~b~0 main_~y~0)} #92#return; {5540#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:26:42,571 INFO L290 TraceCheckUtils]: 51: Hoare triple {5540#(<= main_~b~0 main_~y~0)} assume !(~r~0 >= 2 * ~b~0); {5592#(and (not (<= (* main_~b~0 2) main_~r~0)) (<= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:26:42,571 INFO L290 TraceCheckUtils]: 52: Hoare triple {5592#(and (not (<= (* main_~b~0 2) main_~r~0)) (<= main_~b~0 main_~y~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {5596#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:26:42,572 INFO L290 TraceCheckUtils]: 53: Hoare triple {5596#(< main_~r~0 main_~y~0)} assume !false; {5596#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:26:42,572 INFO L272 TraceCheckUtils]: 54: Hoare triple {5596#(< main_~r~0 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:42,572 INFO L290 TraceCheckUtils]: 55: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:42,572 INFO L290 TraceCheckUtils]: 56: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:42,572 INFO L290 TraceCheckUtils]: 57: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,573 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {5433#true} {5596#(< main_~r~0 main_~y~0)} #84#return; {5596#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:26:42,573 INFO L272 TraceCheckUtils]: 59: Hoare triple {5596#(< main_~r~0 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:42,573 INFO L290 TraceCheckUtils]: 60: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:42,573 INFO L290 TraceCheckUtils]: 61: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:42,573 INFO L290 TraceCheckUtils]: 62: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:42,573 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {5433#true} {5596#(< main_~r~0 main_~y~0)} #86#return; {5596#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:26:42,574 INFO L290 TraceCheckUtils]: 64: Hoare triple {5596#(< main_~r~0 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5434#false} is VALID [2022-04-08 11:26:42,574 INFO L290 TraceCheckUtils]: 65: Hoare triple {5434#false} assume !false; {5434#false} is VALID [2022-04-08 11:26:42,574 INFO L272 TraceCheckUtils]: 66: Hoare triple {5434#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5434#false} is VALID [2022-04-08 11:26:42,574 INFO L290 TraceCheckUtils]: 67: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-08 11:26:42,574 INFO L290 TraceCheckUtils]: 68: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-08 11:26:42,574 INFO L290 TraceCheckUtils]: 69: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-08 11:26:42,574 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {5434#false} {5434#false} #88#return; {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L272 TraceCheckUtils]: 71: Hoare triple {5434#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L290 TraceCheckUtils]: 72: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L290 TraceCheckUtils]: 73: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L290 TraceCheckUtils]: 74: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {5434#false} {5434#false} #90#return; {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L272 TraceCheckUtils]: 76: Hoare triple {5434#false} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L290 TraceCheckUtils]: 77: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L290 TraceCheckUtils]: 78: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L290 TraceCheckUtils]: 79: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {5434#false} {5434#false} #92#return; {5434#false} is VALID [2022-04-08 11:26:42,575 INFO L290 TraceCheckUtils]: 81: Hoare triple {5434#false} assume !(~r~0 >= 2 * ~b~0); {5434#false} is VALID [2022-04-08 11:26:42,576 INFO L290 TraceCheckUtils]: 82: Hoare triple {5434#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {5434#false} is VALID [2022-04-08 11:26:42,576 INFO L290 TraceCheckUtils]: 83: Hoare triple {5434#false} assume !false; {5434#false} is VALID [2022-04-08 11:26:42,576 INFO L272 TraceCheckUtils]: 84: Hoare triple {5434#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5434#false} is VALID [2022-04-08 11:26:42,576 INFO L290 TraceCheckUtils]: 85: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-08 11:26:42,576 INFO L290 TraceCheckUtils]: 86: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-08 11:26:42,576 INFO L290 TraceCheckUtils]: 87: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-08 11:26:42,576 INFO L284 TraceCheckUtils]: 88: Hoare quadruple {5434#false} {5434#false} #84#return; {5434#false} is VALID [2022-04-08 11:26:42,576 INFO L272 TraceCheckUtils]: 89: Hoare triple {5434#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5434#false} is VALID [2022-04-08 11:26:42,576 INFO L290 TraceCheckUtils]: 90: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-08 11:26:42,576 INFO L290 TraceCheckUtils]: 91: Hoare triple {5434#false} assume 0 == ~cond; {5434#false} is VALID [2022-04-08 11:26:42,577 INFO L290 TraceCheckUtils]: 92: Hoare triple {5434#false} assume !false; {5434#false} is VALID [2022-04-08 11:26:42,578 INFO L134 CoverageAnalysis]: Checked inductivity of 270 backedges. 142 proven. 0 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2022-04-08 11:26:42,578 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:26:42,578 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:26:42,578 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [849692577] [2022-04-08 11:26:42,578 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:26:42,578 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [484997715] [2022-04-08 11:26:42,579 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [484997715] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:26:42,579 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:26:42,579 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:26:42,581 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:26:42,581 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [103999071] [2022-04-08 11:26:42,581 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [103999071] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:26:42,581 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:26:42,582 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:26:42,582 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [646581541] [2022-04-08 11:26:42,582 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:26:42,582 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) Word has length 93 [2022-04-08 11:26:42,582 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:26:42,582 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-08 11:26:42,625 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:42,625 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:26:42,625 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:42,626 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:26:42,626 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:26:42,626 INFO L87 Difference]: Start difference. First operand 121 states and 154 transitions. Second operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-08 11:26:43,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:43,079 INFO L93 Difference]: Finished difference Result 185 states and 240 transitions. [2022-04-08 11:26:43,079 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 11:26:43,079 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) Word has length 93 [2022-04-08 11:26:43,079 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:26:43,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-08 11:26:43,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2022-04-08 11:26:43,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-08 11:26:43,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2022-04-08 11:26:43,087 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 90 transitions. [2022-04-08 11:26:43,163 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-08 11:26:43,166 INFO L225 Difference]: With dead ends: 185 [2022-04-08 11:26:43,166 INFO L226 Difference]: Without dead ends: 125 [2022-04-08 11:26:43,166 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 90 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-08 11:26:43,167 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 4 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 76 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 80 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 76 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:26:43,167 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 126 Invalid, 80 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 76 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:26:43,169 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 125 states. [2022-04-08 11:26:43,376 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 125 to 120. [2022-04-08 11:26:43,377 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:26:43,377 INFO L82 GeneralOperation]: Start isEquivalent. First operand 125 states. Second operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:26:43,377 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:26:43,378 INFO L87 Difference]: Start difference. First operand 125 states. Second operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:26:43,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:43,382 INFO L93 Difference]: Finished difference Result 125 states and 159 transitions. [2022-04-08 11:26:43,382 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 159 transitions. [2022-04-08 11:26:43,382 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:26:43,383 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:26:43,383 INFO L74 IsIncluded]: Start isIncluded. First operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 125 states. [2022-04-08 11:26:43,383 INFO L87 Difference]: Start difference. First operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 125 states. [2022-04-08 11:26:43,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:43,387 INFO L93 Difference]: Finished difference Result 125 states and 159 transitions. [2022-04-08 11:26:43,387 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 159 transitions. [2022-04-08 11:26:43,393 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:26:43,393 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:26:43,393 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:26:43,393 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:26:43,394 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:26:43,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 152 transitions. [2022-04-08 11:26:43,400 INFO L78 Accepts]: Start accepts. Automaton has 120 states and 152 transitions. Word has length 93 [2022-04-08 11:26:43,400 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:26:43,400 INFO L478 AbstractCegarLoop]: Abstraction has 120 states and 152 transitions. [2022-04-08 11:26:43,400 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-08 11:26:43,400 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 120 states and 152 transitions. [2022-04-08 11:26:43,596 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:43,596 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 152 transitions. [2022-04-08 11:26:43,599 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2022-04-08 11:26:43,600 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:26:43,600 INFO L499 BasicCegarLoop]: trace histogram [15, 14, 14, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:26:43,618 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-08 11:26:43,803 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-08 11:26:43,804 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:26:43,804 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:26:43,804 INFO L85 PathProgramCache]: Analyzing trace with hash -39671046, now seen corresponding path program 3 times [2022-04-08 11:26:43,804 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:43,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [337401728] [2022-04-08 11:26:43,805 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:26:43,805 INFO L85 PathProgramCache]: Analyzing trace with hash -39671046, now seen corresponding path program 4 times [2022-04-08 11:26:43,805 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:26:43,805 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1081143625] [2022-04-08 11:26:43,805 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:26:43,805 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:26:43,818 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:26:43,819 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [269215962] [2022-04-08 11:26:43,819 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:26:43,819 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:26:43,819 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:26:43,820 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:26:43,821 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-08 11:26:43,871 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:26:43,871 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:26:43,872 INFO L263 TraceCheckSpWp]: Trace formula consists of 203 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-08 11:26:43,891 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:26:43,894 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:27:52,852 INFO L272 TraceCheckUtils]: 0: Hoare triple {6579#true} call ULTIMATE.init(); {6579#true} is VALID [2022-04-08 11:27:52,852 INFO L290 TraceCheckUtils]: 1: Hoare triple {6579#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(14, 2);call #Ultimate.allocInit(12, 3); {6579#true} is VALID [2022-04-08 11:27:52,852 INFO L290 TraceCheckUtils]: 2: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,852 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6579#true} {6579#true} #98#return; {6579#true} is VALID [2022-04-08 11:27:52,853 INFO L272 TraceCheckUtils]: 4: Hoare triple {6579#true} call #t~ret6 := main(); {6579#true} is VALID [2022-04-08 11:27:52,853 INFO L290 TraceCheckUtils]: 5: Hoare triple {6579#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6579#true} is VALID [2022-04-08 11:27:52,853 INFO L272 TraceCheckUtils]: 6: Hoare triple {6579#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,853 INFO L290 TraceCheckUtils]: 7: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,853 INFO L290 TraceCheckUtils]: 8: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,853 INFO L290 TraceCheckUtils]: 9: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,853 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6579#true} {6579#true} #78#return; {6579#true} is VALID [2022-04-08 11:27:52,853 INFO L290 TraceCheckUtils]: 11: Hoare triple {6579#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6579#true} is VALID [2022-04-08 11:27:52,853 INFO L272 TraceCheckUtils]: 12: Hoare triple {6579#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,853 INFO L290 TraceCheckUtils]: 13: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,854 INFO L290 TraceCheckUtils]: 14: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,854 INFO L290 TraceCheckUtils]: 15: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,854 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6579#true} {6579#true} #80#return; {6579#true} is VALID [2022-04-08 11:27:52,854 INFO L272 TraceCheckUtils]: 17: Hoare triple {6579#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,854 INFO L290 TraceCheckUtils]: 18: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,854 INFO L290 TraceCheckUtils]: 19: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,854 INFO L290 TraceCheckUtils]: 20: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,854 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6579#true} {6579#true} #82#return; {6579#true} is VALID [2022-04-08 11:27:52,855 INFO L290 TraceCheckUtils]: 22: Hoare triple {6579#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,855 INFO L290 TraceCheckUtils]: 23: Hoare triple {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !false; {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,856 INFO L272 TraceCheckUtils]: 24: Hoare triple {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,856 INFO L290 TraceCheckUtils]: 25: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,856 INFO L290 TraceCheckUtils]: 26: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,856 INFO L290 TraceCheckUtils]: 27: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,856 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6579#true} {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #84#return; {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,857 INFO L272 TraceCheckUtils]: 29: Hoare triple {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,857 INFO L290 TraceCheckUtils]: 30: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,857 INFO L290 TraceCheckUtils]: 31: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,857 INFO L290 TraceCheckUtils]: 32: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,857 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6579#true} {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #86#return; {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,858 INFO L290 TraceCheckUtils]: 34: Hoare triple {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,858 INFO L290 TraceCheckUtils]: 35: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,859 INFO L272 TraceCheckUtils]: 36: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,859 INFO L290 TraceCheckUtils]: 37: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,859 INFO L290 TraceCheckUtils]: 38: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,859 INFO L290 TraceCheckUtils]: 39: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,860 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {6579#true} {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #88#return; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,860 INFO L272 TraceCheckUtils]: 41: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,860 INFO L290 TraceCheckUtils]: 42: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,860 INFO L290 TraceCheckUtils]: 43: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,860 INFO L290 TraceCheckUtils]: 44: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,863 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {6579#true} {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #90#return; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,863 INFO L272 TraceCheckUtils]: 46: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,863 INFO L290 TraceCheckUtils]: 47: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,863 INFO L290 TraceCheckUtils]: 48: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,863 INFO L290 TraceCheckUtils]: 49: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,864 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6579#true} {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #92#return; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,864 INFO L290 TraceCheckUtils]: 51: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,865 INFO L272 TraceCheckUtils]: 52: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,865 INFO L290 TraceCheckUtils]: 53: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,865 INFO L290 TraceCheckUtils]: 54: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,865 INFO L290 TraceCheckUtils]: 55: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,865 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {6579#true} {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #94#return; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,866 INFO L290 TraceCheckUtils]: 57: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6757#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,867 INFO L290 TraceCheckUtils]: 58: Hoare triple {6757#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} assume !false; {6757#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,867 INFO L272 TraceCheckUtils]: 59: Hoare triple {6757#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,867 INFO L290 TraceCheckUtils]: 60: Hoare triple {6579#true} ~cond := #in~cond; {6767#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:27:52,868 INFO L290 TraceCheckUtils]: 61: Hoare triple {6767#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6771#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:27:52,868 INFO L290 TraceCheckUtils]: 62: Hoare triple {6771#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6771#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:27:52,869 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {6771#(not (= |__VERIFIER_assert_#in~cond| 0))} {6757#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #88#return; {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:27:52,869 INFO L272 TraceCheckUtils]: 64: Hoare triple {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,869 INFO L290 TraceCheckUtils]: 65: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,869 INFO L290 TraceCheckUtils]: 66: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,869 INFO L290 TraceCheckUtils]: 67: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,869 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {6579#true} {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #90#return; {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:27:52,869 INFO L272 TraceCheckUtils]: 69: Hoare triple {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,870 INFO L290 TraceCheckUtils]: 70: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,870 INFO L290 TraceCheckUtils]: 71: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,870 INFO L290 TraceCheckUtils]: 72: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,870 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {6579#true} {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #92#return; {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:27:52,871 INFO L290 TraceCheckUtils]: 74: Hoare triple {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} assume !!(~r~0 >= 2 * ~b~0); {6812#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (* main_~b~0 2) main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:27:52,871 INFO L272 TraceCheckUtils]: 75: Hoare triple {6812#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (* main_~b~0 2) main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,871 INFO L290 TraceCheckUtils]: 76: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,871 INFO L290 TraceCheckUtils]: 77: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,871 INFO L290 TraceCheckUtils]: 78: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,872 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {6579#true} {6812#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (* main_~b~0 2) main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #94#return; {6812#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (* main_~b~0 2) main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:27:52,877 INFO L290 TraceCheckUtils]: 80: Hoare triple {6812#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (* main_~b~0 2) main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:27:52,878 INFO L290 TraceCheckUtils]: 81: Hoare triple {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} assume !false; {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:27:52,878 INFO L272 TraceCheckUtils]: 82: Hoare triple {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,878 INFO L290 TraceCheckUtils]: 83: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,878 INFO L290 TraceCheckUtils]: 84: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,878 INFO L290 TraceCheckUtils]: 85: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,879 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {6579#true} {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #88#return; {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:27:52,879 INFO L272 TraceCheckUtils]: 87: Hoare triple {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,879 INFO L290 TraceCheckUtils]: 88: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,879 INFO L290 TraceCheckUtils]: 89: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,879 INFO L290 TraceCheckUtils]: 90: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,880 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {6579#true} {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #90#return; {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:27:52,880 INFO L272 TraceCheckUtils]: 92: Hoare triple {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,880 INFO L290 TraceCheckUtils]: 93: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,880 INFO L290 TraceCheckUtils]: 94: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,880 INFO L290 TraceCheckUtils]: 95: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,881 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {6579#true} {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #92#return; {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:27:52,882 INFO L290 TraceCheckUtils]: 97: Hoare triple {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} assume !(~r~0 >= 2 * ~b~0); {6883#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (* main_~y~0 2) (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) (< main_~r~0 (* main_~b~0 2)) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~b~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:52,886 INFO L290 TraceCheckUtils]: 98: Hoare triple {6883#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (* main_~y~0 2) (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) (< main_~r~0 (* main_~b~0 2)) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~b~0) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} is VALID [2022-04-08 11:27:52,887 INFO L290 TraceCheckUtils]: 99: Hoare triple {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} assume !false; {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} is VALID [2022-04-08 11:27:52,887 INFO L272 TraceCheckUtils]: 100: Hoare triple {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:52,887 INFO L290 TraceCheckUtils]: 101: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:52,887 INFO L290 TraceCheckUtils]: 102: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:52,887 INFO L290 TraceCheckUtils]: 103: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:52,888 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {6579#true} {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} #84#return; {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} is VALID [2022-04-08 11:27:52,890 INFO L272 TraceCheckUtils]: 105: Hoare triple {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6909#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:27:52,890 INFO L290 TraceCheckUtils]: 106: Hoare triple {6909#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6913#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:27:52,891 INFO L290 TraceCheckUtils]: 107: Hoare triple {6913#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6580#false} is VALID [2022-04-08 11:27:52,891 INFO L290 TraceCheckUtils]: 108: Hoare triple {6580#false} assume !false; {6580#false} is VALID [2022-04-08 11:27:52,891 INFO L134 CoverageAnalysis]: Checked inductivity of 424 backedges. 45 proven. 42 refuted. 0 times theorem prover too weak. 337 trivial. 0 not checked. [2022-04-08 11:27:52,891 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:27:59,974 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 11:28:42,361 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:28:42,361 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1081143625] [2022-04-08 11:28:42,362 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:28:42,362 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [269215962] [2022-04-08 11:28:42,362 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [269215962] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 11:28:42,362 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 11:28:42,362 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2022-04-08 11:28:42,362 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:28:42,362 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [337401728] [2022-04-08 11:28:42,362 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [337401728] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:28:42,362 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:28:42,362 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 11:28:42,362 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [766712854] [2022-04-08 11:28:42,362 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:28:42,363 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) Word has length 109 [2022-04-08 11:28:42,363 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:28:42,363 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-08 11:28:42,428 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:28:42,428 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 11:28:42,429 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:28:42,429 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 11:28:42,429 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=112, Invalid=394, Unknown=0, NotChecked=0, Total=506 [2022-04-08 11:28:42,429 INFO L87 Difference]: Start difference. First operand 120 states and 152 transitions. Second operand has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-08 11:28:47,310 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:28:47,310 INFO L93 Difference]: Finished difference Result 164 states and 211 transitions. [2022-04-08 11:28:47,310 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 11:28:47,310 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) Word has length 109 [2022-04-08 11:28:47,311 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:28:47,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-08 11:28:47,316 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 125 transitions. [2022-04-08 11:28:47,316 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-08 11:28:47,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 125 transitions. [2022-04-08 11:28:47,320 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 125 transitions. [2022-04-08 11:28:47,479 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:28:47,484 INFO L225 Difference]: With dead ends: 164 [2022-04-08 11:28:47,484 INFO L226 Difference]: Without dead ends: 161 [2022-04-08 11:28:47,485 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 186 GetRequests, 162 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 163 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=125, Invalid=475, Unknown=0, NotChecked=0, Total=600 [2022-04-08 11:28:47,486 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 29 mSDsluCounter, 186 mSDsCounter, 0 mSdLazyCounter, 612 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 40 SdHoareTripleChecker+Valid, 235 SdHoareTripleChecker+Invalid, 649 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 612 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-08 11:28:47,487 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [40 Valid, 235 Invalid, 649 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 612 Invalid, 0 Unknown, 0 Unchecked, 2.2s Time] [2022-04-08 11:28:47,487 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 161 states. [2022-04-08 11:28:47,778 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 161 to 156. [2022-04-08 11:28:47,779 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:28:47,779 INFO L82 GeneralOperation]: Start isEquivalent. First operand 161 states. Second operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:28:47,780 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:28:47,780 INFO L87 Difference]: Start difference. First operand 161 states. Second operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:28:47,808 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:28:47,809 INFO L93 Difference]: Finished difference Result 161 states and 207 transitions. [2022-04-08 11:28:47,809 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 207 transitions. [2022-04-08 11:28:47,809 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:28:47,810 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:28:47,810 INFO L74 IsIncluded]: Start isIncluded. First operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) Second operand 161 states. [2022-04-08 11:28:47,810 INFO L87 Difference]: Start difference. First operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) Second operand 161 states. [2022-04-08 11:28:47,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:28:47,815 INFO L93 Difference]: Finished difference Result 161 states and 207 transitions. [2022-04-08 11:28:47,815 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 207 transitions. [2022-04-08 11:28:47,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:28:47,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:28:47,816 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:28:47,816 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:28:47,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:28:47,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 156 states to 156 states and 201 transitions. [2022-04-08 11:28:47,821 INFO L78 Accepts]: Start accepts. Automaton has 156 states and 201 transitions. Word has length 109 [2022-04-08 11:28:47,821 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:28:47,821 INFO L478 AbstractCegarLoop]: Abstraction has 156 states and 201 transitions. [2022-04-08 11:28:47,821 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-08 11:28:47,821 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 156 states and 201 transitions. [2022-04-08 11:28:48,129 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 201 edges. 201 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:28:48,129 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 201 transitions. [2022-04-08 11:28:48,130 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-08 11:28:48,130 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:28:48,130 INFO L499 BasicCegarLoop]: trace histogram [16, 15, 15, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-08 11:28:48,146 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-08 11:28:48,330 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-08 11:28:48,331 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:28:48,331 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:28:48,331 INFO L85 PathProgramCache]: Analyzing trace with hash 800180238, now seen corresponding path program 5 times [2022-04-08 11:28:48,331 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:28:48,331 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [376982594] [2022-04-08 11:28:48,332 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:28:48,332 INFO L85 PathProgramCache]: Analyzing trace with hash 800180238, now seen corresponding path program 6 times [2022-04-08 11:28:48,332 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:28:48,332 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1262310280] [2022-04-08 11:28:48,332 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:28:48,332 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:28:48,348 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:28:48,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1558980401] [2022-04-08 11:28:48,349 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 11:28:48,349 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:28:48,349 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:28:48,350 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:28:48,362 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-08 11:28:48,413 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 11:28:48,413 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:28:48,414 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-08 11:28:48,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:28:48,450 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:28:48,742 INFO L272 TraceCheckUtils]: 0: Hoare triple {8122#true} call ULTIMATE.init(); {8122#true} is VALID [2022-04-08 11:28:48,743 INFO L290 TraceCheckUtils]: 1: Hoare triple {8122#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(14, 2);call #Ultimate.allocInit(12, 3); {8122#true} is VALID [2022-04-08 11:28:48,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,743 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8122#true} {8122#true} #98#return; {8122#true} is VALID [2022-04-08 11:28:48,743 INFO L272 TraceCheckUtils]: 4: Hoare triple {8122#true} call #t~ret6 := main(); {8122#true} is VALID [2022-04-08 11:28:48,743 INFO L290 TraceCheckUtils]: 5: Hoare triple {8122#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8122#true} is VALID [2022-04-08 11:28:48,743 INFO L272 TraceCheckUtils]: 6: Hoare triple {8122#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,743 INFO L290 TraceCheckUtils]: 7: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8122#true} {8122#true} #78#return; {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L290 TraceCheckUtils]: 11: Hoare triple {8122#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L272 TraceCheckUtils]: 12: Hoare triple {8122#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L290 TraceCheckUtils]: 13: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L290 TraceCheckUtils]: 14: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L290 TraceCheckUtils]: 15: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8122#true} {8122#true} #80#return; {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L272 TraceCheckUtils]: 17: Hoare triple {8122#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,744 INFO L290 TraceCheckUtils]: 18: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,745 INFO L290 TraceCheckUtils]: 19: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,745 INFO L290 TraceCheckUtils]: 20: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,745 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8122#true} {8122#true} #82#return; {8122#true} is VALID [2022-04-08 11:28:48,745 INFO L290 TraceCheckUtils]: 22: Hoare triple {8122#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8122#true} is VALID [2022-04-08 11:28:48,745 INFO L290 TraceCheckUtils]: 23: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-08 11:28:48,745 INFO L272 TraceCheckUtils]: 24: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,745 INFO L290 TraceCheckUtils]: 25: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,745 INFO L290 TraceCheckUtils]: 26: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,745 INFO L290 TraceCheckUtils]: 27: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,745 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8122#true} {8122#true} #84#return; {8122#true} is VALID [2022-04-08 11:28:48,746 INFO L272 TraceCheckUtils]: 29: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,756 INFO L290 TraceCheckUtils]: 30: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,756 INFO L290 TraceCheckUtils]: 31: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,756 INFO L290 TraceCheckUtils]: 32: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,756 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8122#true} {8122#true} #86#return; {8122#true} is VALID [2022-04-08 11:28:48,756 INFO L290 TraceCheckUtils]: 34: Hoare triple {8122#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8122#true} is VALID [2022-04-08 11:28:48,756 INFO L290 TraceCheckUtils]: 35: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-08 11:28:48,756 INFO L272 TraceCheckUtils]: 36: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,757 INFO L290 TraceCheckUtils]: 37: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,757 INFO L290 TraceCheckUtils]: 38: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,757 INFO L290 TraceCheckUtils]: 39: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,757 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-08 11:28:48,757 INFO L272 TraceCheckUtils]: 41: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,757 INFO L290 TraceCheckUtils]: 42: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,757 INFO L290 TraceCheckUtils]: 43: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,757 INFO L290 TraceCheckUtils]: 44: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,757 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8122#true} {8122#true} #90#return; {8122#true} is VALID [2022-04-08 11:28:48,757 INFO L272 TraceCheckUtils]: 46: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,758 INFO L290 TraceCheckUtils]: 47: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,758 INFO L290 TraceCheckUtils]: 48: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,758 INFO L290 TraceCheckUtils]: 49: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,758 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8122#true} {8122#true} #92#return; {8122#true} is VALID [2022-04-08 11:28:48,758 INFO L290 TraceCheckUtils]: 51: Hoare triple {8122#true} assume !!(~r~0 >= 2 * ~b~0); {8122#true} is VALID [2022-04-08 11:28:48,758 INFO L272 TraceCheckUtils]: 52: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,758 INFO L290 TraceCheckUtils]: 53: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,758 INFO L290 TraceCheckUtils]: 54: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,758 INFO L290 TraceCheckUtils]: 55: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,758 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {8122#true} {8122#true} #94#return; {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L290 TraceCheckUtils]: 57: Hoare triple {8122#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L290 TraceCheckUtils]: 58: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L272 TraceCheckUtils]: 59: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L290 TraceCheckUtils]: 60: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L290 TraceCheckUtils]: 61: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L290 TraceCheckUtils]: 62: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L272 TraceCheckUtils]: 64: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L290 TraceCheckUtils]: 65: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L290 TraceCheckUtils]: 66: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,759 INFO L290 TraceCheckUtils]: 67: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,760 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8122#true} {8122#true} #90#return; {8122#true} is VALID [2022-04-08 11:28:48,760 INFO L272 TraceCheckUtils]: 69: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,760 INFO L290 TraceCheckUtils]: 70: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,760 INFO L290 TraceCheckUtils]: 71: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,760 INFO L290 TraceCheckUtils]: 72: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,760 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {8122#true} {8122#true} #92#return; {8122#true} is VALID [2022-04-08 11:28:48,760 INFO L290 TraceCheckUtils]: 74: Hoare triple {8122#true} assume !(~r~0 >= 2 * ~b~0); {8122#true} is VALID [2022-04-08 11:28:48,760 INFO L290 TraceCheckUtils]: 75: Hoare triple {8122#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8122#true} is VALID [2022-04-08 11:28:48,760 INFO L290 TraceCheckUtils]: 76: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-08 11:28:48,760 INFO L272 TraceCheckUtils]: 77: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,761 INFO L290 TraceCheckUtils]: 78: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,761 INFO L290 TraceCheckUtils]: 79: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,761 INFO L290 TraceCheckUtils]: 80: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,761 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {8122#true} {8122#true} #84#return; {8122#true} is VALID [2022-04-08 11:28:48,761 INFO L272 TraceCheckUtils]: 82: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,761 INFO L290 TraceCheckUtils]: 83: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,761 INFO L290 TraceCheckUtils]: 84: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,761 INFO L290 TraceCheckUtils]: 85: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,761 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {8122#true} {8122#true} #86#return; {8122#true} is VALID [2022-04-08 11:28:48,761 INFO L290 TraceCheckUtils]: 87: Hoare triple {8122#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8122#true} is VALID [2022-04-08 11:28:48,762 INFO L290 TraceCheckUtils]: 88: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-08 11:28:48,762 INFO L272 TraceCheckUtils]: 89: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,762 INFO L290 TraceCheckUtils]: 90: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,762 INFO L290 TraceCheckUtils]: 91: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,762 INFO L290 TraceCheckUtils]: 92: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,762 INFO L284 TraceCheckUtils]: 93: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-08 11:28:48,762 INFO L272 TraceCheckUtils]: 94: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,763 INFO L290 TraceCheckUtils]: 95: Hoare triple {8122#true} ~cond := #in~cond; {8412#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:28:48,763 INFO L290 TraceCheckUtils]: 96: Hoare triple {8412#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:48,763 INFO L290 TraceCheckUtils]: 97: Hoare triple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:48,764 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} {8122#true} #90#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:48,764 INFO L272 TraceCheckUtils]: 99: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,764 INFO L290 TraceCheckUtils]: 100: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:28:48,765 INFO L290 TraceCheckUtils]: 101: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:28:48,765 INFO L290 TraceCheckUtils]: 102: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:28:48,765 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {8122#true} {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #92#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:48,765 INFO L290 TraceCheckUtils]: 104: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(~r~0 >= 2 * ~b~0); {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:48,774 INFO L290 TraceCheckUtils]: 105: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8445#(= main_~r~0 (+ main_~x~0 (* (- 1) main_~b~0) (* main_~a~0 main_~y~0) (* (- 1) main_~q~0 main_~y~0)))} is VALID [2022-04-08 11:28:48,774 INFO L290 TraceCheckUtils]: 106: Hoare triple {8445#(= main_~r~0 (+ main_~x~0 (* (- 1) main_~b~0) (* main_~a~0 main_~y~0) (* (- 1) main_~q~0 main_~y~0)))} assume !false; {8445#(= main_~r~0 (+ main_~x~0 (* (- 1) main_~b~0) (* main_~a~0 main_~y~0) (* (- 1) main_~q~0 main_~y~0)))} is VALID [2022-04-08 11:28:48,774 INFO L272 TraceCheckUtils]: 107: Hoare triple {8445#(= main_~r~0 (+ main_~x~0 (* (- 1) main_~b~0) (* main_~a~0 main_~y~0) (* (- 1) main_~q~0 main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:28:48,775 INFO L290 TraceCheckUtils]: 108: Hoare triple {8122#true} ~cond := #in~cond; {8412#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:28:48,775 INFO L290 TraceCheckUtils]: 109: Hoare triple {8412#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:48,775 INFO L290 TraceCheckUtils]: 110: Hoare triple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:48,777 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} {8445#(= main_~r~0 (+ main_~x~0 (* (- 1) main_~b~0) (* main_~a~0 main_~y~0) (* (- 1) main_~q~0 main_~y~0)))} #84#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:48,777 INFO L272 TraceCheckUtils]: 112: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8467#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:28:48,778 INFO L290 TraceCheckUtils]: 113: Hoare triple {8467#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8471#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:28:48,778 INFO L290 TraceCheckUtils]: 114: Hoare triple {8471#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8123#false} is VALID [2022-04-08 11:28:48,778 INFO L290 TraceCheckUtils]: 115: Hoare triple {8123#false} assume !false; {8123#false} is VALID [2022-04-08 11:28:48,779 INFO L134 CoverageAnalysis]: Checked inductivity of 488 backedges. 114 proven. 5 refuted. 0 times theorem prover too weak. 369 trivial. 0 not checked. [2022-04-08 11:28:48,779 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:29:01,720 INFO L290 TraceCheckUtils]: 115: Hoare triple {8123#false} assume !false; {8123#false} is VALID [2022-04-08 11:29:01,721 INFO L290 TraceCheckUtils]: 114: Hoare triple {8471#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8123#false} is VALID [2022-04-08 11:29:01,722 INFO L290 TraceCheckUtils]: 113: Hoare triple {8467#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8471#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:29:01,723 INFO L272 TraceCheckUtils]: 112: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8467#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:29:01,723 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} {8490#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #84#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:29:01,724 INFO L290 TraceCheckUtils]: 110: Hoare triple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:29:01,724 INFO L290 TraceCheckUtils]: 109: Hoare triple {8500#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:29:01,725 INFO L290 TraceCheckUtils]: 108: Hoare triple {8122#true} ~cond := #in~cond; {8500#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:29:01,725 INFO L272 TraceCheckUtils]: 107: Hoare triple {8490#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,725 INFO L290 TraceCheckUtils]: 106: Hoare triple {8490#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} assume !false; {8490#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:29:01,735 INFO L290 TraceCheckUtils]: 105: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8490#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:29:01,736 INFO L290 TraceCheckUtils]: 104: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(~r~0 >= 2 * ~b~0); {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:29:01,736 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {8122#true} {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #92#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:29:01,736 INFO L290 TraceCheckUtils]: 102: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,736 INFO L290 TraceCheckUtils]: 101: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,737 INFO L290 TraceCheckUtils]: 100: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,737 INFO L272 TraceCheckUtils]: 99: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,737 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} {8122#true} #90#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:29:01,738 INFO L290 TraceCheckUtils]: 97: Hoare triple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:29:01,738 INFO L290 TraceCheckUtils]: 96: Hoare triple {8500#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:29:01,739 INFO L290 TraceCheckUtils]: 95: Hoare triple {8122#true} ~cond := #in~cond; {8500#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:29:01,739 INFO L272 TraceCheckUtils]: 94: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,739 INFO L284 TraceCheckUtils]: 93: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-08 11:29:01,739 INFO L290 TraceCheckUtils]: 92: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,739 INFO L290 TraceCheckUtils]: 91: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,739 INFO L290 TraceCheckUtils]: 90: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,739 INFO L272 TraceCheckUtils]: 89: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,739 INFO L290 TraceCheckUtils]: 88: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-08 11:29:01,739 INFO L290 TraceCheckUtils]: 87: Hoare triple {8122#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8122#true} is VALID [2022-04-08 11:29:01,739 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {8122#true} {8122#true} #86#return; {8122#true} is VALID [2022-04-08 11:29:01,740 INFO L290 TraceCheckUtils]: 85: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,740 INFO L290 TraceCheckUtils]: 84: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,740 INFO L290 TraceCheckUtils]: 83: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,740 INFO L272 TraceCheckUtils]: 82: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,740 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {8122#true} {8122#true} #84#return; {8122#true} is VALID [2022-04-08 11:29:01,740 INFO L290 TraceCheckUtils]: 80: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,740 INFO L290 TraceCheckUtils]: 79: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,740 INFO L290 TraceCheckUtils]: 78: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,740 INFO L272 TraceCheckUtils]: 77: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,741 INFO L290 TraceCheckUtils]: 76: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-08 11:29:01,741 INFO L290 TraceCheckUtils]: 75: Hoare triple {8122#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8122#true} is VALID [2022-04-08 11:29:01,741 INFO L290 TraceCheckUtils]: 74: Hoare triple {8122#true} assume !(~r~0 >= 2 * ~b~0); {8122#true} is VALID [2022-04-08 11:29:01,741 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {8122#true} {8122#true} #92#return; {8122#true} is VALID [2022-04-08 11:29:01,741 INFO L290 TraceCheckUtils]: 72: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,741 INFO L290 TraceCheckUtils]: 71: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,741 INFO L290 TraceCheckUtils]: 70: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,741 INFO L272 TraceCheckUtils]: 69: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,741 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8122#true} {8122#true} #90#return; {8122#true} is VALID [2022-04-08 11:29:01,741 INFO L290 TraceCheckUtils]: 67: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,742 INFO L290 TraceCheckUtils]: 66: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,742 INFO L290 TraceCheckUtils]: 65: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,744 INFO L272 TraceCheckUtils]: 64: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,745 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-08 11:29:01,745 INFO L290 TraceCheckUtils]: 62: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,745 INFO L290 TraceCheckUtils]: 61: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,745 INFO L290 TraceCheckUtils]: 60: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,745 INFO L272 TraceCheckUtils]: 59: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,745 INFO L290 TraceCheckUtils]: 58: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-08 11:29:01,745 INFO L290 TraceCheckUtils]: 57: Hoare triple {8122#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8122#true} is VALID [2022-04-08 11:29:01,745 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {8122#true} {8122#true} #94#return; {8122#true} is VALID [2022-04-08 11:29:01,746 INFO L290 TraceCheckUtils]: 55: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,746 INFO L290 TraceCheckUtils]: 54: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,746 INFO L290 TraceCheckUtils]: 53: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,746 INFO L272 TraceCheckUtils]: 52: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,746 INFO L290 TraceCheckUtils]: 51: Hoare triple {8122#true} assume !!(~r~0 >= 2 * ~b~0); {8122#true} is VALID [2022-04-08 11:29:01,746 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8122#true} {8122#true} #92#return; {8122#true} is VALID [2022-04-08 11:29:01,746 INFO L290 TraceCheckUtils]: 49: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,746 INFO L290 TraceCheckUtils]: 48: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,746 INFO L290 TraceCheckUtils]: 47: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,747 INFO L272 TraceCheckUtils]: 46: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,747 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8122#true} {8122#true} #90#return; {8122#true} is VALID [2022-04-08 11:29:01,747 INFO L290 TraceCheckUtils]: 44: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,747 INFO L290 TraceCheckUtils]: 43: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,747 INFO L290 TraceCheckUtils]: 42: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,747 INFO L272 TraceCheckUtils]: 41: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,747 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-08 11:29:01,747 INFO L290 TraceCheckUtils]: 39: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,747 INFO L290 TraceCheckUtils]: 38: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,748 INFO L290 TraceCheckUtils]: 37: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,748 INFO L272 TraceCheckUtils]: 36: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,748 INFO L290 TraceCheckUtils]: 35: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-08 11:29:01,748 INFO L290 TraceCheckUtils]: 34: Hoare triple {8122#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8122#true} is VALID [2022-04-08 11:29:01,748 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8122#true} {8122#true} #86#return; {8122#true} is VALID [2022-04-08 11:29:01,748 INFO L290 TraceCheckUtils]: 32: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,748 INFO L290 TraceCheckUtils]: 31: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,748 INFO L290 TraceCheckUtils]: 30: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,748 INFO L272 TraceCheckUtils]: 29: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,749 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8122#true} {8122#true} #84#return; {8122#true} is VALID [2022-04-08 11:29:01,749 INFO L290 TraceCheckUtils]: 27: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,749 INFO L290 TraceCheckUtils]: 26: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,749 INFO L290 TraceCheckUtils]: 25: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,749 INFO L272 TraceCheckUtils]: 24: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,749 INFO L290 TraceCheckUtils]: 23: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-08 11:29:01,749 INFO L290 TraceCheckUtils]: 22: Hoare triple {8122#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8122#true} is VALID [2022-04-08 11:29:01,749 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8122#true} {8122#true} #82#return; {8122#true} is VALID [2022-04-08 11:29:01,749 INFO L290 TraceCheckUtils]: 20: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,750 INFO L290 TraceCheckUtils]: 19: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,750 INFO L290 TraceCheckUtils]: 18: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,750 INFO L272 TraceCheckUtils]: 17: Hoare triple {8122#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,750 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8122#true} {8122#true} #80#return; {8122#true} is VALID [2022-04-08 11:29:01,750 INFO L290 TraceCheckUtils]: 15: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,750 INFO L290 TraceCheckUtils]: 14: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,750 INFO L290 TraceCheckUtils]: 13: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,750 INFO L272 TraceCheckUtils]: 12: Hoare triple {8122#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,750 INFO L290 TraceCheckUtils]: 11: Hoare triple {8122#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8122#true} is VALID [2022-04-08 11:29:01,751 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8122#true} {8122#true} #78#return; {8122#true} is VALID [2022-04-08 11:29:01,751 INFO L290 TraceCheckUtils]: 9: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,751 INFO L290 TraceCheckUtils]: 8: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-08 11:29:01,751 INFO L290 TraceCheckUtils]: 7: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-08 11:29:01,751 INFO L272 TraceCheckUtils]: 6: Hoare triple {8122#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {8122#true} is VALID [2022-04-08 11:29:01,751 INFO L290 TraceCheckUtils]: 5: Hoare triple {8122#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8122#true} is VALID [2022-04-08 11:29:01,751 INFO L272 TraceCheckUtils]: 4: Hoare triple {8122#true} call #t~ret6 := main(); {8122#true} is VALID [2022-04-08 11:29:01,751 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8122#true} {8122#true} #98#return; {8122#true} is VALID [2022-04-08 11:29:01,751 INFO L290 TraceCheckUtils]: 2: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-08 11:29:01,751 INFO L290 TraceCheckUtils]: 1: Hoare triple {8122#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(14, 2);call #Ultimate.allocInit(12, 3); {8122#true} is VALID [2022-04-08 11:29:01,752 INFO L272 TraceCheckUtils]: 0: Hoare triple {8122#true} call ULTIMATE.init(); {8122#true} is VALID [2022-04-08 11:29:01,752 INFO L134 CoverageAnalysis]: Checked inductivity of 488 backedges. 114 proven. 5 refuted. 0 times theorem prover too weak. 369 trivial. 0 not checked. [2022-04-08 11:29:01,752 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:29:01,752 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1262310280] [2022-04-08 11:29:01,752 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:29:01,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1558980401] [2022-04-08 11:29:01,753 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1558980401] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:29:01,753 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:29:01,753 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 11:29:01,753 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:29:01,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [376982594] [2022-04-08 11:29:01,753 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [376982594] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:29:01,753 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:29:01,754 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:29:01,754 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [831167118] [2022-04-08 11:29:01,754 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:29:01,754 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) Word has length 116 [2022-04-08 11:29:01,755 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:29:01,755 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 11:29:01,800 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-08 11:29:01,800 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:29:01,800 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:29:01,800 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:29:01,800 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:29:01,800 INFO L87 Difference]: Start difference. First operand 156 states and 201 transitions. Second operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 11:29:02,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:29:02,453 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-08 11:29:02,453 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 11:29:02,453 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) Word has length 116 [2022-04-08 11:29:02,453 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:29:02,453 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 11:29:02,454 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 46 transitions. [2022-04-08 11:29:02,454 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 11:29:02,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 46 transitions. [2022-04-08 11:29:02,455 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 46 transitions. [2022-04-08 11:29:02,503 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:29:02,503 INFO L225 Difference]: With dead ends: 164 [2022-04-08 11:29:02,503 INFO L226 Difference]: Without dead ends: 0 [2022-04-08 11:29:02,505 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 235 GetRequests, 221 SyntacticMatches, 3 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2022-04-08 11:29:02,506 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 17 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 113 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 134 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 113 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 11:29:02,507 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 129 Invalid, 134 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 113 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 11:29:02,507 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-08 11:29:02,507 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-08 11:29:02,507 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:29:02,507 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 11:29:02,508 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 11:29:02,508 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 11:29:02,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:29:02,508 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 11:29:02,508 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:29:02,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:29:02,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:29:02,508 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-08 11:29:02,508 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-08 11:29:02,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:29:02,508 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 11:29:02,508 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:29:02,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:29:02,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:29:02,509 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:29:02,509 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:29:02,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 11:29:02,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-08 11:29:02,509 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 116 [2022-04-08 11:29:02,509 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:29:02,509 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-08 11:29:02,509 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 11:29:02,509 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-08 11:29:02,510 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:29:02,510 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:29:02,510 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:29:02,512 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 11:29:02,533 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-08 11:29:02,727 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-08 11:29:02,729 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-08 11:29:05,808 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-08 11:29:05,808 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-08 11:29:05,808 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-08 11:29:05,809 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-08 11:29:05,809 INFO L878 garLoopResultBuilder]: At program point L12(line 12) the Hoare annotation is: (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|) [2022-04-08 11:29:05,809 INFO L878 garLoopResultBuilder]: At program point L12-2(lines 11 13) the Hoare annotation is: (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) [2022-04-08 11:29:05,809 INFO L878 garLoopResultBuilder]: At program point assume_abort_if_notEXIT(lines 11 13) the Hoare annotation is: (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) [2022-04-08 11:29:05,809 INFO L885 garLoopResultBuilder]: At program point L64(line 64) the Hoare annotation is: true [2022-04-08 11:29:05,809 INFO L878 garLoopResultBuilder]: At program point L31(line 31) the Hoare annotation is: (and (<= main_~y~0 100) (<= 1 main_~y~0)) [2022-04-08 11:29:05,809 INFO L885 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: true [2022-04-08 11:29:05,809 INFO L878 garLoopResultBuilder]: At program point L29-1(line 29) the Hoare annotation is: (and (<= 0 main_~y~0) (<= main_~y~0 100)) [2022-04-08 11:29:05,809 INFO L885 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: true [2022-04-08 11:29:05,809 INFO L885 garLoopResultBuilder]: At program point L27-1(line 27) the Hoare annotation is: true [2022-04-08 11:29:05,809 INFO L885 garLoopResultBuilder]: At program point mainEXIT(lines 22 66) the Hoare annotation is: true [2022-04-08 11:29:05,809 INFO L878 garLoopResultBuilder]: At program point L50(lines 47 59) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:29:05,809 INFO L878 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:29:05,809 INFO L878 garLoopResultBuilder]: At program point L48-1(line 48) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:29:05,809 INFO L885 garLoopResultBuilder]: At program point mainFINAL(lines 22 66) the Hoare annotation is: true [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point L40(lines 38 62) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point L38-2(lines 38 62) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point L38-3(lines 38 62) the Hoare annotation is: (let ((.cse1 (= main_~b~0 (* main_~a~0 main_~y~0))) (.cse0 (<= main_~y~0 100)) (.cse2 (<= 1 main_~y~0))) (or (and (< main_~x~0 (* main_~b~0 2)) (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0) .cse0 (= main_~a~0 2) .cse1 (<= main_~y~0 main_~x~0)) (and (< main_~r~0 main_~y~0) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) .cse0 .cse2 .cse1) (and .cse0 (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) .cse2 .cse1) (and (= main_~x~0 main_~r~0) .cse0 (= main_~q~0 0) .cse2))) [2022-04-08 11:29:05,810 INFO L885 garLoopResultBuilder]: At program point mainENTRY(lines 22 66) the Hoare annotation is: true [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= (* 2 .cse0) main_~r~0) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point L55-1(line 55) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= (* 2 .cse0) main_~r~0) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point L47-2(lines 47 59) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point L47-3(lines 47 59) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point L39(line 39) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point L39-1(line 39) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-08 11:29:05,810 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2022-04-08 11:29:05,810 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-08 11:29:05,811 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2022-04-08 11:29:05,811 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-08 11:29:05,811 INFO L885 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-08 11:29:05,811 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-08 11:29:05,811 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-08 11:29:05,811 INFO L878 garLoopResultBuilder]: At program point L16(lines 16 17) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-08 11:29:05,811 INFO L878 garLoopResultBuilder]: At program point L15(lines 15 18) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-08 11:29:05,811 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-08 11:29:05,811 INFO L878 garLoopResultBuilder]: At program point L15-2(lines 14 20) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-08 11:29:05,811 INFO L878 garLoopResultBuilder]: At program point __VERIFIER_assertEXIT(lines 14 20) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-08 11:29:05,812 INFO L878 garLoopResultBuilder]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-08 11:29:05,814 INFO L719 BasicCegarLoop]: Path program histogram: [6, 4, 2, 2, 2, 2, 2, 2] [2022-04-08 11:29:05,815 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 11:29:05,817 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-08 11:29:05,822 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-08 11:29:05,845 INFO L163 areAnnotationChecker]: CFG has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-08 11:29:05,854 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 11:29:05 BoogieIcfgContainer [2022-04-08 11:29:05,855 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 11:29:05,856 INFO L158 Benchmark]: Toolchain (without parser) took 237305.29ms. Allocated memory was 177.2MB in the beginning and 213.9MB in the end (delta: 36.7MB). Free memory was 128.3MB in the beginning and 120.7MB in the end (delta: 7.6MB). Peak memory consumption was 102.6MB. Max. memory is 8.0GB. [2022-04-08 11:29:05,856 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 177.2MB. Free memory was 144.8MB in the beginning and 144.7MB in the end (delta: 139.8kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 11:29:05,856 INFO L158 Benchmark]: CACSL2BoogieTranslator took 281.55ms. Allocated memory is still 177.2MB. Free memory was 128.0MB in the beginning and 152.5MB in the end (delta: -24.4MB). Peak memory consumption was 11.1MB. Max. memory is 8.0GB. [2022-04-08 11:29:05,857 INFO L158 Benchmark]: Boogie Preprocessor took 45.37ms. Allocated memory is still 177.2MB. Free memory was 152.5MB in the beginning and 150.9MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-08 11:29:05,857 INFO L158 Benchmark]: RCFGBuilder took 363.42ms. Allocated memory is still 177.2MB. Free memory was 150.9MB in the beginning and 138.9MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-08 11:29:05,857 INFO L158 Benchmark]: TraceAbstraction took 236609.82ms. Allocated memory was 177.2MB in the beginning and 213.9MB in the end (delta: 36.7MB). Free memory was 138.4MB in the beginning and 120.7MB in the end (delta: 17.6MB). Peak memory consumption was 113.6MB. Max. memory is 8.0GB. [2022-04-08 11:29:05,858 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.14ms. Allocated memory is still 177.2MB. Free memory was 144.8MB in the beginning and 144.7MB in the end (delta: 139.8kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 281.55ms. Allocated memory is still 177.2MB. Free memory was 128.0MB in the beginning and 152.5MB in the end (delta: -24.4MB). Peak memory consumption was 11.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 45.37ms. Allocated memory is still 177.2MB. Free memory was 152.5MB in the beginning and 150.9MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 363.42ms. Allocated memory is still 177.2MB. Free memory was 150.9MB in the beginning and 138.9MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 236609.82ms. Allocated memory was 177.2MB in the beginning and 213.9MB in the end (delta: 36.7MB). Free memory was 138.4MB in the beginning and 120.7MB in the end (delta: 17.6MB). Peak memory consumption was 113.6MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 17]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 42 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 236.5s, OverallIterations: 11, TraceHistogramMax: 16, PathProgramHistogramMax: 6, EmptinessCheckTime: 0.0s, AutomataDifference: 11.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 3.1s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 261 SdHoareTripleChecker+Valid, 3.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 195 mSDsluCounter, 1790 SdHoareTripleChecker+Invalid, 3.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1337 mSDsCounter, 129 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 2117 IncrementalHoareTripleChecker+Invalid, 2246 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 129 mSolverCounterUnsat, 453 mSDtfsCounter, 2117 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 1062 GetRequests, 949 SyntacticMatches, 9 SemanticMatches, 104 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 330 ImplicationChecksByTransitivity, 1.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=156occurred in iteration=10, InterpolantAutomatonStates: 85, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 1.3s AutomataMinimizationTime, 11 MinimizatonAttempts, 49 StatesRemovedByMinimization, 7 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 39 LocationsWithAnnotation, 517 PreInvPairs, 756 NumberOfFragments, 487 HoareAnnotationTreeSize, 517 FomulaSimplifications, 541 FormulaSimplificationTreeSizeReduction, 0.6s HoareSimplificationTime, 39 FomulaSimplificationsInter, 10690 FormulaSimplificationTreeSizeReductionInter, 2.4s HoareSimplificationTimeInter, 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 - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 47]: Loop Invariant Derived loop invariant: (((q * y + b + r == x + a * y && 1 <= r) && y <= 100) && 1 <= y) && b == a * y - InvariantResult [Line: 38]: Loop Invariant Derived loop invariant: ((q * y + b + r == x + a * y && y <= 100) && 1 <= y) && b == a * y - ProcedureContractResult [Line: 11]: Procedure Contract for assume_abort_if_not Derived contract for procedure assume_abort_if_not: !(\old(cond) == 0) && cond == \old(cond) - ProcedureContractResult [Line: 22]: Procedure Contract for main Derived contract for procedure main: 1 - ProcedureContractResult [Line: 14]: Procedure Contract for __VERIFIER_assert Derived contract for procedure __VERIFIER_assert: \old(cond) == cond || !(1 <= \old(cond)) RESULT: Ultimate proved your program to be correct! [2022-04-08 11:29:05,918 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...