/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_valuebound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 11:24:23,303 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 11:24:23,304 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 11:24:23,339 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 11:24:23,339 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 11:24:23,340 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 11:24:23,346 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 11:24:23,351 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 11:24:23,353 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 11:24:23,358 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 11:24:23,359 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 11:24:23,360 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 11:24:23,360 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 11:24:23,361 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 11:24:23,362 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 11:24:23,362 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 11:24:23,363 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 11:24:23,365 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 11:24:23,369 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 11:24:23,373 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 11:24:23,374 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 11:24:23,376 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 11:24:23,377 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 11:24:23,378 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 11:24:23,378 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 11:24:23,380 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 11:24:23,380 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 11:24:23,381 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 11:24:23,381 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 11:24:23,382 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 11:24:23,382 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 11:24:23,383 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 11:24:23,383 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 11:24:23,384 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 11:24:23,384 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 11:24:23,385 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 11:24:23,385 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 11:24:23,386 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 11:24:23,386 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 11:24:23,386 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 11:24:23,389 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 11:24:23,391 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 11:24:23,391 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:24:23,402 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 11:24:23,402 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 11:24:23,404 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 11:24:23,404 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 11:24:23,404 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 11:24:23,404 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 11:24:23,404 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 11:24:23,404 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 11:24:23,404 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 11:24:23,405 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 11:24:23,405 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 11:24:23,405 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 11:24:23,406 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 11:24:23,406 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 11:24:23,406 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 11:24:23,406 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 11:24:23,406 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 11:24:23,406 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 11:24:23,406 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 11:24:23,407 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 11:24:23,407 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 11:24:23,407 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-08 11:24:23,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:24:23,599 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 11:24:23,622 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 11:24:23,624 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 11:24:23,625 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 11:24:23,626 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 11:24:23,627 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound10.c [2022-04-08 11:24:23,686 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7234f2ee5/196637669afc49d5b3b8ad993a8bc7b8/FLAG2c41a35ac [2022-04-08 11:24:24,073 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 11:24:24,074 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound10.c [2022-04-08 11:24:24,078 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7234f2ee5/196637669afc49d5b3b8ad993a8bc7b8/FLAG2c41a35ac [2022-04-08 11:24:24,088 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7234f2ee5/196637669afc49d5b3b8ad993a8bc7b8 [2022-04-08 11:24:24,090 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 11:24:24,091 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 11:24:24,092 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 11:24:24,092 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 11:24:24,096 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 11:24:24,097 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 11:24:24" (1/1) ... [2022-04-08 11:24:24,098 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@280d41a3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24, skipping insertion in model container [2022-04-08 11:24:24,098 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 11:24:24" (1/1) ... [2022-04-08 11:24:24,104 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 11:24:24,115 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 11:24:24,335 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_valuebound10.c[576,589] [2022-04-08 11:24:24,353 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 11:24:24,362 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 11:24:24,377 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_valuebound10.c[576,589] [2022-04-08 11:24:24,386 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 11:24:24,403 INFO L208 MainTranslator]: Completed translation [2022-04-08 11:24:24,403 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24 WrapperNode [2022-04-08 11:24:24,403 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 11:24:24,404 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 11:24:24,404 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 11:24:24,405 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 11:24:24,414 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24" (1/1) ... [2022-04-08 11:24:24,414 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24" (1/1) ... [2022-04-08 11:24:24,420 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24" (1/1) ... [2022-04-08 11:24:24,421 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24" (1/1) ... [2022-04-08 11:24:24,436 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24" (1/1) ... [2022-04-08 11:24:24,440 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24" (1/1) ... [2022-04-08 11:24:24,441 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24" (1/1) ... [2022-04-08 11:24:24,443 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 11:24:24,446 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 11:24:24,446 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 11:24:24,446 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 11:24:24,448 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24" (1/1) ... [2022-04-08 11:24:24,460 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 11:24:24,468 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:24,484 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-08 11:24:24,486 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:24:24,513 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 11:24:24,513 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 11:24:24,513 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 11:24:24,513 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 11:24:24,513 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 11:24:24,513 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 11:24:24,514 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 11:24:24,514 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 11:24:24,514 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 11:24:24,514 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 11:24:24,514 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 11:24:24,514 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 11:24:24,515 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 11:24:24,515 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 11:24:24,516 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 11:24:24,518 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 11:24:24,518 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 11:24:24,518 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 11:24:24,518 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 11:24:24,518 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 11:24:24,575 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 11:24:24,577 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 11:24:24,728 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 11:24:24,739 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 11:24:24,739 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 11:24:24,741 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 11:24:24 BoogieIcfgContainer [2022-04-08 11:24:24,741 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 11:24:24,756 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 11:24:24,756 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 11:24:24,759 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 11:24:24,760 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 11:24:24" (1/3) ... [2022-04-08 11:24:24,760 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7ed78b6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 11:24:24, skipping insertion in model container [2022-04-08 11:24:24,760 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:24:24" (2/3) ... [2022-04-08 11:24:24,761 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7ed78b6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 11:24:24, skipping insertion in model container [2022-04-08 11:24:24,761 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 11:24:24" (3/3) ... [2022-04-08 11:24:24,762 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound10.c [2022-04-08 11:24:24,780 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 11:24:24,780 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 11:24:24,819 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 11:24:24,825 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:24:24,825 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 11:24:24,841 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:24:24,847 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 11:24:24,848 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:24,848 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:24:24,849 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:24,853 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:24,853 INFO L85 PathProgramCache]: Analyzing trace with hash -1768835633, now seen corresponding path program 1 times [2022-04-08 11:24:24,860 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:24,861 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1704533871] [2022-04-08 11:24:24,868 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:24:24,868 INFO L85 PathProgramCache]: Analyzing trace with hash -1768835633, now seen corresponding path program 2 times [2022-04-08 11:24:24,871 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:24,871 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [396716144] [2022-04-08 11:24:24,872 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:24,872 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:24,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:25,014 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 11:24:25,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:25,033 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:24:25,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-08 11:24:25,033 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-08 11:24:25,034 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 11:24:25,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:25,044 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:24:25,045 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:24:25,045 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:24:25,046 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-08 11:24:25,046 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 11:24:25,048 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:25,054 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:24:25,055 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:24:25,055 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:24:25,055 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-08 11:24:25,055 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 11:24:25,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:25,063 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:24:25,064 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:24:25,064 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:24:25,064 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-08 11:24:25,066 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:24:25,066 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:24:25,066 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-08 11:24:25,066 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-08 11:24:25,067 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} call #t~ret6 := main(); {42#true} is VALID [2022-04-08 11:24:25,067 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:24:25,067 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {42#true} is VALID [2022-04-08 11:24:25,067 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:24:25,068 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:24:25,068 INFO L290 TraceCheckUtils]: 9: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:24:25,068 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-08 11:24:25,068 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:24:25,069 INFO L272 TraceCheckUtils]: 12: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {42#true} is VALID [2022-04-08 11:24:25,069 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:24:25,069 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:24:25,070 INFO L290 TraceCheckUtils]: 15: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:24:25,070 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-08 11:24:25,070 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:24:25,070 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-08 11:24:25,071 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-08 11:24:25,071 INFO L290 TraceCheckUtils]: 20: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-08 11:24:25,071 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-08 11:24:25,071 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:24:25,072 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#false} assume false; {43#false} is VALID [2022-04-08 11:24:25,072 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:24:25,072 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} ~cond := #in~cond; {43#false} is VALID [2022-04-08 11:24:25,072 INFO L290 TraceCheckUtils]: 26: Hoare triple {43#false} assume 0 == ~cond; {43#false} is VALID [2022-04-08 11:24:25,073 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} assume !false; {43#false} is VALID [2022-04-08 11:24:25,073 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:24:25,074 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:25,074 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [396716144] [2022-04-08 11:24:25,074 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [396716144] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:25,075 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:25,075 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 11:24:25,077 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:25,077 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1704533871] [2022-04-08 11:24:25,077 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1704533871] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:25,078 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:25,078 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 11:24:25,078 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [886138309] [2022-04-08 11:24:25,078 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:25,083 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:24:25,084 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:25,088 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:24:25,138 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:24:25,139 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 11:24:25,139 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:25,162 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 11:24:25,164 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 11:24:25,166 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:24:25,373 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:25,373 INFO L93 Difference]: Finished difference Result 71 states and 110 transitions. [2022-04-08 11:24:25,373 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 11:24:25,374 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:24:25,374 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:25,375 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:24:25,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-08 11:24:25,385 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:24:25,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-08 11:24:25,393 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-08 11:24:25,513 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:24:25,525 INFO L225 Difference]: With dead ends: 71 [2022-04-08 11:24:25,525 INFO L226 Difference]: Without dead ends: 34 [2022-04-08 11:24:25,528 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:24:25,530 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s 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.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:24:25,531 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.0s Time] [2022-04-08 11:24:25,542 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-08 11:24:25,555 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-08 11:24:25,555 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:25,556 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:24:25,557 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:24:25,557 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:24:25,562 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:25,562 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 11:24:25,563 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 11:24:25,563 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:25,564 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:25,564 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:24:25,565 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:24:25,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:25,569 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 11:24:25,569 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 11:24:25,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:25,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:25,570 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:25,570 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:25,571 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:24:25,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-08 11:24:25,576 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 28 [2022-04-08 11:24:25,576 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:25,576 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-08 11:24:25,576 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:24:25,577 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 43 transitions. [2022-04-08 11:24:25,622 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:24:25,622 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 11:24:25,623 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 11:24:25,623 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:25,623 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:24:25,624 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 11:24:25,624 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:25,625 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:25,625 INFO L85 PathProgramCache]: Analyzing trace with hash 1378913883, now seen corresponding path program 1 times [2022-04-08 11:24:25,625 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:25,625 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [491493794] [2022-04-08 11:24:25,626 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:24:25,626 INFO L85 PathProgramCache]: Analyzing trace with hash 1378913883, now seen corresponding path program 2 times [2022-04-08 11:24:25,626 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:25,627 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1950679344] [2022-04-08 11:24:25,627 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:25,627 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:25,649 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:25,649 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1487278764] [2022-04-08 11:24:25,649 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:25,649 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:25,650 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:25,651 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:24:25,682 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:24:25,713 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 11:24:25,713 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:25,715 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:24:25,745 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:25,750 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:25,932 INFO L272 TraceCheckUtils]: 0: Hoare triple {340#true} call ULTIMATE.init(); {340#true} is VALID [2022-04-08 11:24:25,932 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:24:25,932 INFO L290 TraceCheckUtils]: 2: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-08 11:24:25,933 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {340#true} {340#true} #98#return; {340#true} is VALID [2022-04-08 11:24:25,933 INFO L272 TraceCheckUtils]: 4: Hoare triple {340#true} call #t~ret6 := main(); {340#true} is VALID [2022-04-08 11:24:25,933 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:24:25,933 INFO L272 TraceCheckUtils]: 6: Hoare triple {340#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {340#true} is VALID [2022-04-08 11:24:25,933 INFO L290 TraceCheckUtils]: 7: Hoare triple {340#true} ~cond := #in~cond; {340#true} is VALID [2022-04-08 11:24:25,934 INFO L290 TraceCheckUtils]: 8: Hoare triple {340#true} assume !(0 == ~cond); {340#true} is VALID [2022-04-08 11:24:25,934 INFO L290 TraceCheckUtils]: 9: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-08 11:24:25,934 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {340#true} {340#true} #78#return; {340#true} is VALID [2022-04-08 11:24:25,934 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:24:25,934 INFO L272 TraceCheckUtils]: 12: Hoare triple {340#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {340#true} is VALID [2022-04-08 11:24:25,935 INFO L290 TraceCheckUtils]: 13: Hoare triple {340#true} ~cond := #in~cond; {340#true} is VALID [2022-04-08 11:24:25,935 INFO L290 TraceCheckUtils]: 14: Hoare triple {340#true} assume !(0 == ~cond); {340#true} is VALID [2022-04-08 11:24:25,935 INFO L290 TraceCheckUtils]: 15: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-08 11:24:25,935 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {340#true} {340#true} #80#return; {340#true} is VALID [2022-04-08 11:24:25,935 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:24:25,936 INFO L290 TraceCheckUtils]: 18: Hoare triple {340#true} ~cond := #in~cond; {340#true} is VALID [2022-04-08 11:24:25,936 INFO L290 TraceCheckUtils]: 19: Hoare triple {340#true} assume !(0 == ~cond); {340#true} is VALID [2022-04-08 11:24:25,936 INFO L290 TraceCheckUtils]: 20: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-08 11:24:25,936 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {340#true} {340#true} #82#return; {340#true} is VALID [2022-04-08 11:24:25,937 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:24:25,938 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:24:25,939 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:24:25,939 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:24:25,940 INFO L290 TraceCheckUtils]: 26: Hoare triple {422#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {341#false} is VALID [2022-04-08 11:24:25,940 INFO L290 TraceCheckUtils]: 27: Hoare triple {341#false} assume !false; {341#false} is VALID [2022-04-08 11:24:25,940 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:24:25,940 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:24:25,941 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:25,941 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1950679344] [2022-04-08 11:24:25,941 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:25,941 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1487278764] [2022-04-08 11:24:25,941 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1487278764] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:25,942 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:25,942 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:24:25,943 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:25,943 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [491493794] [2022-04-08 11:24:25,943 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [491493794] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:25,943 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:25,943 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:24:25,943 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1857414584] [2022-04-08 11:24:25,943 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:25,944 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:24:25,944 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:25,945 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:24:25,963 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:24:25,964 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:24:25,964 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:25,965 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:24:25,965 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:24:25,965 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:24:26,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:26,118 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-08 11:24:26,118 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:24:26,118 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:24:26,119 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:26,119 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:24:26,122 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-08 11:24:26,122 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:24:26,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-08 11:24:26,124 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-08 11:24:26,170 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:24:26,172 INFO L225 Difference]: With dead ends: 45 [2022-04-08 11:24:26,173 INFO L226 Difference]: Without dead ends: 43 [2022-04-08 11:24:26,173 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:24:26,174 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:24:26,175 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:24:26,176 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-08 11:24:26,186 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-08 11:24:26,186 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:26,186 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:24:26,187 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:24:26,187 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:24:26,190 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:26,190 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-08 11:24:26,190 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-08 11:24:26,191 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:26,191 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:26,192 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:24:26,192 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:24:26,195 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:26,195 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-08 11:24:26,195 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-08 11:24:26,196 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:26,196 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:26,196 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:26,197 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:26,197 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:24:26,200 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-08 11:24:26,200 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 28 [2022-04-08 11:24:26,200 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:26,200 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-08 11:24:26,200 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:24:26,200 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 49 transitions. [2022-04-08 11:24:26,249 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:24:26,250 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-08 11:24:26,250 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 11:24:26,251 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:26,251 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:24:26,278 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:24:26,467 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:24:26,468 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:26,468 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:26,468 INFO L85 PathProgramCache]: Analyzing trace with hash -1928335320, now seen corresponding path program 1 times [2022-04-08 11:24:26,468 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:26,469 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [173379588] [2022-04-08 11:24:26,469 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:24:26,469 INFO L85 PathProgramCache]: Analyzing trace with hash -1928335320, now seen corresponding path program 2 times [2022-04-08 11:24:26,470 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:26,470 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [380043146] [2022-04-08 11:24:26,470 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:26,470 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:26,506 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:26,506 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [241968906] [2022-04-08 11:24:26,507 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:26,507 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:26,507 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:26,532 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:24:26,599 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:24:26,634 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:26,634 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:26,635 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 11:24:26,648 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:26,651 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:26,903 INFO L272 TraceCheckUtils]: 0: Hoare triple {686#true} call ULTIMATE.init(); {686#true} is VALID [2022-04-08 11:24:26,903 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:24:26,903 INFO L290 TraceCheckUtils]: 2: Hoare triple {686#true} assume true; {686#true} is VALID [2022-04-08 11:24:26,904 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {686#true} {686#true} #98#return; {686#true} is VALID [2022-04-08 11:24:26,904 INFO L272 TraceCheckUtils]: 4: Hoare triple {686#true} call #t~ret6 := main(); {686#true} is VALID [2022-04-08 11:24:26,904 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:24:26,904 INFO L272 TraceCheckUtils]: 6: Hoare triple {686#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {686#true} is VALID [2022-04-08 11:24:26,904 INFO L290 TraceCheckUtils]: 7: Hoare triple {686#true} ~cond := #in~cond; {686#true} is VALID [2022-04-08 11:24:26,905 INFO L290 TraceCheckUtils]: 8: Hoare triple {686#true} assume !(0 == ~cond); {686#true} is VALID [2022-04-08 11:24:26,905 INFO L290 TraceCheckUtils]: 9: Hoare triple {686#true} assume true; {686#true} is VALID [2022-04-08 11:24:26,905 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {686#true} {686#true} #78#return; {686#true} is VALID [2022-04-08 11:24:26,905 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:24:26,905 INFO L272 TraceCheckUtils]: 12: Hoare triple {686#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {686#true} is VALID [2022-04-08 11:24:26,906 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:24:26,906 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:24:26,907 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:24:26,907 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 10))} is VALID [2022-04-08 11:24:26,907 INFO L272 TraceCheckUtils]: 17: Hoare triple {741#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {686#true} is VALID [2022-04-08 11:24:26,908 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:24:26,908 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:24:26,909 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:24:26,910 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {734#(not (= |assume_abort_if_not_#in~cond| 0))} {741#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #82#return; {757#(and (<= main_~y~0 10) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:26,910 INFO L290 TraceCheckUtils]: 22: Hoare triple {757#(and (<= main_~y~0 10) (<= 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 10) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:26,911 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 10) (= main_~q~0 0) (<= 1 main_~y~0))} assume !false; {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 10) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:26,911 INFO L272 TraceCheckUtils]: 24: Hoare triple {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 10) (= 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:24:26,911 INFO L290 TraceCheckUtils]: 25: Hoare triple {686#true} ~cond := #in~cond; {686#true} is VALID [2022-04-08 11:24:26,911 INFO L290 TraceCheckUtils]: 26: Hoare triple {686#true} assume !(0 == ~cond); {686#true} is VALID [2022-04-08 11:24:26,911 INFO L290 TraceCheckUtils]: 27: Hoare triple {686#true} assume true; {686#true} is VALID [2022-04-08 11:24:26,912 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {686#true} {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 10) (= main_~q~0 0) (<= 1 main_~y~0))} #84#return; {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 10) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:24:26,914 INFO L272 TraceCheckUtils]: 29: Hoare triple {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 10) (= 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:24:26,915 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:24:26,915 INFO L290 TraceCheckUtils]: 31: Hoare triple {787#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {687#false} is VALID [2022-04-08 11:24:26,915 INFO L290 TraceCheckUtils]: 32: Hoare triple {687#false} assume !false; {687#false} is VALID [2022-04-08 11:24:26,916 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:24:26,916 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:24:26,916 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:26,916 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [380043146] [2022-04-08 11:24:26,916 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:26,917 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [241968906] [2022-04-08 11:24:26,917 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [241968906] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:26,917 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:26,917 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 11:24:26,917 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:26,917 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [173379588] [2022-04-08 11:24:26,918 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [173379588] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:26,918 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:26,918 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 11:24:26,918 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [268887044] [2022-04-08 11:24:26,918 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:26,919 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:24:26,919 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:26,919 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:24:26,942 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:24:26,942 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 11:24:26,942 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:26,943 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 11:24:26,943 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-08 11:24:26,943 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:24:27,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:27,401 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2022-04-08 11:24:27,401 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 11:24:27,402 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:24:27,402 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:27,402 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:24:27,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-08 11:24:27,405 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:24:27,408 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-08 11:24:27,408 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 69 transitions. [2022-04-08 11:24:27,466 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:24:27,469 INFO L225 Difference]: With dead ends: 57 [2022-04-08 11:24:27,469 INFO L226 Difference]: Without dead ends: 54 [2022-04-08 11:24:27,469 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:24:27,470 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:24:27,471 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:24:27,471 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-08 11:24:27,511 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-08 11:24:27,512 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:27,512 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:24:27,513 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:24:27,513 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:24:27,516 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:27,516 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-08 11:24:27,517 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-08 11:24:27,517 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:27,518 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:27,518 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:24:27,518 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:24:27,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:27,522 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-08 11:24:27,522 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-08 11:24:27,522 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:27,523 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:27,523 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:27,523 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:27,523 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:24:27,526 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 67 transitions. [2022-04-08 11:24:27,526 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 67 transitions. Word has length 33 [2022-04-08 11:24:27,526 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:27,526 INFO L478 AbstractCegarLoop]: Abstraction has 53 states and 67 transitions. [2022-04-08 11:24:27,526 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:24:27,527 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 53 states and 67 transitions. [2022-04-08 11:24:27,600 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:24:27,600 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 67 transitions. [2022-04-08 11:24:27,603 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-08 11:24:27,603 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:27,603 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:24:27,627 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:24:27,819 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:24:27,820 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:27,820 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:27,820 INFO L85 PathProgramCache]: Analyzing trace with hash -1297647068, now seen corresponding path program 1 times [2022-04-08 11:24:27,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:27,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [216687750] [2022-04-08 11:24:27,821 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:24:27,821 INFO L85 PathProgramCache]: Analyzing trace with hash -1297647068, now seen corresponding path program 2 times [2022-04-08 11:24:27,821 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:27,821 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1385457469] [2022-04-08 11:24:27,821 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:27,821 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:27,840 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:27,841 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1802778328] [2022-04-08 11:24:27,841 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:27,841 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:27,841 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:27,842 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:24:27,868 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:24:27,900 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:27,900 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:27,901 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:24:27,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:27,911 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:28,017 INFO L272 TraceCheckUtils]: 0: Hoare triple {1125#true} call ULTIMATE.init(); {1125#true} is VALID [2022-04-08 11:24:28,018 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:24:28,019 INFO L290 TraceCheckUtils]: 2: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:24:28,020 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1125#true} {1125#true} #98#return; {1125#true} is VALID [2022-04-08 11:24:28,020 INFO L272 TraceCheckUtils]: 4: Hoare triple {1125#true} call #t~ret6 := main(); {1125#true} is VALID [2022-04-08 11:24:28,020 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:24:28,020 INFO L272 TraceCheckUtils]: 6: Hoare triple {1125#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {1125#true} is VALID [2022-04-08 11:24:28,020 INFO L290 TraceCheckUtils]: 7: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-08 11:24:28,020 INFO L290 TraceCheckUtils]: 8: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-08 11:24:28,021 INFO L290 TraceCheckUtils]: 9: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:24:28,022 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1125#true} {1125#true} #78#return; {1125#true} is VALID [2022-04-08 11:24:28,022 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:24:28,022 INFO L272 TraceCheckUtils]: 12: Hoare triple {1125#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {1125#true} is VALID [2022-04-08 11:24:28,024 INFO L290 TraceCheckUtils]: 13: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-08 11:24:28,024 INFO L290 TraceCheckUtils]: 14: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-08 11:24:28,032 INFO L290 TraceCheckUtils]: 15: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:24:28,032 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1125#true} {1125#true} #80#return; {1125#true} is VALID [2022-04-08 11:24:28,032 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:24:28,032 INFO L290 TraceCheckUtils]: 18: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-08 11:24:28,033 INFO L290 TraceCheckUtils]: 19: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-08 11:24:28,033 INFO L290 TraceCheckUtils]: 20: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:24:28,033 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1125#true} {1125#true} #82#return; {1125#true} is VALID [2022-04-08 11:24:28,033 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:24:28,033 INFO L290 TraceCheckUtils]: 23: Hoare triple {1125#true} assume !false; {1125#true} is VALID [2022-04-08 11:24:28,033 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:24:28,034 INFO L290 TraceCheckUtils]: 25: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-08 11:24:28,034 INFO L290 TraceCheckUtils]: 26: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-08 11:24:28,034 INFO L290 TraceCheckUtils]: 27: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:24:28,034 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1125#true} {1125#true} #84#return; {1125#true} is VALID [2022-04-08 11:24:28,034 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:24:28,034 INFO L290 TraceCheckUtils]: 30: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-08 11:24:28,034 INFO L290 TraceCheckUtils]: 31: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-08 11:24:28,035 INFO L290 TraceCheckUtils]: 32: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-08 11:24:28,035 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1125#true} {1125#true} #86#return; {1125#true} is VALID [2022-04-08 11:24:28,038 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:24:28,038 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:24:28,039 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:24:28,039 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:24:28,040 INFO L290 TraceCheckUtils]: 38: Hoare triple {1243#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1126#false} is VALID [2022-04-08 11:24:28,040 INFO L290 TraceCheckUtils]: 39: Hoare triple {1126#false} assume !false; {1126#false} is VALID [2022-04-08 11:24:28,040 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:24:28,040 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:24:28,041 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:28,041 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1385457469] [2022-04-08 11:24:28,041 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:28,041 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1802778328] [2022-04-08 11:24:28,041 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1802778328] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:28,041 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:28,041 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:24:28,042 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:28,042 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [216687750] [2022-04-08 11:24:28,045 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [216687750] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:28,045 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:28,045 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:24:28,045 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [803645077] [2022-04-08 11:24:28,045 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:28,045 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:24:28,047 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:28,047 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:24:28,070 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:24:28,070 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:24:28,070 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:28,071 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:24:28,072 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:24:28,072 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:24:28,342 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:28,342 INFO L93 Difference]: Finished difference Result 79 states and 105 transitions. [2022-04-08 11:24:28,342 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:24:28,343 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:24:28,344 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:28,344 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:24:28,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2022-04-08 11:24:28,347 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:24:28,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2022-04-08 11:24:28,349 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 69 transitions. [2022-04-08 11:24:28,409 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:24:28,413 INFO L225 Difference]: With dead ends: 79 [2022-04-08 11:24:28,413 INFO L226 Difference]: Without dead ends: 77 [2022-04-08 11:24:28,414 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:24:28,417 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 64 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s 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.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:24:28,419 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.0s Time] [2022-04-08 11:24:28,421 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-08 11:24:28,487 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 70. [2022-04-08 11:24:28,488 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:28,490 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:24:28,490 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:24:28,491 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:24:28,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:28,496 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-08 11:24:28,496 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-08 11:24:28,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:28,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:28,497 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:24:28,499 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:24:28,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:28,505 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-08 11:24:28,505 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-08 11:24:28,506 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:28,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:28,506 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:28,506 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:28,507 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:24:28,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 92 transitions. [2022-04-08 11:24:28,511 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 92 transitions. Word has length 40 [2022-04-08 11:24:28,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:28,512 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 92 transitions. [2022-04-08 11:24:28,512 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:24:28,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 92 transitions. [2022-04-08 11:24:28,628 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:24:28,628 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 92 transitions. [2022-04-08 11:24:28,629 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-08 11:24:28,629 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:28,629 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:24:28,652 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-08 11:24:28,852 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:24:28,853 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:28,853 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:28,853 INFO L85 PathProgramCache]: Analyzing trace with hash -391974204, now seen corresponding path program 1 times [2022-04-08 11:24:28,853 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:28,853 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1105448110] [2022-04-08 11:24:28,854 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:24:28,854 INFO L85 PathProgramCache]: Analyzing trace with hash -391974204, now seen corresponding path program 2 times [2022-04-08 11:24:28,854 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:28,854 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1987215992] [2022-04-08 11:24:28,854 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:28,855 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:28,885 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:28,885 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1067618698] [2022-04-08 11:24:28,885 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:28,885 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:28,885 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:28,890 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:24:28,915 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:24:28,941 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:28,941 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:28,942 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:24:28,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:28,959 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:29,152 INFO L272 TraceCheckUtils]: 0: Hoare triple {1703#true} call ULTIMATE.init(); {1703#true} is VALID [2022-04-08 11:24:29,152 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:24:29,153 INFO L290 TraceCheckUtils]: 2: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:24:29,153 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1703#true} {1703#true} #98#return; {1703#true} is VALID [2022-04-08 11:24:29,153 INFO L272 TraceCheckUtils]: 4: Hoare triple {1703#true} call #t~ret6 := main(); {1703#true} is VALID [2022-04-08 11:24:29,153 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:24:29,153 INFO L272 TraceCheckUtils]: 6: Hoare triple {1703#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {1703#true} is VALID [2022-04-08 11:24:29,153 INFO L290 TraceCheckUtils]: 7: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:24:29,153 INFO L290 TraceCheckUtils]: 8: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:24:29,154 INFO L290 TraceCheckUtils]: 9: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:24:29,154 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1703#true} {1703#true} #78#return; {1703#true} is VALID [2022-04-08 11:24:29,154 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:24:29,154 INFO L272 TraceCheckUtils]: 12: Hoare triple {1703#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {1703#true} is VALID [2022-04-08 11:24:29,154 INFO L290 TraceCheckUtils]: 13: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:24:29,154 INFO L290 TraceCheckUtils]: 14: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:24:29,154 INFO L290 TraceCheckUtils]: 15: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:24:29,154 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1703#true} {1703#true} #80#return; {1703#true} is VALID [2022-04-08 11:24:29,155 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:24:29,155 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:24:29,155 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:24:29,156 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:24:29,156 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:24:29,157 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:24:29,157 INFO L290 TraceCheckUtils]: 23: Hoare triple {1773#(<= 1 main_~y~0)} assume !false; {1773#(<= 1 main_~y~0)} is VALID [2022-04-08 11:24:29,157 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:24:29,157 INFO L290 TraceCheckUtils]: 25: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:24:29,158 INFO L290 TraceCheckUtils]: 26: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:24:29,158 INFO L290 TraceCheckUtils]: 27: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:24:29,158 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:24:29,159 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:24:29,159 INFO L290 TraceCheckUtils]: 30: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:24:29,159 INFO L290 TraceCheckUtils]: 31: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:24:29,159 INFO L290 TraceCheckUtils]: 32: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:24:29,160 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:24:29,160 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:24:29,161 INFO L290 TraceCheckUtils]: 35: Hoare triple {1813#(<= 1 main_~r~0)} assume !false; {1813#(<= 1 main_~r~0)} is VALID [2022-04-08 11:24:29,161 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:24:29,161 INFO L290 TraceCheckUtils]: 37: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:24:29,161 INFO L290 TraceCheckUtils]: 38: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:24:29,161 INFO L290 TraceCheckUtils]: 39: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:24:29,162 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:24:29,162 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:24:29,162 INFO L290 TraceCheckUtils]: 42: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-08 11:24:29,163 INFO L290 TraceCheckUtils]: 43: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-08 11:24:29,163 INFO L290 TraceCheckUtils]: 44: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-08 11:24:29,163 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:24:29,164 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:24:29,164 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:24:29,165 INFO L290 TraceCheckUtils]: 48: Hoare triple {1854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1704#false} is VALID [2022-04-08 11:24:29,165 INFO L290 TraceCheckUtils]: 49: Hoare triple {1704#false} assume !false; {1704#false} is VALID [2022-04-08 11:24:29,165 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:24:29,165 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:24:29,166 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:29,166 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1987215992] [2022-04-08 11:24:29,166 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:29,166 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1067618698] [2022-04-08 11:24:29,166 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1067618698] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:29,166 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:29,166 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:24:29,167 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:29,167 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1105448110] [2022-04-08 11:24:29,167 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1105448110] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:29,167 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:29,167 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:24:29,167 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1536819181] [2022-04-08 11:24:29,167 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:29,168 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:24:29,168 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:29,168 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:24:29,196 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:24:29,196 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:24:29,196 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:29,196 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:24:29,197 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-08 11:24:29,197 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:24:29,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:29,532 INFO L93 Difference]: Finished difference Result 76 states and 97 transitions. [2022-04-08 11:24:29,532 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 11:24:29,533 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:24:29,533 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:29,533 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:24:29,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-08 11:24:29,534 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:24:29,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-08 11:24:29,536 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-08 11:24:29,571 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:24:29,573 INFO L225 Difference]: With dead ends: 76 [2022-04-08 11:24:29,573 INFO L226 Difference]: Without dead ends: 74 [2022-04-08 11:24:29,573 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:24:29,574 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:24:29,574 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:24:29,575 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-08 11:24:29,644 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-08 11:24:29,644 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:29,645 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:24:29,645 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:24:29,645 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:24:29,648 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:29,648 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-08 11:24:29,648 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-08 11:24:29,649 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:29,649 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:29,649 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:24:29,649 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:24:29,652 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:29,652 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-08 11:24:29,653 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-08 11:24:29,653 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:29,653 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:29,653 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:29,653 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:29,654 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:24:29,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 95 transitions. [2022-04-08 11:24:29,657 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 95 transitions. Word has length 50 [2022-04-08 11:24:29,657 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:29,657 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 95 transitions. [2022-04-08 11:24:29,657 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:24:29,657 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 74 states and 95 transitions. [2022-04-08 11:24:29,750 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:24:29,750 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-08 11:24:29,751 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-08 11:24:29,751 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:29,751 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:24:29,779 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:24:29,967 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:24:29,967 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:29,967 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:29,968 INFO L85 PathProgramCache]: Analyzing trace with hash 991781023, now seen corresponding path program 1 times [2022-04-08 11:24:29,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:29,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2086177596] [2022-04-08 11:24:29,968 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:24:29,968 INFO L85 PathProgramCache]: Analyzing trace with hash 991781023, now seen corresponding path program 2 times [2022-04-08 11:24:29,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:29,969 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1560035159] [2022-04-08 11:24:29,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:29,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:29,985 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:29,986 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [652101935] [2022-04-08 11:24:29,986 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:29,986 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:29,986 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:30,008 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:24:30,009 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:24:30,054 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:30,054 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:30,055 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:24:30,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:30,071 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:30,314 INFO L272 TraceCheckUtils]: 0: Hoare triple {2314#true} call ULTIMATE.init(); {2314#true} is VALID [2022-04-08 11:24:30,315 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:24:30,315 INFO L290 TraceCheckUtils]: 2: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:30,315 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2314#true} {2314#true} #98#return; {2314#true} is VALID [2022-04-08 11:24:30,315 INFO L272 TraceCheckUtils]: 4: Hoare triple {2314#true} call #t~ret6 := main(); {2314#true} is VALID [2022-04-08 11:24:30,315 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:24:30,315 INFO L272 TraceCheckUtils]: 6: Hoare triple {2314#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:24:30,316 INFO L290 TraceCheckUtils]: 7: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:30,316 INFO L290 TraceCheckUtils]: 8: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:30,316 INFO L290 TraceCheckUtils]: 9: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:30,316 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2314#true} {2314#true} #78#return; {2314#true} is VALID [2022-04-08 11:24:30,316 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:24:30,316 INFO L272 TraceCheckUtils]: 12: Hoare triple {2314#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:24:30,316 INFO L290 TraceCheckUtils]: 13: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:30,317 INFO L290 TraceCheckUtils]: 14: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:30,317 INFO L290 TraceCheckUtils]: 15: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:30,317 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2314#true} {2314#true} #80#return; {2314#true} is VALID [2022-04-08 11:24:30,317 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:24:30,317 INFO L290 TraceCheckUtils]: 18: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:30,317 INFO L290 TraceCheckUtils]: 19: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:30,317 INFO L290 TraceCheckUtils]: 20: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:30,318 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2314#true} {2314#true} #82#return; {2314#true} is VALID [2022-04-08 11:24:30,318 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:24:30,318 INFO L290 TraceCheckUtils]: 23: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-08 11:24:30,318 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:24:30,318 INFO L290 TraceCheckUtils]: 25: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:30,318 INFO L290 TraceCheckUtils]: 26: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:30,318 INFO L290 TraceCheckUtils]: 27: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:30,318 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2314#true} {2314#true} #84#return; {2314#true} is VALID [2022-04-08 11:24:30,319 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:24:30,319 INFO L290 TraceCheckUtils]: 30: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:30,319 INFO L290 TraceCheckUtils]: 31: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:30,319 INFO L290 TraceCheckUtils]: 32: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:30,319 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2314#true} {2314#true} #86#return; {2314#true} is VALID [2022-04-08 11:24:30,319 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:24:30,319 INFO L290 TraceCheckUtils]: 35: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-08 11:24:30,319 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:24:30,320 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:24:30,321 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:24:30,321 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:24:30,322 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:24:30,322 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:24:30,322 INFO L290 TraceCheckUtils]: 42: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:30,322 INFO L290 TraceCheckUtils]: 43: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:30,323 INFO L290 TraceCheckUtils]: 44: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:30,323 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:24:30,323 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:24:30,324 INFO L290 TraceCheckUtils]: 47: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:30,324 INFO L290 TraceCheckUtils]: 48: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:30,324 INFO L290 TraceCheckUtils]: 49: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:30,332 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:24:30,334 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:24:30,338 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:24:30,340 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:24:30,340 INFO L290 TraceCheckUtils]: 54: Hoare triple {2483#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2315#false} is VALID [2022-04-08 11:24:30,340 INFO L290 TraceCheckUtils]: 55: Hoare triple {2315#false} assume !false; {2315#false} is VALID [2022-04-08 11:24:30,341 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:24:30,341 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:24:38,861 INFO L290 TraceCheckUtils]: 55: Hoare triple {2315#false} assume !false; {2315#false} is VALID [2022-04-08 11:24:38,862 INFO L290 TraceCheckUtils]: 54: Hoare triple {2483#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2315#false} is VALID [2022-04-08 11:24:38,862 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:24:38,863 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:24:38,864 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:24:38,865 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:24:38,865 INFO L290 TraceCheckUtils]: 49: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:38,865 INFO L290 TraceCheckUtils]: 48: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:38,865 INFO L290 TraceCheckUtils]: 47: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:38,865 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:24:38,866 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:24:38,866 INFO L290 TraceCheckUtils]: 44: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:38,866 INFO L290 TraceCheckUtils]: 43: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:38,866 INFO L290 TraceCheckUtils]: 42: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:38,867 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:24:38,867 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:24:38,868 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:24:38,868 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:24:38,869 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:24:38,869 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:24:38,869 INFO L290 TraceCheckUtils]: 35: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-08 11:24:38,869 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:24:38,869 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2314#true} {2314#true} #86#return; {2314#true} is VALID [2022-04-08 11:24:38,870 INFO L290 TraceCheckUtils]: 32: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:38,870 INFO L290 TraceCheckUtils]: 31: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:38,870 INFO L290 TraceCheckUtils]: 30: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:38,870 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:24:38,870 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2314#true} {2314#true} #84#return; {2314#true} is VALID [2022-04-08 11:24:38,870 INFO L290 TraceCheckUtils]: 27: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:38,870 INFO L290 TraceCheckUtils]: 26: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:38,870 INFO L290 TraceCheckUtils]: 25: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:38,870 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:24:38,871 INFO L290 TraceCheckUtils]: 23: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-08 11:24:38,871 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:24:38,871 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2314#true} {2314#true} #82#return; {2314#true} is VALID [2022-04-08 11:24:38,871 INFO L290 TraceCheckUtils]: 20: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:38,871 INFO L290 TraceCheckUtils]: 19: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:38,871 INFO L290 TraceCheckUtils]: 18: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:38,871 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:24:38,872 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2314#true} {2314#true} #80#return; {2314#true} is VALID [2022-04-08 11:24:38,872 INFO L290 TraceCheckUtils]: 15: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:38,872 INFO L290 TraceCheckUtils]: 14: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:38,872 INFO L290 TraceCheckUtils]: 13: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:38,872 INFO L272 TraceCheckUtils]: 12: Hoare triple {2314#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:24:38,872 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:24:38,872 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2314#true} {2314#true} #78#return; {2314#true} is VALID [2022-04-08 11:24:38,872 INFO L290 TraceCheckUtils]: 9: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:38,873 INFO L290 TraceCheckUtils]: 8: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-08 11:24:38,873 INFO L290 TraceCheckUtils]: 7: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-08 11:24:38,873 INFO L272 TraceCheckUtils]: 6: Hoare triple {2314#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {2314#true} is VALID [2022-04-08 11:24:38,873 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:24:38,873 INFO L272 TraceCheckUtils]: 4: Hoare triple {2314#true} call #t~ret6 := main(); {2314#true} is VALID [2022-04-08 11:24:38,873 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2314#true} {2314#true} #98#return; {2314#true} is VALID [2022-04-08 11:24:38,873 INFO L290 TraceCheckUtils]: 2: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-08 11:24:38,874 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:24:38,874 INFO L272 TraceCheckUtils]: 0: Hoare triple {2314#true} call ULTIMATE.init(); {2314#true} is VALID [2022-04-08 11:24:38,874 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:24:38,874 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:38,874 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1560035159] [2022-04-08 11:24:38,874 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:38,875 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [652101935] [2022-04-08 11:24:38,875 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [652101935] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:24:38,875 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:24:38,875 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 11:24:38,875 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:38,875 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2086177596] [2022-04-08 11:24:38,875 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2086177596] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:38,875 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:38,875 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:24:38,876 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1803310276] [2022-04-08 11:24:38,876 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:38,876 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:24:38,876 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:38,877 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:24:38,910 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:24:38,910 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:24:38,910 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:38,911 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:24:38,911 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:24:38,911 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:24:39,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:39,342 INFO L93 Difference]: Finished difference Result 80 states and 100 transitions. [2022-04-08 11:24:39,342 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 11:24:39,342 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:24:39,343 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:39,343 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:24:39,345 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-08 11:24:39,345 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:24:39,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-08 11:24:39,346 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-08 11:24:39,389 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:24:39,391 INFO L225 Difference]: With dead ends: 80 [2022-04-08 11:24:39,391 INFO L226 Difference]: Without dead ends: 78 [2022-04-08 11:24:39,392 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:24:39,392 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:24:39,393 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:24:39,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-08 11:24:39,476 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-08 11:24:39,476 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:39,477 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:24:39,477 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:24:39,477 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:24:39,480 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:39,481 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-08 11:24:39,481 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-08 11:24:39,481 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:39,481 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:39,482 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:24:39,482 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:24:39,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:39,486 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-08 11:24:39,486 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-08 11:24:39,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:39,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:39,486 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:39,486 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:39,487 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:24:39,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 98 transitions. [2022-04-08 11:24:39,490 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 98 transitions. Word has length 56 [2022-04-08 11:24:39,490 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:39,490 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 98 transitions. [2022-04-08 11:24:39,490 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:24:39,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 78 states and 98 transitions. [2022-04-08 11:24:39,607 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:24:39,608 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-08 11:24:39,608 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-08 11:24:39,608 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:39,608 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:24:39,631 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:24:39,809 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:24:39,809 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:39,810 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:39,810 INFO L85 PathProgramCache]: Analyzing trace with hash -2096667334, now seen corresponding path program 1 times [2022-04-08 11:24:39,810 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:39,810 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [462900076] [2022-04-08 11:24:39,810 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:24:39,810 INFO L85 PathProgramCache]: Analyzing trace with hash -2096667334, now seen corresponding path program 2 times [2022-04-08 11:24:39,810 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:39,810 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1848023557] [2022-04-08 11:24:39,810 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:39,811 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:39,827 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:39,827 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1739323591] [2022-04-08 11:24:39,827 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:39,827 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:39,827 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:39,843 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:24:39,875 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:24:39,897 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:39,897 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:39,898 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 11:24:39,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:39,914 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:40,212 INFO L272 TraceCheckUtils]: 0: Hoare triple {3137#true} call ULTIMATE.init(); {3137#true} is VALID [2022-04-08 11:24:40,215 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:24:40,215 INFO L290 TraceCheckUtils]: 2: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:40,215 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3137#true} {3137#true} #98#return; {3137#true} is VALID [2022-04-08 11:24:40,215 INFO L272 TraceCheckUtils]: 4: Hoare triple {3137#true} call #t~ret6 := main(); {3137#true} is VALID [2022-04-08 11:24:40,215 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:24:40,215 INFO L272 TraceCheckUtils]: 6: Hoare triple {3137#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:24:40,215 INFO L290 TraceCheckUtils]: 7: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:40,215 INFO L290 TraceCheckUtils]: 8: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:40,216 INFO L290 TraceCheckUtils]: 9: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:40,216 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3137#true} {3137#true} #78#return; {3137#true} is VALID [2022-04-08 11:24:40,216 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:24:40,216 INFO L272 TraceCheckUtils]: 12: Hoare triple {3137#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:24:40,216 INFO L290 TraceCheckUtils]: 13: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:40,216 INFO L290 TraceCheckUtils]: 14: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:40,216 INFO L290 TraceCheckUtils]: 15: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:40,216 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3137#true} {3137#true} #80#return; {3137#true} is VALID [2022-04-08 11:24:40,216 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:24:40,216 INFO L290 TraceCheckUtils]: 18: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:40,217 INFO L290 TraceCheckUtils]: 19: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:40,217 INFO L290 TraceCheckUtils]: 20: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:40,217 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3137#true} {3137#true} #82#return; {3137#true} is VALID [2022-04-08 11:24:40,217 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:24:40,218 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:24:40,218 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:24:40,218 INFO L290 TraceCheckUtils]: 25: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:40,218 INFO L290 TraceCheckUtils]: 26: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:40,218 INFO L290 TraceCheckUtils]: 27: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:40,219 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:24:40,219 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:24:40,219 INFO L290 TraceCheckUtils]: 30: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:40,219 INFO L290 TraceCheckUtils]: 31: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:40,219 INFO L290 TraceCheckUtils]: 32: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:40,220 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:24:40,220 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:24:40,221 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:24:40,221 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:24:40,221 INFO L290 TraceCheckUtils]: 37: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:40,221 INFO L290 TraceCheckUtils]: 38: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:40,221 INFO L290 TraceCheckUtils]: 39: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:40,222 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:24:40,222 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:24:40,222 INFO L290 TraceCheckUtils]: 42: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:40,222 INFO L290 TraceCheckUtils]: 43: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:40,222 INFO L290 TraceCheckUtils]: 44: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:40,223 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:24:40,223 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:24:40,223 INFO L290 TraceCheckUtils]: 47: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:40,223 INFO L290 TraceCheckUtils]: 48: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:40,223 INFO L290 TraceCheckUtils]: 49: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:40,224 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:24:40,224 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:24:40,225 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:24:40,225 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:24:40,225 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:24:40,226 INFO L290 TraceCheckUtils]: 55: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:40,226 INFO L290 TraceCheckUtils]: 56: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:40,226 INFO L290 TraceCheckUtils]: 57: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:40,226 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:24:40,227 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:24:40,227 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:24:40,228 INFO L290 TraceCheckUtils]: 61: Hoare triple {3326#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3138#false} is VALID [2022-04-08 11:24:40,228 INFO L290 TraceCheckUtils]: 62: Hoare triple {3138#false} assume !false; {3138#false} is VALID [2022-04-08 11:24:40,228 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:24:40,229 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:24:58,468 INFO L290 TraceCheckUtils]: 62: Hoare triple {3138#false} assume !false; {3138#false} is VALID [2022-04-08 11:24:58,469 INFO L290 TraceCheckUtils]: 61: Hoare triple {3326#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3138#false} is VALID [2022-04-08 11:24:58,469 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:24:58,470 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:24:58,471 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:24:58,471 INFO L290 TraceCheckUtils]: 57: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:58,471 INFO L290 TraceCheckUtils]: 56: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:58,471 INFO L290 TraceCheckUtils]: 55: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:58,471 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:24:58,472 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:24:58,496 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:24:58,497 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:24:58,498 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:24:58,498 INFO L290 TraceCheckUtils]: 49: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:58,498 INFO L290 TraceCheckUtils]: 48: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:58,498 INFO L290 TraceCheckUtils]: 47: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:58,498 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:24:58,499 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:24:58,499 INFO L290 TraceCheckUtils]: 44: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:58,499 INFO L290 TraceCheckUtils]: 43: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:58,499 INFO L290 TraceCheckUtils]: 42: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:58,499 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:24:58,500 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:24:58,500 INFO L290 TraceCheckUtils]: 39: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:58,500 INFO L290 TraceCheckUtils]: 38: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:58,500 INFO L290 TraceCheckUtils]: 37: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:58,501 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:24:58,501 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:24:58,501 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:24:58,502 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:24:58,502 INFO L290 TraceCheckUtils]: 32: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:58,502 INFO L290 TraceCheckUtils]: 31: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:58,502 INFO L290 TraceCheckUtils]: 30: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:58,503 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:24:58,503 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:24:58,503 INFO L290 TraceCheckUtils]: 27: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:58,503 INFO L290 TraceCheckUtils]: 26: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:58,503 INFO L290 TraceCheckUtils]: 25: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:58,504 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:24:58,504 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:24:58,504 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:24:58,505 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3137#true} {3137#true} #82#return; {3137#true} is VALID [2022-04-08 11:24:58,505 INFO L290 TraceCheckUtils]: 20: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:58,505 INFO L290 TraceCheckUtils]: 19: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:58,505 INFO L290 TraceCheckUtils]: 18: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:58,505 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:24:58,505 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3137#true} {3137#true} #80#return; {3137#true} is VALID [2022-04-08 11:24:58,505 INFO L290 TraceCheckUtils]: 15: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:58,505 INFO L290 TraceCheckUtils]: 14: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:58,505 INFO L290 TraceCheckUtils]: 13: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:58,505 INFO L272 TraceCheckUtils]: 12: Hoare triple {3137#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:24:58,506 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:24:58,506 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3137#true} {3137#true} #78#return; {3137#true} is VALID [2022-04-08 11:24:58,506 INFO L290 TraceCheckUtils]: 9: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:58,506 INFO L290 TraceCheckUtils]: 8: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-08 11:24:58,506 INFO L290 TraceCheckUtils]: 7: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-08 11:24:58,506 INFO L272 TraceCheckUtils]: 6: Hoare triple {3137#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {3137#true} is VALID [2022-04-08 11:24:58,506 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:24:58,506 INFO L272 TraceCheckUtils]: 4: Hoare triple {3137#true} call #t~ret6 := main(); {3137#true} is VALID [2022-04-08 11:24:58,506 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3137#true} {3137#true} #98#return; {3137#true} is VALID [2022-04-08 11:24:58,506 INFO L290 TraceCheckUtils]: 2: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-08 11:24:58,507 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:24:58,507 INFO L272 TraceCheckUtils]: 0: Hoare triple {3137#true} call ULTIMATE.init(); {3137#true} is VALID [2022-04-08 11:24:58,507 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:24:58,507 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:58,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1848023557] [2022-04-08 11:24:58,507 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:58,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1739323591] [2022-04-08 11:24:58,508 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1739323591] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:24:58,508 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:24:58,508 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-04-08 11:24:58,508 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:58,508 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [462900076] [2022-04-08 11:24:58,508 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [462900076] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:58,508 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:58,508 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 11:24:58,508 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2146259909] [2022-04-08 11:24:58,508 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:58,509 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:24:58,509 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:58,509 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:24:58,547 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:24:58,547 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 11:24:58,547 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:58,548 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 11:24:58,548 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-08 11:24:58,548 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:24:59,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:59,211 INFO L93 Difference]: Finished difference Result 111 states and 142 transitions. [2022-04-08 11:24:59,211 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 11:24:59,211 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:24:59,212 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:59,212 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:24:59,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 101 transitions. [2022-04-08 11:24:59,214 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:24:59,216 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 101 transitions. [2022-04-08 11:24:59,216 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 101 transitions. [2022-04-08 11:24:59,298 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:24:59,301 INFO L225 Difference]: With dead ends: 111 [2022-04-08 11:24:59,301 INFO L226 Difference]: Without dead ends: 108 [2022-04-08 11:24:59,301 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 116 SyntacticMatches, 2 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:24:59,302 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:24:59,302 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:24:59,302 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 108 states. [2022-04-08 11:24:59,446 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 108 to 103. [2022-04-08 11:24:59,446 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:59,447 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:24:59,447 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:24:59,447 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:24:59,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:59,452 INFO L93 Difference]: Finished difference Result 108 states and 138 transitions. [2022-04-08 11:24:59,452 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 138 transitions. [2022-04-08 11:24:59,452 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:59,452 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:59,453 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:24:59,453 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:24:59,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:59,457 INFO L93 Difference]: Finished difference Result 108 states and 138 transitions. [2022-04-08 11:24:59,458 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 138 transitions. [2022-04-08 11:24:59,458 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:59,458 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:59,458 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:59,458 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:59,459 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:24:59,462 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 132 transitions. [2022-04-08 11:24:59,463 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 132 transitions. Word has length 63 [2022-04-08 11:24:59,463 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:59,463 INFO L478 AbstractCegarLoop]: Abstraction has 103 states and 132 transitions. [2022-04-08 11:24:59,463 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:24:59,463 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 103 states and 132 transitions. [2022-04-08 11:24:59,613 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:24:59,614 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 132 transitions. [2022-04-08 11:24:59,614 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-08 11:24:59,615 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:59,615 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:24:59,631 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-08 11:24:59,819 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:24:59,819 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:59,820 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:59,820 INFO L85 PathProgramCache]: Analyzing trace with hash -2105983492, now seen corresponding path program 1 times [2022-04-08 11:24:59,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:59,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1155651751] [2022-04-08 11:24:59,821 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:24:59,821 INFO L85 PathProgramCache]: Analyzing trace with hash -2105983492, now seen corresponding path program 2 times [2022-04-08 11:24:59,821 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:59,821 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1295680941] [2022-04-08 11:24:59,821 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:59,821 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:59,845 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:59,846 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1999350403] [2022-04-08 11:24:59,846 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:59,846 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:59,846 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:59,848 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:24:59,858 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:24:59,906 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:59,906 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:59,907 INFO L263 TraceCheckSpWp]: Trace formula consists of 200 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-08 11:24:59,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:59,924 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:00,890 INFO L272 TraceCheckUtils]: 0: Hoare triple {4169#true} call ULTIMATE.init(); {4169#true} is VALID [2022-04-08 11:25:00,890 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:00,890 INFO L290 TraceCheckUtils]: 2: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,890 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4169#true} {4169#true} #98#return; {4169#true} is VALID [2022-04-08 11:25:00,891 INFO L272 TraceCheckUtils]: 4: Hoare triple {4169#true} call #t~ret6 := main(); {4169#true} is VALID [2022-04-08 11:25:00,891 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:00,891 INFO L272 TraceCheckUtils]: 6: Hoare triple {4169#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:00,891 INFO L290 TraceCheckUtils]: 7: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,891 INFO L290 TraceCheckUtils]: 8: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,891 INFO L290 TraceCheckUtils]: 9: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,891 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4169#true} {4169#true} #78#return; {4169#true} is VALID [2022-04-08 11:25:00,891 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:00,891 INFO L272 TraceCheckUtils]: 12: Hoare triple {4169#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {4169#true} is VALID [2022-04-08 11:25:00,892 INFO L290 TraceCheckUtils]: 13: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,892 INFO L290 TraceCheckUtils]: 14: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,892 INFO L290 TraceCheckUtils]: 15: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,892 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4169#true} {4169#true} #80#return; {4169#true} is VALID [2022-04-08 11:25:00,892 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:00,892 INFO L290 TraceCheckUtils]: 18: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,892 INFO L290 TraceCheckUtils]: 19: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,892 INFO L290 TraceCheckUtils]: 20: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,892 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4169#true} {4169#true} #82#return; {4169#true} is VALID [2022-04-08 11:25:00,893 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:00,893 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:00,893 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:00,893 INFO L290 TraceCheckUtils]: 25: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,894 INFO L290 TraceCheckUtils]: 26: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,894 INFO L290 TraceCheckUtils]: 27: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,894 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:00,894 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:00,895 INFO L290 TraceCheckUtils]: 30: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,895 INFO L290 TraceCheckUtils]: 31: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,895 INFO L290 TraceCheckUtils]: 32: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,895 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:00,896 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:00,896 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:00,896 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:00,897 INFO L290 TraceCheckUtils]: 37: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,897 INFO L290 TraceCheckUtils]: 38: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,897 INFO L290 TraceCheckUtils]: 39: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,897 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:00,897 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:00,898 INFO L290 TraceCheckUtils]: 42: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,898 INFO L290 TraceCheckUtils]: 43: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,898 INFO L290 TraceCheckUtils]: 44: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,898 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:00,898 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:00,899 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:00,899 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:00,899 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:00,900 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:00,901 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:00,901 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:00,901 INFO L290 TraceCheckUtils]: 53: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,901 INFO L290 TraceCheckUtils]: 54: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,901 INFO L290 TraceCheckUtils]: 55: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,902 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:00,902 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:00,903 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:00,903 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:00,903 INFO L290 TraceCheckUtils]: 60: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,903 INFO L290 TraceCheckUtils]: 61: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,903 INFO L290 TraceCheckUtils]: 62: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,904 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:00,904 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:00,918 INFO L290 TraceCheckUtils]: 65: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,918 INFO L290 TraceCheckUtils]: 66: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,918 INFO L290 TraceCheckUtils]: 67: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,919 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:00,919 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:00,920 INFO L290 TraceCheckUtils]: 70: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-08 11:25:00,920 INFO L290 TraceCheckUtils]: 71: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-08 11:25:00,920 INFO L290 TraceCheckUtils]: 72: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-08 11:25:00,920 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:00,921 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:00,922 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:00,922 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:00,923 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:00,923 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:00,923 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:00,924 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:00,925 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:00,926 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:00,926 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:00,926 INFO L290 TraceCheckUtils]: 84: Hoare triple {4433#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4170#false} is VALID [2022-04-08 11:25:00,926 INFO L290 TraceCheckUtils]: 85: Hoare triple {4170#false} assume !false; {4170#false} is VALID [2022-04-08 11:25:00,927 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:00,927 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:25:57,632 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:57,632 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1295680941] [2022-04-08 11:25:57,633 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:57,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1999350403] [2022-04-08 11:25:57,633 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1999350403] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 11:25:57,633 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 11:25:57,633 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2022-04-08 11:25:57,633 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:57,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1155651751] [2022-04-08 11:25:57,633 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1155651751] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:57,633 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:57,633 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 11:25:57,633 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [336086013] [2022-04-08 11:25:57,634 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:57,634 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:25:57,634 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:57,635 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:25:57,690 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:57,691 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 11:25:57,691 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:57,691 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 11:25:57,691 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=284, Unknown=0, NotChecked=0, Total=380 [2022-04-08 11:25:57,692 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:25:59,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:59,643 INFO L93 Difference]: Finished difference Result 147 states and 191 transitions. [2022-04-08 11:25:59,643 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 11:25:59,643 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:25:59,644 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:59,644 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:25:59,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 114 transitions. [2022-04-08 11:25:59,649 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:25:59,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 114 transitions. [2022-04-08 11:25:59,653 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 114 transitions. [2022-04-08 11:25:59,766 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:25:59,769 INFO L225 Difference]: With dead ends: 147 [2022-04-08 11:25:59,769 INFO L226 Difference]: Without dead ends: 144 [2022-04-08 11:25:59,770 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:25:59,770 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 27 mSDsluCounter, 219 mSDsCounter, 0 mSdLazyCounter, 628 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s 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.7s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:59,770 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.7s Time] [2022-04-08 11:25:59,771 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states. [2022-04-08 11:25:59,913 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 121. [2022-04-08 11:25:59,913 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:59,913 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:25:59,914 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:25:59,914 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:25:59,919 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:59,919 INFO L93 Difference]: Finished difference Result 144 states and 187 transitions. [2022-04-08 11:25:59,919 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 187 transitions. [2022-04-08 11:25:59,920 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:59,920 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:59,920 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:25:59,921 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:25:59,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:59,926 INFO L93 Difference]: Finished difference Result 144 states and 187 transitions. [2022-04-08 11:25:59,926 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 187 transitions. [2022-04-08 11:25:59,926 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:59,926 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:59,926 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:59,926 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:59,928 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:25:59,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 121 states and 154 transitions. [2022-04-08 11:25:59,932 INFO L78 Accepts]: Start accepts. Automaton has 121 states and 154 transitions. Word has length 86 [2022-04-08 11:25:59,932 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:59,932 INFO L478 AbstractCegarLoop]: Abstraction has 121 states and 154 transitions. [2022-04-08 11:25:59,932 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:25:59,932 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 121 states and 154 transitions. [2022-04-08 11:26:00,146 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:00,147 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 154 transitions. [2022-04-08 11:26:00,147 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2022-04-08 11:26:00,148 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:26:00,148 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:00,165 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-08 11:26:00,348 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:00,348 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:26:00,349 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:26:00,349 INFO L85 PathProgramCache]: Analyzing trace with hash -895340852, now seen corresponding path program 3 times [2022-04-08 11:26:00,349 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:00,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [921896094] [2022-04-08 11:26:00,349 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:26:00,349 INFO L85 PathProgramCache]: Analyzing trace with hash -895340852, now seen corresponding path program 4 times [2022-04-08 11:26:00,350 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:26:00,350 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1053638835] [2022-04-08 11:26:00,350 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:26:00,350 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:26:00,364 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:26:00,364 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [585845843] [2022-04-08 11:26:00,364 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:26:00,364 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:26:00,364 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:26:00,365 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:00,373 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:00,416 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:26:00,416 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:26:00,417 INFO L263 TraceCheckSpWp]: Trace formula consists of 184 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 11:26:00,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:26:00,432 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:26:00,660 INFO L272 TraceCheckUtils]: 0: Hoare triple {5433#true} call ULTIMATE.init(); {5433#true} is VALID [2022-04-08 11:26:00,660 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:00,660 INFO L290 TraceCheckUtils]: 2: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,661 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5433#true} {5433#true} #98#return; {5433#true} is VALID [2022-04-08 11:26:00,661 INFO L272 TraceCheckUtils]: 4: Hoare triple {5433#true} call #t~ret6 := main(); {5433#true} is VALID [2022-04-08 11:26:00,661 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:00,661 INFO L272 TraceCheckUtils]: 6: Hoare triple {5433#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:00,661 INFO L290 TraceCheckUtils]: 7: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:00,661 INFO L290 TraceCheckUtils]: 8: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:00,661 INFO L290 TraceCheckUtils]: 9: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,661 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5433#true} {5433#true} #78#return; {5433#true} is VALID [2022-04-08 11:26:00,661 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:00,661 INFO L272 TraceCheckUtils]: 12: Hoare triple {5433#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {5433#true} is VALID [2022-04-08 11:26:00,661 INFO L290 TraceCheckUtils]: 13: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:00,661 INFO L290 TraceCheckUtils]: 14: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:00,661 INFO L290 TraceCheckUtils]: 15: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,661 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5433#true} {5433#true} #80#return; {5433#true} is VALID [2022-04-08 11:26:00,662 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:00,662 INFO L290 TraceCheckUtils]: 18: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:00,662 INFO L290 TraceCheckUtils]: 19: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:00,662 INFO L290 TraceCheckUtils]: 20: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,662 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5433#true} {5433#true} #82#return; {5433#true} is VALID [2022-04-08 11:26:00,662 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:00,662 INFO L290 TraceCheckUtils]: 23: Hoare triple {5433#true} assume !false; {5433#true} is VALID [2022-04-08 11:26:00,662 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:00,662 INFO L290 TraceCheckUtils]: 25: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:00,662 INFO L290 TraceCheckUtils]: 26: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:00,662 INFO L290 TraceCheckUtils]: 27: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,662 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5433#true} {5433#true} #84#return; {5433#true} is VALID [2022-04-08 11:26:00,662 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:00,663 INFO L290 TraceCheckUtils]: 30: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:00,663 INFO L290 TraceCheckUtils]: 31: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:00,663 INFO L290 TraceCheckUtils]: 32: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,663 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {5433#true} {5433#true} #86#return; {5433#true} is VALID [2022-04-08 11:26:00,663 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:00,663 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:00,663 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:00,664 INFO L290 TraceCheckUtils]: 37: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:00,664 INFO L290 TraceCheckUtils]: 38: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:00,664 INFO L290 TraceCheckUtils]: 39: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,664 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:00,664 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:00,664 INFO L290 TraceCheckUtils]: 42: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:00,665 INFO L290 TraceCheckUtils]: 43: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:00,665 INFO L290 TraceCheckUtils]: 44: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,665 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:00,665 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:00,666 INFO L290 TraceCheckUtils]: 47: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:00,666 INFO L290 TraceCheckUtils]: 48: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:00,666 INFO L290 TraceCheckUtils]: 49: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,666 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:00,667 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:00,667 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:00,668 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:00,668 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:00,668 INFO L290 TraceCheckUtils]: 55: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:00,668 INFO L290 TraceCheckUtils]: 56: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:00,668 INFO L290 TraceCheckUtils]: 57: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,669 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:00,669 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:00,669 INFO L290 TraceCheckUtils]: 60: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-08 11:26:00,669 INFO L290 TraceCheckUtils]: 61: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-08 11:26:00,669 INFO L290 TraceCheckUtils]: 62: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-08 11:26:00,670 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:00,670 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:00,670 INFO L290 TraceCheckUtils]: 65: Hoare triple {5434#false} assume !false; {5434#false} is VALID [2022-04-08 11:26:00,670 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:00,670 INFO L290 TraceCheckUtils]: 67: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-08 11:26:00,670 INFO L290 TraceCheckUtils]: 68: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-08 11:26:00,671 INFO L290 TraceCheckUtils]: 69: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-08 11:26:00,671 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {5434#false} {5434#false} #88#return; {5434#false} is VALID [2022-04-08 11:26:00,671 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:00,671 INFO L290 TraceCheckUtils]: 72: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-08 11:26:00,671 INFO L290 TraceCheckUtils]: 73: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-08 11:26:00,671 INFO L290 TraceCheckUtils]: 74: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-08 11:26:00,671 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {5434#false} {5434#false} #90#return; {5434#false} is VALID [2022-04-08 11:26:00,671 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:00,671 INFO L290 TraceCheckUtils]: 77: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-08 11:26:00,671 INFO L290 TraceCheckUtils]: 78: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-08 11:26:00,671 INFO L290 TraceCheckUtils]: 79: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-08 11:26:00,671 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {5434#false} {5434#false} #92#return; {5434#false} is VALID [2022-04-08 11:26:00,671 INFO L290 TraceCheckUtils]: 81: Hoare triple {5434#false} assume !(~r~0 >= 2 * ~b~0); {5434#false} is VALID [2022-04-08 11:26:00,671 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:00,672 INFO L290 TraceCheckUtils]: 83: Hoare triple {5434#false} assume !false; {5434#false} is VALID [2022-04-08 11:26:00,672 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:00,672 INFO L290 TraceCheckUtils]: 85: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-08 11:26:00,672 INFO L290 TraceCheckUtils]: 86: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-08 11:26:00,672 INFO L290 TraceCheckUtils]: 87: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-08 11:26:00,672 INFO L284 TraceCheckUtils]: 88: Hoare quadruple {5434#false} {5434#false} #84#return; {5434#false} is VALID [2022-04-08 11:26:00,672 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:00,672 INFO L290 TraceCheckUtils]: 90: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-08 11:26:00,672 INFO L290 TraceCheckUtils]: 91: Hoare triple {5434#false} assume 0 == ~cond; {5434#false} is VALID [2022-04-08 11:26:00,672 INFO L290 TraceCheckUtils]: 92: Hoare triple {5434#false} assume !false; {5434#false} is VALID [2022-04-08 11:26:00,672 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:00,673 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:26:00,673 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:26:00,673 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1053638835] [2022-04-08 11:26:00,673 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:26:00,673 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [585845843] [2022-04-08 11:26:00,673 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [585845843] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:26:00,673 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:26:00,673 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:26:00,674 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:26:00,674 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [921896094] [2022-04-08 11:26:00,674 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [921896094] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:26:00,674 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:26:00,674 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:26:00,674 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [641168732] [2022-04-08 11:26:00,674 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:26:00,675 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:00,675 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:26:00,675 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:00,725 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:00,726 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:26:00,726 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:00,726 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:26:00,726 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:26:00,726 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:01,144 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:01,144 INFO L93 Difference]: Finished difference Result 185 states and 240 transitions. [2022-04-08 11:26:01,145 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 11:26:01,145 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:01,145 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:26:01,145 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:01,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2022-04-08 11:26:01,147 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:01,148 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2022-04-08 11:26:01,149 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 90 transitions. [2022-04-08 11:26:01,224 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:01,226 INFO L225 Difference]: With dead ends: 185 [2022-04-08 11:26:01,226 INFO L226 Difference]: Without dead ends: 125 [2022-04-08 11:26:01,227 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:01,228 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:01,228 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:01,228 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 125 states. [2022-04-08 11:26:01,399 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 125 to 120. [2022-04-08 11:26:01,399 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:26:01,400 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:01,400 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:01,400 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:01,405 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:01,405 INFO L93 Difference]: Finished difference Result 125 states and 159 transitions. [2022-04-08 11:26:01,405 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 159 transitions. [2022-04-08 11:26:01,405 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:26:01,405 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:26:01,406 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:01,406 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:01,410 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:01,410 INFO L93 Difference]: Finished difference Result 125 states and 159 transitions. [2022-04-08 11:26:01,410 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 159 transitions. [2022-04-08 11:26:01,410 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:26:01,410 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:26:01,410 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:26:01,410 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:26:01,411 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:01,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 152 transitions. [2022-04-08 11:26:01,414 INFO L78 Accepts]: Start accepts. Automaton has 120 states and 152 transitions. Word has length 93 [2022-04-08 11:26:01,414 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:26:01,414 INFO L478 AbstractCegarLoop]: Abstraction has 120 states and 152 transitions. [2022-04-08 11:26:01,414 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:01,414 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 120 states and 152 transitions. [2022-04-08 11:26:01,592 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:01,592 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 152 transitions. [2022-04-08 11:26:01,592 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2022-04-08 11:26:01,593 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:26:01,593 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:01,609 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:01,799 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:01,799 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:26:01,800 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:26:01,800 INFO L85 PathProgramCache]: Analyzing trace with hash -39671046, now seen corresponding path program 3 times [2022-04-08 11:26:01,800 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:01,800 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [95609815] [2022-04-08 11:26:01,800 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:26:01,801 INFO L85 PathProgramCache]: Analyzing trace with hash -39671046, now seen corresponding path program 4 times [2022-04-08 11:26:01,801 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:26:01,801 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [84188903] [2022-04-08 11:26:01,801 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:26:01,801 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:26:01,816 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:26:01,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [583318328] [2022-04-08 11:26:01,816 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:26:01,816 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:26:01,816 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:26:01,817 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:01,826 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:01,879 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:26:01,879 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:26:01,880 INFO L263 TraceCheckSpWp]: Trace formula consists of 211 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-08 11:26:01,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:26:01,901 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:27:08,787 INFO L272 TraceCheckUtils]: 0: Hoare triple {6579#true} call ULTIMATE.init(); {6579#true} is VALID [2022-04-08 11:27:08,788 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:08,788 INFO L290 TraceCheckUtils]: 2: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,788 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6579#true} {6579#true} #98#return; {6579#true} is VALID [2022-04-08 11:27:08,788 INFO L272 TraceCheckUtils]: 4: Hoare triple {6579#true} call #t~ret6 := main(); {6579#true} is VALID [2022-04-08 11:27:08,788 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:08,788 INFO L272 TraceCheckUtils]: 6: Hoare triple {6579#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:08,788 INFO L290 TraceCheckUtils]: 7: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,789 INFO L290 TraceCheckUtils]: 8: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,789 INFO L290 TraceCheckUtils]: 9: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,789 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6579#true} {6579#true} #78#return; {6579#true} is VALID [2022-04-08 11:27:08,789 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:08,789 INFO L272 TraceCheckUtils]: 12: Hoare triple {6579#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:08,789 INFO L290 TraceCheckUtils]: 13: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,789 INFO L290 TraceCheckUtils]: 14: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,789 INFO L290 TraceCheckUtils]: 15: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,789 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6579#true} {6579#true} #80#return; {6579#true} is VALID [2022-04-08 11:27:08,789 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:08,789 INFO L290 TraceCheckUtils]: 18: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,790 INFO L290 TraceCheckUtils]: 19: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,790 INFO L290 TraceCheckUtils]: 20: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,790 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6579#true} {6579#true} #82#return; {6579#true} is VALID [2022-04-08 11:27:08,790 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:08,791 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:08,791 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:08,791 INFO L290 TraceCheckUtils]: 25: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,791 INFO L290 TraceCheckUtils]: 26: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,791 INFO L290 TraceCheckUtils]: 27: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,792 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:08,792 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:08,792 INFO L290 TraceCheckUtils]: 30: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,792 INFO L290 TraceCheckUtils]: 31: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,792 INFO L290 TraceCheckUtils]: 32: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,793 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:08,793 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:08,794 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:08,794 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:08,794 INFO L290 TraceCheckUtils]: 37: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,794 INFO L290 TraceCheckUtils]: 38: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,794 INFO L290 TraceCheckUtils]: 39: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,795 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:08,795 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:08,795 INFO L290 TraceCheckUtils]: 42: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,795 INFO L290 TraceCheckUtils]: 43: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,795 INFO L290 TraceCheckUtils]: 44: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,796 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:08,796 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:08,796 INFO L290 TraceCheckUtils]: 47: Hoare triple {6579#true} ~cond := #in~cond; {6727#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:27:08,797 INFO L290 TraceCheckUtils]: 48: Hoare triple {6727#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6731#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:27:08,797 INFO L290 TraceCheckUtils]: 49: Hoare triple {6731#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6731#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:27:08,798 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6731#(not (= |__VERIFIER_assert_#in~cond| 0))} {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #92#return; {6738#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:08,798 INFO L290 TraceCheckUtils]: 51: Hoare triple {6738#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {6738#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:08,798 INFO L272 TraceCheckUtils]: 52: Hoare triple {6738#(and (<= main_~a~0 1) (= main_~x~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)); {6579#true} is VALID [2022-04-08 11:27:08,799 INFO L290 TraceCheckUtils]: 53: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,799 INFO L290 TraceCheckUtils]: 54: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,799 INFO L290 TraceCheckUtils]: 55: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,799 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {6579#true} {6738#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #94#return; {6738#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:27:08,800 INFO L290 TraceCheckUtils]: 57: Hoare triple {6738#(and (<= main_~a~0 1) (= main_~x~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; {6760#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:27:08,801 INFO L290 TraceCheckUtils]: 58: Hoare triple {6760#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} assume !false; {6760#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:27:08,801 INFO L272 TraceCheckUtils]: 59: Hoare triple {6760#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (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:08,801 INFO L290 TraceCheckUtils]: 60: Hoare triple {6579#true} ~cond := #in~cond; {6727#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:27:08,802 INFO L290 TraceCheckUtils]: 61: Hoare triple {6727#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6731#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:27:08,802 INFO L290 TraceCheckUtils]: 62: Hoare triple {6731#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6731#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:27:08,803 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {6731#(not (= |__VERIFIER_assert_#in~cond| 0))} {6760#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #88#return; {6779#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 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:08,803 INFO L272 TraceCheckUtils]: 64: Hoare triple {6779#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 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 ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:08,803 INFO L290 TraceCheckUtils]: 65: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,803 INFO L290 TraceCheckUtils]: 66: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,803 INFO L290 TraceCheckUtils]: 67: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,804 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {6579#true} {6779#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #90#return; {6779#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 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:08,804 INFO L272 TraceCheckUtils]: 69: Hoare triple {6779#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 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 >= 0 then 1 else 0)); {6579#true} is VALID [2022-04-08 11:27:08,804 INFO L290 TraceCheckUtils]: 70: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,804 INFO L290 TraceCheckUtils]: 71: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,805 INFO L290 TraceCheckUtils]: 72: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,805 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {6579#true} {6779#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #92#return; {6779#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 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:08,806 INFO L290 TraceCheckUtils]: 74: Hoare triple {6779#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (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); {6813#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (* 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:08,806 INFO L272 TraceCheckUtils]: 75: Hoare triple {6813#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (* 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:08,806 INFO L290 TraceCheckUtils]: 76: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,806 INFO L290 TraceCheckUtils]: 77: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,806 INFO L290 TraceCheckUtils]: 78: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,807 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {6579#true} {6813#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (* 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; {6813#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (* 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:08,811 INFO L290 TraceCheckUtils]: 80: Hoare triple {6813#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= 0 main_~r~0) (<= (* 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; {6832#(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) (<= 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:08,811 INFO L290 TraceCheckUtils]: 81: Hoare triple {6832#(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) (<= 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; {6832#(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) (<= 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:08,812 INFO L272 TraceCheckUtils]: 82: Hoare triple {6832#(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) (<= 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:08,812 INFO L290 TraceCheckUtils]: 83: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,812 INFO L290 TraceCheckUtils]: 84: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,812 INFO L290 TraceCheckUtils]: 85: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,813 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {6579#true} {6832#(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) (<= 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; {6832#(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) (<= 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:08,813 INFO L272 TraceCheckUtils]: 87: Hoare triple {6832#(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) (<= 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:08,813 INFO L290 TraceCheckUtils]: 88: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,813 INFO L290 TraceCheckUtils]: 89: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,813 INFO L290 TraceCheckUtils]: 90: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,814 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {6579#true} {6832#(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) (<= 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; {6832#(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) (<= 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:08,814 INFO L272 TraceCheckUtils]: 92: Hoare triple {6832#(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) (<= 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:08,814 INFO L290 TraceCheckUtils]: 93: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,819 INFO L290 TraceCheckUtils]: 94: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,819 INFO L290 TraceCheckUtils]: 95: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,824 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {6579#true} {6832#(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) (<= 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; {6832#(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) (<= 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:08,825 INFO L290 TraceCheckUtils]: 97: Hoare triple {6832#(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) (<= 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); {6884#(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:08,829 INFO L290 TraceCheckUtils]: 98: Hoare triple {6884#(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; {6888#(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:08,829 INFO L290 TraceCheckUtils]: 99: Hoare triple {6888#(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; {6888#(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:08,830 INFO L272 TraceCheckUtils]: 100: Hoare triple {6888#(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:08,830 INFO L290 TraceCheckUtils]: 101: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-08 11:27:08,830 INFO L290 TraceCheckUtils]: 102: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-08 11:27:08,830 INFO L290 TraceCheckUtils]: 103: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-08 11:27:08,830 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {6579#true} {6888#(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; {6888#(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:08,833 INFO L272 TraceCheckUtils]: 105: Hoare triple {6888#(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)); {6910#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:27:08,833 INFO L290 TraceCheckUtils]: 106: Hoare triple {6910#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6914#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:27:08,833 INFO L290 TraceCheckUtils]: 107: Hoare triple {6914#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6580#false} is VALID [2022-04-08 11:27:08,833 INFO L290 TraceCheckUtils]: 108: Hoare triple {6580#false} assume !false; {6580#false} is VALID [2022-04-08 11:27:08,834 INFO L134 CoverageAnalysis]: Checked inductivity of 424 backedges. 53 proven. 67 refuted. 0 times theorem prover too weak. 304 trivial. 0 not checked. [2022-04-08 11:27:08,834 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:27:18,053 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 11:28:02,198 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:28:02,198 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [84188903] [2022-04-08 11:28:02,198 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:28:02,198 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [583318328] [2022-04-08 11:28:02,198 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [583318328] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 11:28:02,198 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 11:28:02,198 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2022-04-08 11:28:02,199 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:28:02,199 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [95609815] [2022-04-08 11:28:02,199 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [95609815] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:28:02,199 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:28:02,199 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 11:28:02,199 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [237113542] [2022-04-08 11:28:02,199 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:28:02,200 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 13 states have internal predecessors, (29), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 8 states have call predecessors, (18), 9 states have call successors, (18) Word has length 109 [2022-04-08 11:28:02,200 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:28:02,200 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 13 states have internal predecessors, (29), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 8 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-08 11:28:02,271 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:02,271 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 11:28:02,271 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:28:02,272 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 11:28:02,272 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=432, Unknown=0, NotChecked=0, Total=552 [2022-04-08 11:28:02,272 INFO L87 Difference]: Start difference. First operand 120 states and 152 transitions. Second operand has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 13 states have internal predecessors, (29), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 8 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-08 11:28:06,965 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:28:06,965 INFO L93 Difference]: Finished difference Result 164 states and 211 transitions. [2022-04-08 11:28:06,965 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 11:28:06,966 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 13 states have internal predecessors, (29), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 8 states have call predecessors, (18), 9 states have call successors, (18) Word has length 109 [2022-04-08 11:28:06,966 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:28:06,966 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 13 states have internal predecessors, (29), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 8 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-08 11:28:06,969 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-08 11:28:06,969 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 13 states have internal predecessors, (29), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 8 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-08 11:28:06,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-08 11:28:06,971 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 125 transitions. [2022-04-08 11:28:07,115 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:07,118 INFO L225 Difference]: With dead ends: 164 [2022-04-08 11:28:07,118 INFO L226 Difference]: Without dead ends: 161 [2022-04-08 11:28:07,119 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 186 GetRequests, 160 SyntacticMatches, 2 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 203 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=133, Invalid=517, Unknown=0, NotChecked=0, Total=650 [2022-04-08 11:28:07,119 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 32 mSDsluCounter, 159 mSDsCounter, 0 mSdLazyCounter, 554 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 208 SdHoareTripleChecker+Invalid, 597 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 554 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-08 11:28:07,120 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [44 Valid, 208 Invalid, 597 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 554 Invalid, 0 Unknown, 0 Unchecked, 2.2s Time] [2022-04-08 11:28:07,120 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 161 states. [2022-04-08 11:28:07,443 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 161 to 156. [2022-04-08 11:28:07,443 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:28:07,443 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:07,444 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:07,444 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:07,449 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:28:07,449 INFO L93 Difference]: Finished difference Result 161 states and 207 transitions. [2022-04-08 11:28:07,449 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 207 transitions. [2022-04-08 11:28:07,450 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:28:07,450 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:28:07,450 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:07,450 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:07,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:28:07,456 INFO L93 Difference]: Finished difference Result 161 states and 207 transitions. [2022-04-08 11:28:07,456 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 207 transitions. [2022-04-08 11:28:07,457 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:28:07,457 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:28:07,457 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:28:07,457 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:28:07,458 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:07,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 156 states to 156 states and 201 transitions. [2022-04-08 11:28:07,468 INFO L78 Accepts]: Start accepts. Automaton has 156 states and 201 transitions. Word has length 109 [2022-04-08 11:28:07,468 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:28:07,469 INFO L478 AbstractCegarLoop]: Abstraction has 156 states and 201 transitions. [2022-04-08 11:28:07,469 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 13 states have internal predecessors, (29), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 8 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-08 11:28:07,469 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 156 states and 201 transitions. [2022-04-08 11:28:07,730 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:07,730 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 201 transitions. [2022-04-08 11:28:07,731 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-08 11:28:07,731 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:28:07,731 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:07,747 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:07,931 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:07,932 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:28:07,932 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:28:07,932 INFO L85 PathProgramCache]: Analyzing trace with hash 800180238, now seen corresponding path program 5 times [2022-04-08 11:28:07,932 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:28:07,932 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [978443810] [2022-04-08 11:28:07,932 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:28:07,933 INFO L85 PathProgramCache]: Analyzing trace with hash 800180238, now seen corresponding path program 6 times [2022-04-08 11:28:07,933 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:28:07,933 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [345983546] [2022-04-08 11:28:07,933 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:28:07,933 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:28:07,952 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:28:07,952 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [628943638] [2022-04-08 11:28:07,952 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 11:28:07,952 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:28:07,952 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:28:07,954 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:07,955 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:08,004 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 11:28:08,004 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:28:08,005 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-08 11:28:08,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:28:08,041 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:28:08,327 INFO L272 TraceCheckUtils]: 0: Hoare triple {8123#true} call ULTIMATE.init(); {8123#true} is VALID [2022-04-08 11:28:08,327 INFO L290 TraceCheckUtils]: 1: Hoare triple {8123#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); {8123#true} is VALID [2022-04-08 11:28:08,327 INFO L290 TraceCheckUtils]: 2: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,327 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8123#true} {8123#true} #98#return; {8123#true} is VALID [2022-04-08 11:28:08,327 INFO L272 TraceCheckUtils]: 4: Hoare triple {8123#true} call #t~ret6 := main(); {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L290 TraceCheckUtils]: 5: Hoare triple {8123#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; {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L272 TraceCheckUtils]: 6: Hoare triple {8123#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L290 TraceCheckUtils]: 7: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L290 TraceCheckUtils]: 8: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L290 TraceCheckUtils]: 9: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8123#true} {8123#true} #78#return; {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L290 TraceCheckUtils]: 11: Hoare triple {8123#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L272 TraceCheckUtils]: 12: Hoare triple {8123#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L290 TraceCheckUtils]: 13: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L290 TraceCheckUtils]: 14: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L290 TraceCheckUtils]: 15: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8123#true} {8123#true} #80#return; {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L272 TraceCheckUtils]: 17: Hoare triple {8123#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,328 INFO L290 TraceCheckUtils]: 18: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L290 TraceCheckUtils]: 19: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L290 TraceCheckUtils]: 20: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8123#true} {8123#true} #82#return; {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L290 TraceCheckUtils]: 22: Hoare triple {8123#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L290 TraceCheckUtils]: 23: Hoare triple {8123#true} assume !false; {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L272 TraceCheckUtils]: 24: Hoare triple {8123#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L290 TraceCheckUtils]: 25: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L290 TraceCheckUtils]: 26: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L290 TraceCheckUtils]: 27: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8123#true} {8123#true} #84#return; {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L272 TraceCheckUtils]: 29: Hoare triple {8123#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L290 TraceCheckUtils]: 30: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L290 TraceCheckUtils]: 31: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,329 INFO L290 TraceCheckUtils]: 32: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,330 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8123#true} {8123#true} #86#return; {8123#true} is VALID [2022-04-08 11:28:08,330 INFO L290 TraceCheckUtils]: 34: Hoare triple {8123#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8123#true} is VALID [2022-04-08 11:28:08,330 INFO L290 TraceCheckUtils]: 35: Hoare triple {8123#true} assume !false; {8123#true} is VALID [2022-04-08 11:28:08,330 INFO L272 TraceCheckUtils]: 36: Hoare triple {8123#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,331 INFO L290 TraceCheckUtils]: 37: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,331 INFO L290 TraceCheckUtils]: 38: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,331 INFO L290 TraceCheckUtils]: 39: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,331 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {8123#true} {8123#true} #88#return; {8123#true} is VALID [2022-04-08 11:28:08,331 INFO L272 TraceCheckUtils]: 41: Hoare triple {8123#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,332 INFO L290 TraceCheckUtils]: 42: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,332 INFO L290 TraceCheckUtils]: 43: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,332 INFO L290 TraceCheckUtils]: 44: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,332 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8123#true} {8123#true} #90#return; {8123#true} is VALID [2022-04-08 11:28:08,332 INFO L272 TraceCheckUtils]: 46: Hoare triple {8123#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,332 INFO L290 TraceCheckUtils]: 47: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,332 INFO L290 TraceCheckUtils]: 48: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,332 INFO L290 TraceCheckUtils]: 49: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,333 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8123#true} {8123#true} #92#return; {8123#true} is VALID [2022-04-08 11:28:08,333 INFO L290 TraceCheckUtils]: 51: Hoare triple {8123#true} assume !!(~r~0 >= 2 * ~b~0); {8123#true} is VALID [2022-04-08 11:28:08,333 INFO L272 TraceCheckUtils]: 52: Hoare triple {8123#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,333 INFO L290 TraceCheckUtils]: 53: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,333 INFO L290 TraceCheckUtils]: 54: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,333 INFO L290 TraceCheckUtils]: 55: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,333 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {8123#true} {8123#true} #94#return; {8123#true} is VALID [2022-04-08 11:28:08,333 INFO L290 TraceCheckUtils]: 57: Hoare triple {8123#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8123#true} is VALID [2022-04-08 11:28:08,333 INFO L290 TraceCheckUtils]: 58: Hoare triple {8123#true} assume !false; {8123#true} is VALID [2022-04-08 11:28:08,333 INFO L272 TraceCheckUtils]: 59: Hoare triple {8123#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,334 INFO L290 TraceCheckUtils]: 60: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,334 INFO L290 TraceCheckUtils]: 61: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,334 INFO L290 TraceCheckUtils]: 62: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,334 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {8123#true} {8123#true} #88#return; {8123#true} is VALID [2022-04-08 11:28:08,334 INFO L272 TraceCheckUtils]: 64: Hoare triple {8123#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,334 INFO L290 TraceCheckUtils]: 65: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,334 INFO L290 TraceCheckUtils]: 66: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,334 INFO L290 TraceCheckUtils]: 67: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,334 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8123#true} {8123#true} #90#return; {8123#true} is VALID [2022-04-08 11:28:08,334 INFO L272 TraceCheckUtils]: 69: Hoare triple {8123#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,335 INFO L290 TraceCheckUtils]: 70: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,335 INFO L290 TraceCheckUtils]: 71: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,335 INFO L290 TraceCheckUtils]: 72: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,335 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {8123#true} {8123#true} #92#return; {8123#true} is VALID [2022-04-08 11:28:08,335 INFO L290 TraceCheckUtils]: 74: Hoare triple {8123#true} assume !(~r~0 >= 2 * ~b~0); {8123#true} is VALID [2022-04-08 11:28:08,335 INFO L290 TraceCheckUtils]: 75: Hoare triple {8123#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8123#true} is VALID [2022-04-08 11:28:08,335 INFO L290 TraceCheckUtils]: 76: Hoare triple {8123#true} assume !false; {8123#true} is VALID [2022-04-08 11:28:08,335 INFO L272 TraceCheckUtils]: 77: Hoare triple {8123#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,335 INFO L290 TraceCheckUtils]: 78: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,335 INFO L290 TraceCheckUtils]: 79: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,336 INFO L290 TraceCheckUtils]: 80: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,336 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {8123#true} {8123#true} #84#return; {8123#true} is VALID [2022-04-08 11:28:08,336 INFO L272 TraceCheckUtils]: 82: Hoare triple {8123#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,336 INFO L290 TraceCheckUtils]: 83: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,336 INFO L290 TraceCheckUtils]: 84: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,336 INFO L290 TraceCheckUtils]: 85: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,336 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {8123#true} {8123#true} #86#return; {8123#true} is VALID [2022-04-08 11:28:08,336 INFO L290 TraceCheckUtils]: 87: Hoare triple {8123#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8123#true} is VALID [2022-04-08 11:28:08,336 INFO L290 TraceCheckUtils]: 88: Hoare triple {8123#true} assume !false; {8123#true} is VALID [2022-04-08 11:28:08,336 INFO L272 TraceCheckUtils]: 89: Hoare triple {8123#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,337 INFO L290 TraceCheckUtils]: 90: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,337 INFO L290 TraceCheckUtils]: 91: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,337 INFO L290 TraceCheckUtils]: 92: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,337 INFO L284 TraceCheckUtils]: 93: Hoare quadruple {8123#true} {8123#true} #88#return; {8123#true} is VALID [2022-04-08 11:28:08,337 INFO L272 TraceCheckUtils]: 94: Hoare triple {8123#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,337 INFO L290 TraceCheckUtils]: 95: Hoare triple {8123#true} ~cond := #in~cond; {8413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:28:08,338 INFO L290 TraceCheckUtils]: 96: Hoare triple {8413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:08,338 INFO L290 TraceCheckUtils]: 97: Hoare triple {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:08,339 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} {8123#true} #90#return; {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:08,339 INFO L272 TraceCheckUtils]: 99: Hoare triple {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:08,339 INFO L290 TraceCheckUtils]: 100: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:08,339 INFO L290 TraceCheckUtils]: 101: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:08,339 INFO L290 TraceCheckUtils]: 102: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:08,340 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {8123#true} {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #92#return; {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:08,340 INFO L290 TraceCheckUtils]: 104: Hoare triple {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(~r~0 >= 2 * ~b~0); {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:08,349 INFO L290 TraceCheckUtils]: 105: Hoare triple {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8446#(= 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:08,350 INFO L290 TraceCheckUtils]: 106: Hoare triple {8446#(= 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; {8446#(= 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:08,350 INFO L272 TraceCheckUtils]: 107: Hoare triple {8446#(= 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)); {8123#true} is VALID [2022-04-08 11:28:08,350 INFO L290 TraceCheckUtils]: 108: Hoare triple {8123#true} ~cond := #in~cond; {8413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:28:08,351 INFO L290 TraceCheckUtils]: 109: Hoare triple {8413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:08,351 INFO L290 TraceCheckUtils]: 110: Hoare triple {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:08,352 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} {8446#(= 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; {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:08,353 INFO L272 TraceCheckUtils]: 112: Hoare triple {8424#(= (+ (* 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)); {8468#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:28:08,353 INFO L290 TraceCheckUtils]: 113: Hoare triple {8468#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8472#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:28:08,354 INFO L290 TraceCheckUtils]: 114: Hoare triple {8472#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8124#false} is VALID [2022-04-08 11:28:08,354 INFO L290 TraceCheckUtils]: 115: Hoare triple {8124#false} assume !false; {8124#false} is VALID [2022-04-08 11:28:08,354 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:08,354 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:28:26,427 INFO L290 TraceCheckUtils]: 115: Hoare triple {8124#false} assume !false; {8124#false} is VALID [2022-04-08 11:28:26,427 INFO L290 TraceCheckUtils]: 114: Hoare triple {8472#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8124#false} is VALID [2022-04-08 11:28:26,428 INFO L290 TraceCheckUtils]: 113: Hoare triple {8468#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8472#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:28:26,428 INFO L272 TraceCheckUtils]: 112: Hoare triple {8424#(= (+ (* 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)); {8468#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:28:26,429 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} {8491#(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; {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:26,429 INFO L290 TraceCheckUtils]: 110: Hoare triple {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:26,430 INFO L290 TraceCheckUtils]: 109: Hoare triple {8501#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:26,430 INFO L290 TraceCheckUtils]: 108: Hoare triple {8123#true} ~cond := #in~cond; {8501#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:28:26,430 INFO L272 TraceCheckUtils]: 107: Hoare triple {8491#(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)); {8123#true} is VALID [2022-04-08 11:28:26,431 INFO L290 TraceCheckUtils]: 106: Hoare triple {8491#(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; {8491#(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:28:26,440 INFO L290 TraceCheckUtils]: 105: Hoare triple {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8491#(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:28:26,440 INFO L290 TraceCheckUtils]: 104: Hoare triple {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(~r~0 >= 2 * ~b~0); {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:26,441 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {8123#true} {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #92#return; {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:26,441 INFO L290 TraceCheckUtils]: 102: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,441 INFO L290 TraceCheckUtils]: 101: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,441 INFO L290 TraceCheckUtils]: 100: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,441 INFO L272 TraceCheckUtils]: 99: Hoare triple {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,442 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} {8123#true} #90#return; {8424#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:28:26,442 INFO L290 TraceCheckUtils]: 97: Hoare triple {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:26,443 INFO L290 TraceCheckUtils]: 96: Hoare triple {8501#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:28:26,443 INFO L290 TraceCheckUtils]: 95: Hoare triple {8123#true} ~cond := #in~cond; {8501#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:28:26,443 INFO L272 TraceCheckUtils]: 94: Hoare triple {8123#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,443 INFO L284 TraceCheckUtils]: 93: Hoare quadruple {8123#true} {8123#true} #88#return; {8123#true} is VALID [2022-04-08 11:28:26,443 INFO L290 TraceCheckUtils]: 92: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L290 TraceCheckUtils]: 91: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L290 TraceCheckUtils]: 90: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L272 TraceCheckUtils]: 89: Hoare triple {8123#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L290 TraceCheckUtils]: 88: Hoare triple {8123#true} assume !false; {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L290 TraceCheckUtils]: 87: Hoare triple {8123#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {8123#true} {8123#true} #86#return; {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L290 TraceCheckUtils]: 85: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L290 TraceCheckUtils]: 84: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L290 TraceCheckUtils]: 83: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L272 TraceCheckUtils]: 82: Hoare triple {8123#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,444 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {8123#true} {8123#true} #84#return; {8123#true} is VALID [2022-04-08 11:28:26,445 INFO L290 TraceCheckUtils]: 80: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,445 INFO L290 TraceCheckUtils]: 79: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,445 INFO L290 TraceCheckUtils]: 78: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,445 INFO L272 TraceCheckUtils]: 77: Hoare triple {8123#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,445 INFO L290 TraceCheckUtils]: 76: Hoare triple {8123#true} assume !false; {8123#true} is VALID [2022-04-08 11:28:26,445 INFO L290 TraceCheckUtils]: 75: Hoare triple {8123#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8123#true} is VALID [2022-04-08 11:28:26,445 INFO L290 TraceCheckUtils]: 74: Hoare triple {8123#true} assume !(~r~0 >= 2 * ~b~0); {8123#true} is VALID [2022-04-08 11:28:26,445 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {8123#true} {8123#true} #92#return; {8123#true} is VALID [2022-04-08 11:28:26,445 INFO L290 TraceCheckUtils]: 72: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,445 INFO L290 TraceCheckUtils]: 71: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,446 INFO L290 TraceCheckUtils]: 70: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,446 INFO L272 TraceCheckUtils]: 69: Hoare triple {8123#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,446 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8123#true} {8123#true} #90#return; {8123#true} is VALID [2022-04-08 11:28:26,446 INFO L290 TraceCheckUtils]: 67: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,446 INFO L290 TraceCheckUtils]: 66: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,446 INFO L290 TraceCheckUtils]: 65: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,446 INFO L272 TraceCheckUtils]: 64: Hoare triple {8123#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,446 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {8123#true} {8123#true} #88#return; {8123#true} is VALID [2022-04-08 11:28:26,446 INFO L290 TraceCheckUtils]: 62: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,446 INFO L290 TraceCheckUtils]: 61: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,447 INFO L290 TraceCheckUtils]: 60: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,447 INFO L272 TraceCheckUtils]: 59: Hoare triple {8123#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,447 INFO L290 TraceCheckUtils]: 58: Hoare triple {8123#true} assume !false; {8123#true} is VALID [2022-04-08 11:28:26,447 INFO L290 TraceCheckUtils]: 57: Hoare triple {8123#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8123#true} is VALID [2022-04-08 11:28:26,447 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {8123#true} {8123#true} #94#return; {8123#true} is VALID [2022-04-08 11:28:26,447 INFO L290 TraceCheckUtils]: 55: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,447 INFO L290 TraceCheckUtils]: 54: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,447 INFO L290 TraceCheckUtils]: 53: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,447 INFO L272 TraceCheckUtils]: 52: Hoare triple {8123#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,448 INFO L290 TraceCheckUtils]: 51: Hoare triple {8123#true} assume !!(~r~0 >= 2 * ~b~0); {8123#true} is VALID [2022-04-08 11:28:26,448 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8123#true} {8123#true} #92#return; {8123#true} is VALID [2022-04-08 11:28:26,448 INFO L290 TraceCheckUtils]: 49: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,448 INFO L290 TraceCheckUtils]: 48: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,448 INFO L290 TraceCheckUtils]: 47: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,448 INFO L272 TraceCheckUtils]: 46: Hoare triple {8123#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,448 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8123#true} {8123#true} #90#return; {8123#true} is VALID [2022-04-08 11:28:26,448 INFO L290 TraceCheckUtils]: 44: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,448 INFO L290 TraceCheckUtils]: 43: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,448 INFO L290 TraceCheckUtils]: 42: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,449 INFO L272 TraceCheckUtils]: 41: Hoare triple {8123#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,449 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {8123#true} {8123#true} #88#return; {8123#true} is VALID [2022-04-08 11:28:26,449 INFO L290 TraceCheckUtils]: 39: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,449 INFO L290 TraceCheckUtils]: 38: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,449 INFO L290 TraceCheckUtils]: 37: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,449 INFO L272 TraceCheckUtils]: 36: Hoare triple {8123#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,449 INFO L290 TraceCheckUtils]: 35: Hoare triple {8123#true} assume !false; {8123#true} is VALID [2022-04-08 11:28:26,449 INFO L290 TraceCheckUtils]: 34: Hoare triple {8123#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8123#true} is VALID [2022-04-08 11:28:26,449 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8123#true} {8123#true} #86#return; {8123#true} is VALID [2022-04-08 11:28:26,450 INFO L290 TraceCheckUtils]: 32: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,450 INFO L290 TraceCheckUtils]: 31: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,450 INFO L290 TraceCheckUtils]: 30: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,450 INFO L272 TraceCheckUtils]: 29: Hoare triple {8123#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,450 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8123#true} {8123#true} #84#return; {8123#true} is VALID [2022-04-08 11:28:26,450 INFO L290 TraceCheckUtils]: 27: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,450 INFO L290 TraceCheckUtils]: 26: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,450 INFO L290 TraceCheckUtils]: 25: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,450 INFO L272 TraceCheckUtils]: 24: Hoare triple {8123#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,451 INFO L290 TraceCheckUtils]: 23: Hoare triple {8123#true} assume !false; {8123#true} is VALID [2022-04-08 11:28:26,451 INFO L290 TraceCheckUtils]: 22: Hoare triple {8123#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8123#true} is VALID [2022-04-08 11:28:26,451 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8123#true} {8123#true} #82#return; {8123#true} is VALID [2022-04-08 11:28:26,451 INFO L290 TraceCheckUtils]: 20: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,451 INFO L290 TraceCheckUtils]: 19: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,451 INFO L290 TraceCheckUtils]: 18: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,451 INFO L272 TraceCheckUtils]: 17: Hoare triple {8123#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,451 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8123#true} {8123#true} #80#return; {8123#true} is VALID [2022-04-08 11:28:26,451 INFO L290 TraceCheckUtils]: 15: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,451 INFO L290 TraceCheckUtils]: 14: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,452 INFO L272 TraceCheckUtils]: 12: Hoare triple {8123#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,452 INFO L290 TraceCheckUtils]: 11: Hoare triple {8123#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8123#true} is VALID [2022-04-08 11:28:26,452 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8123#true} {8123#true} #78#return; {8123#true} is VALID [2022-04-08 11:28:26,452 INFO L290 TraceCheckUtils]: 9: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,452 INFO L290 TraceCheckUtils]: 8: Hoare triple {8123#true} assume !(0 == ~cond); {8123#true} is VALID [2022-04-08 11:28:26,452 INFO L290 TraceCheckUtils]: 7: Hoare triple {8123#true} ~cond := #in~cond; {8123#true} is VALID [2022-04-08 11:28:26,452 INFO L272 TraceCheckUtils]: 6: Hoare triple {8123#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {8123#true} is VALID [2022-04-08 11:28:26,452 INFO L290 TraceCheckUtils]: 5: Hoare triple {8123#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; {8123#true} is VALID [2022-04-08 11:28:26,452 INFO L272 TraceCheckUtils]: 4: Hoare triple {8123#true} call #t~ret6 := main(); {8123#true} is VALID [2022-04-08 11:28:26,453 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8123#true} {8123#true} #98#return; {8123#true} is VALID [2022-04-08 11:28:26,453 INFO L290 TraceCheckUtils]: 2: Hoare triple {8123#true} assume true; {8123#true} is VALID [2022-04-08 11:28:26,453 INFO L290 TraceCheckUtils]: 1: Hoare triple {8123#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); {8123#true} is VALID [2022-04-08 11:28:26,453 INFO L272 TraceCheckUtils]: 0: Hoare triple {8123#true} call ULTIMATE.init(); {8123#true} is VALID [2022-04-08 11:28:26,453 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:26,454 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:28:26,454 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [345983546] [2022-04-08 11:28:26,454 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:28:26,454 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [628943638] [2022-04-08 11:28:26,454 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [628943638] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:28:26,454 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:28:26,454 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 11:28:26,454 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:28:26,454 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [978443810] [2022-04-08 11:28:26,455 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [978443810] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:28:26,455 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:28:26,455 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:28:26,455 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [332289840] [2022-04-08 11:28:26,455 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:28:26,455 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:28:26,456 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:28:26,456 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:28:26,501 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:28:26,502 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:28:26,502 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:28:26,502 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:28:26,502 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:28:26,502 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:28:27,158 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:28:27,159 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-08 11:28:27,159 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 11:28:27,159 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:28:27,159 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:28:27,159 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:28:27,160 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 46 transitions. [2022-04-08 11:28:27,160 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:28:27,161 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 46 transitions. [2022-04-08 11:28:27,161 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 46 transitions. [2022-04-08 11:28:27,208 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:28:27,209 INFO L225 Difference]: With dead ends: 164 [2022-04-08 11:28:27,209 INFO L226 Difference]: Without dead ends: 0 [2022-04-08 11:28:27,210 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:28:27,210 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:28:27,210 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:28:27,211 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-08 11:28:27,211 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-08 11:28:27,211 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:28:27,211 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:28:27,211 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:28:27,211 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:28:27,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:28:27,212 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 11:28:27,212 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:28:27,212 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:28:27,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:28:27,212 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:28:27,212 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:28:27,212 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:28:27,212 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 11:28:27,212 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:28:27,212 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:28:27,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:28:27,213 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:28:27,213 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:28:27,213 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:28:27,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-08 11:28:27,213 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 116 [2022-04-08 11:28:27,213 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:28:27,213 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-08 11:28:27,213 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:28:27,213 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-08 11:28:27,213 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:28:27,213 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:28:27,214 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:28:27,216 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 11:28:27,233 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Ended with exit code 0 [2022-04-08 11:28:27,423 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:28:27,425 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-08 11:28:31,739 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-08 11:28:31,740 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-08 11:28:31,740 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-08 11:28:31,740 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-08 11:28:31,740 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:28:31,740 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:28:31,740 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:28:31,740 INFO L885 garLoopResultBuilder]: At program point L64(line 64) the Hoare annotation is: true [2022-04-08 11:28:31,740 INFO L878 garLoopResultBuilder]: At program point L31(line 31) the Hoare annotation is: (and (<= main_~y~0 10) (<= 1 main_~y~0)) [2022-04-08 11:28:31,740 INFO L885 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: true [2022-04-08 11:28:31,740 INFO L878 garLoopResultBuilder]: At program point L29-1(line 29) the Hoare annotation is: (and (<= 0 main_~y~0) (<= main_~y~0 10)) [2022-04-08 11:28:31,740 INFO L885 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: true [2022-04-08 11:28:31,740 INFO L885 garLoopResultBuilder]: At program point L27-1(line 27) the Hoare annotation is: true [2022-04-08 11:28:31,741 INFO L885 garLoopResultBuilder]: At program point mainEXIT(lines 22 66) the Hoare annotation is: true [2022-04-08 11:28:31,741 INFO L878 garLoopResultBuilder]: At program point L50(lines 47 59) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (<= main_~y~0 10) (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:28:31,741 INFO L878 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (<= main_~y~0 10) (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:28:31,741 INFO L878 garLoopResultBuilder]: At program point L48-1(line 48) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (<= main_~y~0 10) (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:28:31,741 INFO L885 garLoopResultBuilder]: At program point mainFINAL(lines 22 66) the Hoare annotation is: true [2022-04-08 11:28:31,741 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 10) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-08 11:28:31,741 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_~y~0 10) (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:28:31,741 INFO L878 garLoopResultBuilder]: At program point L38-3(lines 38 62) the Hoare annotation is: (let ((.cse0 (<= main_~y~0 10)) (.cse1 (<= 1 main_~y~0)) (.cse2 (= main_~b~0 (* main_~a~0 main_~y~0)))) (or (and (= main_~x~0 main_~r~0) .cse0 (= main_~q~0 0) .cse1) (and (< main_~x~0 (* main_~b~0 2)) .cse0 (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0) (= main_~a~0 2) .cse2 (<= 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 .cse1 .cse2) (and .cse0 (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) .cse1 .cse2))) [2022-04-08 11:28:31,741 INFO L885 garLoopResultBuilder]: At program point mainENTRY(lines 22 66) the Hoare annotation is: true [2022-04-08 11:28:31,741 INFO L878 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (<= main_~y~0 10) (= (+ (* 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) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:28:31,742 INFO L878 garLoopResultBuilder]: At program point L55-1(line 55) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (<= main_~y~0 10) (= (+ (* 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) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:28:31,742 INFO L878 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (<= main_~y~0 10) (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:28:31,742 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_~y~0 10) (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:28:31,742 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_~y~0 10) (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:28:31,742 INFO L878 garLoopResultBuilder]: At program point L39(line 39) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (<= main_~y~0 10) (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-08 11:28:31,742 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 10) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-08 11:28:31,742 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2022-04-08 11:28:31,742 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:28:31,742 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2022-04-08 11:28:31,742 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-08 11:28:31,742 INFO L885 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-08 11:28:31,742 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-08 11:28:31,743 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-08 11:28:31,743 INFO L878 garLoopResultBuilder]: At program point L16(lines 16 17) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-08 11:28:31,743 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:28:31,743 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-08 11:28:31,743 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:28:31,743 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:28:31,743 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:28:31,745 INFO L719 BasicCegarLoop]: Path program histogram: [6, 4, 2, 2, 2, 2, 2, 2] [2022-04-08 11:28:31,746 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 11:28:31,749 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-08 11:28:31,756 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-08 11:28:31,779 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:28:31,787 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 11:28:31 BoogieIcfgContainer [2022-04-08 11:28:31,787 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 11:28:31,788 INFO L158 Benchmark]: Toolchain (without parser) took 247696.94ms. Allocated memory was 181.4MB in the beginning and 218.1MB in the end (delta: 36.7MB). Free memory was 133.0MB in the beginning and 179.4MB in the end (delta: -46.4MB). Peak memory consumption was 102.8MB. Max. memory is 8.0GB. [2022-04-08 11:28:31,788 INFO L158 Benchmark]: CDTParser took 0.17ms. Allocated memory is still 181.4MB. Free memory was 149.3MB in the beginning and 149.2MB in the end (delta: 76.0kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 11:28:31,788 INFO L158 Benchmark]: CACSL2BoogieTranslator took 311.92ms. Allocated memory is still 181.4MB. Free memory was 132.7MB in the beginning and 159.4MB in the end (delta: -26.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-08 11:28:31,789 INFO L158 Benchmark]: Boogie Preprocessor took 38.45ms. Allocated memory is still 181.4MB. Free memory was 159.4MB in the beginning and 157.9MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-08 11:28:31,789 INFO L158 Benchmark]: RCFGBuilder took 295.36ms. Allocated memory is still 181.4MB. Free memory was 157.6MB in the beginning and 145.8MB in the end (delta: 11.8MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-08 11:28:31,789 INFO L158 Benchmark]: TraceAbstraction took 247030.55ms. Allocated memory was 181.4MB in the beginning and 218.1MB in the end (delta: 36.7MB). Free memory was 145.3MB in the beginning and 179.4MB in the end (delta: -34.0MB). Peak memory consumption was 116.7MB. Max. memory is 8.0GB. [2022-04-08 11:28:31,793 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.17ms. Allocated memory is still 181.4MB. Free memory was 149.3MB in the beginning and 149.2MB in the end (delta: 76.0kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 311.92ms. Allocated memory is still 181.4MB. Free memory was 132.7MB in the beginning and 159.4MB in the end (delta: -26.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 38.45ms. Allocated memory is still 181.4MB. Free memory was 159.4MB in the beginning and 157.9MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 295.36ms. Allocated memory is still 181.4MB. Free memory was 157.6MB in the beginning and 145.8MB in the end (delta: 11.8MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 247030.55ms. Allocated memory was 181.4MB in the beginning and 218.1MB in the end (delta: 36.7MB). Free memory was 145.3MB in the beginning and 179.4MB in the end (delta: -34.0MB). Peak memory consumption was 116.7MB. 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: 246.9s, OverallIterations: 11, TraceHistogramMax: 16, PathProgramHistogramMax: 6, EmptinessCheckTime: 0.0s, AutomataDifference: 11.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 4.3s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 265 SdHoareTripleChecker+Valid, 3.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 198 mSDsluCounter, 1763 SdHoareTripleChecker+Invalid, 3.8s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1310 mSDsCounter, 135 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 2059 IncrementalHoareTripleChecker+Invalid, 2194 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 135 mSolverCounterUnsat, 453 mSDtfsCounter, 2059 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 1062 GetRequests, 947 SyntacticMatches, 10 SemanticMatches, 105 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 370 ImplicationChecksByTransitivity, 1.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=156occurred in iteration=10, InterpolantAutomatonStates: 86, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 1.2s AutomataMinimizationTime, 11 MinimizatonAttempts, 49 StatesRemovedByMinimization, 7 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 39 LocationsWithAnnotation, 517 PreInvPairs, 756 NumberOfFragments, 487 HoareAnnotationTreeSize, 517 FomulaSimplifications, 556 FormulaSimplificationTreeSizeReduction, 0.7s HoareSimplificationTime, 39 FomulaSimplificationsInter, 10705 FormulaSimplificationTreeSizeReductionInter, 3.5s 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: (((y <= 10 && q * y + b + r == x + a * y) && 1 <= r) && 1 <= y) && b == a * y - InvariantResult [Line: 38]: Loop Invariant Derived loop invariant: ((y <= 10 && q * y + b + r == x + a * y) && 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:28:31,853 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...