/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 07:28:23,540 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 07:28:23,541 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 07:28:23,589 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 07:28:23,589 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 07:28:23,590 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 07:28:23,590 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 07:28:23,597 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 07:28:23,598 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 07:28:23,601 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 07:28:23,602 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 07:28:23,603 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 07:28:23,603 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 07:28:23,605 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 07:28:23,605 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 07:28:23,607 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 07:28:23,607 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 07:28:23,608 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 07:28:23,610 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 07:28:23,614 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 07:28:23,615 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 07:28:23,616 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 07:28:23,616 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 07:28:23,617 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 07:28:23,618 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 07:28:23,623 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 07:28:23,623 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 07:28:23,623 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 07:28:23,623 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 07:28:23,624 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 07:28:23,624 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 07:28:23,625 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 07:28:23,626 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 07:28:23,626 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 07:28:23,626 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 07:28:23,627 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 07:28:23,627 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 07:28:23,627 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 07:28:23,627 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 07:28:23,628 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 07:28:23,628 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 07:28:23,629 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 07:28:23,630 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 07:28:23,639 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 07:28:23,639 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 07:28:23,640 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 07:28:23,640 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 07:28:23,641 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 07:28:23,641 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 07:28:23,641 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 07:28:23,641 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 07:28:23,641 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 07:28:23,641 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 07:28:23,641 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 07:28:23,642 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 07:28:23,642 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 07:28:23,642 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 07:28:23,642 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 07:28:23,642 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 07:28:23,642 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 07:28:23,642 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 07:28:23,642 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 07:28:23,642 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 07:28:23,642 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 07:28:23,642 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 07:28:23,642 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 07:28:23,643 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 07:28:23,643 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 07:28:23,643 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 07:28:23,821 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 07:28:23,841 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 07:28:23,843 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 07:28:23,844 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 07:28:23,845 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 07:28:23,845 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound2.c [2022-04-28 07:28:23,884 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/074497a67/6f45cb88d4564c8cacf9ea0f84f09480/FLAGf0fa54efa [2022-04-28 07:28:24,233 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 07:28:24,234 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound2.c [2022-04-28 07:28:24,237 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/074497a67/6f45cb88d4564c8cacf9ea0f84f09480/FLAGf0fa54efa [2022-04-28 07:28:24,245 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/074497a67/6f45cb88d4564c8cacf9ea0f84f09480 [2022-04-28 07:28:24,246 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 07:28:24,247 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 07:28:24,248 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 07:28:24,248 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 07:28:24,255 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 07:28:24,258 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 07:28:24" (1/1) ... [2022-04-28 07:28:24,259 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@26331b21 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24, skipping insertion in model container [2022-04-28 07:28:24,259 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 07:28:24" (1/1) ... [2022-04-28 07:28:24,263 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 07:28:24,272 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 07:28:24,386 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound2.c[537,550] [2022-04-28 07:28:24,410 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 07:28:24,415 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 07:28:24,426 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound2.c[537,550] [2022-04-28 07:28:24,440 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 07:28:24,448 INFO L208 MainTranslator]: Completed translation [2022-04-28 07:28:24,448 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24 WrapperNode [2022-04-28 07:28:24,448 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 07:28:24,449 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 07:28:24,449 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 07:28:24,449 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 07:28:24,457 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24" (1/1) ... [2022-04-28 07:28:24,457 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24" (1/1) ... [2022-04-28 07:28:24,463 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24" (1/1) ... [2022-04-28 07:28:24,463 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24" (1/1) ... [2022-04-28 07:28:24,477 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24" (1/1) ... [2022-04-28 07:28:24,481 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24" (1/1) ... [2022-04-28 07:28:24,482 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24" (1/1) ... [2022-04-28 07:28:24,486 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 07:28:24,487 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 07:28:24,487 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 07:28:24,487 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 07:28:24,488 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24" (1/1) ... [2022-04-28 07:28:24,492 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 07:28:24,498 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:28:24,507 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-28 07:28:24,535 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-28 07:28:24,545 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 07:28:24,545 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 07:28:24,545 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 07:28:24,545 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 07:28:24,545 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 07:28:24,545 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 07:28:24,546 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 07:28:24,546 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 07:28:24,546 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 07:28:24,546 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 07:28:24,546 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 07:28:24,547 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 07:28:24,547 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 07:28:24,547 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 07:28:24,547 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 07:28:24,547 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 07:28:24,548 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 07:28:24,548 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 07:28:24,548 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 07:28:24,548 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 07:28:24,593 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 07:28:24,595 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 07:28:24,737 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 07:28:24,742 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 07:28:24,742 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 07:28:24,743 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 07:28:24 BoogieIcfgContainer [2022-04-28 07:28:24,743 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 07:28:24,744 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 07:28:24,744 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 07:28:24,761 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 07:28:24,761 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 07:28:24" (1/3) ... [2022-04-28 07:28:24,762 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5fcc6a9b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 07:28:24, skipping insertion in model container [2022-04-28 07:28:24,762 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:28:24" (2/3) ... [2022-04-28 07:28:24,762 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5fcc6a9b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 07:28:24, skipping insertion in model container [2022-04-28 07:28:24,762 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 07:28:24" (3/3) ... [2022-04-28 07:28:24,763 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_valuebound2.c [2022-04-28 07:28:24,772 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 07:28:24,772 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 07:28:24,816 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 07:28:24,823 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@3b895e66, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@7a0879ae [2022-04-28 07:28:24,824 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 07:28:24,837 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 7 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:28:24,842 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 07:28:24,842 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:28:24,843 INFO L195 NwaCegarLoop]: 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-28 07:28:24,843 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:28:24,847 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:28:24,847 INFO L85 PathProgramCache]: Analyzing trace with hash -589322634, now seen corresponding path program 1 times [2022-04-28 07:28:24,856 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:28:24,856 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1884534293] [2022-04-28 07:28:24,866 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:28:24,867 INFO L85 PathProgramCache]: Analyzing trace with hash -589322634, now seen corresponding path program 2 times [2022-04-28 07:28:24,869 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:28:24,869 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [569277969] [2022-04-28 07:28:24,869 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:28:24,870 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:28:24,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:28:25,022 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 07:28:25,031 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:28:25,043 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#(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(13, 2);call #Ultimate.allocInit(12, 3); {35#true} is VALID [2022-04-28 07:28:25,044 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-28 07:28:25,044 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} #71#return; {35#true} is VALID [2022-04-28 07:28:25,044 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 07:28:25,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:28:25,052 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 07:28:25,052 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 07:28:25,052 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 07:28:25,053 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #61#return; {36#false} is VALID [2022-04-28 07:28:25,053 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 07:28:25,054 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:28:25,058 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 07:28:25,058 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 07:28:25,058 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 07:28:25,058 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #63#return; {36#false} is VALID [2022-04-28 07:28:25,059 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 07:28:25,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:28:25,066 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 07:28:25,067 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 07:28:25,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 07:28:25,067 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #65#return; {36#false} is VALID [2022-04-28 07:28:25,069 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} call ULTIMATE.init(); {52#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 07:28:25,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#(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(13, 2);call #Ultimate.allocInit(12, 3); {35#true} is VALID [2022-04-28 07:28:25,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-28 07:28:25,070 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} #71#return; {35#true} is VALID [2022-04-28 07:28:25,070 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} call #t~ret6 := main(); {35#true} is VALID [2022-04-28 07:28:25,070 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {35#true} is VALID [2022-04-28 07:28:25,070 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {35#true} is VALID [2022-04-28 07:28:25,070 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 07:28:25,072 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 07:28:25,072 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 07:28:25,072 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} #61#return; {36#false} is VALID [2022-04-28 07:28:25,072 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {36#false} is VALID [2022-04-28 07:28:25,072 INFO L272 TraceCheckUtils]: 12: Hoare triple {36#false} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {35#true} is VALID [2022-04-28 07:28:25,072 INFO L290 TraceCheckUtils]: 13: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 07:28:25,073 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 07:28:25,073 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 07:28:25,073 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {36#false} {36#false} #63#return; {36#false} is VALID [2022-04-28 07:28:25,073 INFO L272 TraceCheckUtils]: 17: Hoare triple {36#false} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {35#true} is VALID [2022-04-28 07:28:25,074 INFO L290 TraceCheckUtils]: 18: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 07:28:25,074 INFO L290 TraceCheckUtils]: 19: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 07:28:25,075 INFO L290 TraceCheckUtils]: 20: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 07:28:25,075 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {36#false} {36#false} #65#return; {36#false} is VALID [2022-04-28 07:28:25,075 INFO L290 TraceCheckUtils]: 22: Hoare triple {36#false} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {36#false} is VALID [2022-04-28 07:28:25,075 INFO L290 TraceCheckUtils]: 23: Hoare triple {36#false} assume false; {36#false} is VALID [2022-04-28 07:28:25,075 INFO L272 TraceCheckUtils]: 24: Hoare triple {36#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {36#false} is VALID [2022-04-28 07:28:25,075 INFO L290 TraceCheckUtils]: 25: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-04-28 07:28:25,076 INFO L290 TraceCheckUtils]: 26: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-04-28 07:28:25,076 INFO L290 TraceCheckUtils]: 27: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-04-28 07:28:25,076 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-28 07:28:25,077 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:28:25,077 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [569277969] [2022-04-28 07:28:25,077 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [569277969] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:28:25,077 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:28:25,078 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 07:28:25,083 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:28:25,084 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1884534293] [2022-04-28 07:28:25,084 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1884534293] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:28:25,084 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:28:25,084 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 07:28:25,084 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [807161995] [2022-04-28 07:28:25,085 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:28:25,089 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-28 07:28:25,090 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:28:25,092 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-28 07:28:25,122 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-28 07:28:25,122 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 07:28:25,122 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:28:25,139 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 07:28:25,140 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 07:28:25,142 INFO L87 Difference]: Start difference. First operand has 32 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 7 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) 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-28 07:28:25,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:25,276 INFO L93 Difference]: Finished difference Result 57 states and 77 transitions. [2022-04-28 07:28:25,276 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 07:28:25,277 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-28 07:28:25,277 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:28:25,278 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-28 07:28:25,287 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 07:28:25,288 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-28 07:28:25,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 07:28:25,296 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-28 07:28:25,383 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:28:25,391 INFO L225 Difference]: With dead ends: 57 [2022-04-28 07:28:25,391 INFO L226 Difference]: Without dead ends: 27 [2022-04-28 07:28:25,393 INFO L412 NwaCegarLoop]: 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-28 07:28:25,397 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 19 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 34 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:28:25,398 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [24 Valid, 34 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 07:28:25,408 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-28 07:28:25,417 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-28 07:28:25,417 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:28:25,418 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 07:28:25,418 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 07:28:25,419 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 07:28:25,421 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:25,421 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-28 07:28:25,421 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-28 07:28:25,422 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:28:25,422 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:28:25,422 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 27 states. [2022-04-28 07:28:25,422 INFO L87 Difference]: Start difference. First operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 27 states. [2022-04-28 07:28:25,424 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:25,424 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-28 07:28:25,424 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-28 07:28:25,425 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:28:25,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:28:25,425 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:28:25,425 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:28:25,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 07:28:25,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-28 07:28:25,427 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 28 [2022-04-28 07:28:25,427 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:28:25,428 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-28 07:28:25,428 INFO L496 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-28 07:28:25,428 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 31 transitions. [2022-04-28 07:28:25,458 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-28 07:28:25,458 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-28 07:28:25,459 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 07:28:25,459 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:28:25,459 INFO L195 NwaCegarLoop]: 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-28 07:28:25,459 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 07:28:25,459 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:28:25,460 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:28:25,460 INFO L85 PathProgramCache]: Analyzing trace with hash -1736242504, now seen corresponding path program 1 times [2022-04-28 07:28:25,460 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:28:25,460 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1941513740] [2022-04-28 07:28:25,461 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:28:25,461 INFO L85 PathProgramCache]: Analyzing trace with hash -1736242504, now seen corresponding path program 2 times [2022-04-28 07:28:25,461 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:28:25,461 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [105598276] [2022-04-28 07:28:25,461 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:28:25,461 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:28:25,480 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:28:25,480 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2032646517] [2022-04-28 07:28:25,480 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:28:25,480 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:28:25,480 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:28:25,484 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 07:28:25,484 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-28 07:28:25,525 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 07:28:25,526 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:28:25,536 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 07:28:25,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:28:25,547 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:28:25,706 INFO L272 TraceCheckUtils]: 0: Hoare triple {277#true} call ULTIMATE.init(); {277#true} is VALID [2022-04-28 07:28:25,707 INFO L290 TraceCheckUtils]: 1: Hoare triple {277#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {277#true} is VALID [2022-04-28 07:28:25,707 INFO L290 TraceCheckUtils]: 2: Hoare triple {277#true} assume true; {277#true} is VALID [2022-04-28 07:28:25,707 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {277#true} {277#true} #71#return; {277#true} is VALID [2022-04-28 07:28:25,707 INFO L272 TraceCheckUtils]: 4: Hoare triple {277#true} call #t~ret6 := main(); {277#true} is VALID [2022-04-28 07:28:25,707 INFO L290 TraceCheckUtils]: 5: Hoare triple {277#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {277#true} is VALID [2022-04-28 07:28:25,708 INFO L272 TraceCheckUtils]: 6: Hoare triple {277#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {277#true} is VALID [2022-04-28 07:28:25,708 INFO L290 TraceCheckUtils]: 7: Hoare triple {277#true} ~cond := #in~cond; {277#true} is VALID [2022-04-28 07:28:25,708 INFO L290 TraceCheckUtils]: 8: Hoare triple {277#true} assume !(0 == ~cond); {277#true} is VALID [2022-04-28 07:28:25,708 INFO L290 TraceCheckUtils]: 9: Hoare triple {277#true} assume true; {277#true} is VALID [2022-04-28 07:28:25,708 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {277#true} {277#true} #61#return; {277#true} is VALID [2022-04-28 07:28:25,708 INFO L290 TraceCheckUtils]: 11: Hoare triple {277#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {277#true} is VALID [2022-04-28 07:28:25,708 INFO L272 TraceCheckUtils]: 12: Hoare triple {277#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {277#true} is VALID [2022-04-28 07:28:25,708 INFO L290 TraceCheckUtils]: 13: Hoare triple {277#true} ~cond := #in~cond; {277#true} is VALID [2022-04-28 07:28:25,709 INFO L290 TraceCheckUtils]: 14: Hoare triple {277#true} assume !(0 == ~cond); {277#true} is VALID [2022-04-28 07:28:25,709 INFO L290 TraceCheckUtils]: 15: Hoare triple {277#true} assume true; {277#true} is VALID [2022-04-28 07:28:25,709 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {277#true} {277#true} #63#return; {277#true} is VALID [2022-04-28 07:28:25,709 INFO L272 TraceCheckUtils]: 17: Hoare triple {277#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {277#true} is VALID [2022-04-28 07:28:25,709 INFO L290 TraceCheckUtils]: 18: Hoare triple {277#true} ~cond := #in~cond; {277#true} is VALID [2022-04-28 07:28:25,709 INFO L290 TraceCheckUtils]: 19: Hoare triple {277#true} assume !(0 == ~cond); {277#true} is VALID [2022-04-28 07:28:25,709 INFO L290 TraceCheckUtils]: 20: Hoare triple {277#true} assume true; {277#true} is VALID [2022-04-28 07:28:25,710 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {277#true} {277#true} #65#return; {277#true} is VALID [2022-04-28 07:28:25,710 INFO L290 TraceCheckUtils]: 22: Hoare triple {277#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {348#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:25,711 INFO L290 TraceCheckUtils]: 23: Hoare triple {348#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} assume !false; {348#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:25,711 INFO L272 TraceCheckUtils]: 24: Hoare triple {348#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {355#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:28:25,712 INFO L290 TraceCheckUtils]: 25: Hoare triple {355#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {359#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:28:25,712 INFO L290 TraceCheckUtils]: 26: Hoare triple {359#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {278#false} is VALID [2022-04-28 07:28:25,712 INFO L290 TraceCheckUtils]: 27: Hoare triple {278#false} assume !false; {278#false} is VALID [2022-04-28 07:28:25,713 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-28 07:28:25,713 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:28:25,713 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:28:25,713 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [105598276] [2022-04-28 07:28:25,713 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:28:25,713 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2032646517] [2022-04-28 07:28:25,713 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2032646517] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:28:25,714 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:28:25,714 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:28:25,714 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:28:25,714 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1941513740] [2022-04-28 07:28:25,714 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1941513740] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:28:25,715 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:28:25,715 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:28:25,715 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [96722644] [2022-04-28 07:28:25,715 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:28:25,715 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-28 07:28:25,716 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:28:25,716 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-28 07:28:25,731 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-28 07:28:25,731 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 07:28:25,731 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:28:25,732 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 07:28:25,732 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 07:28:25,732 INFO L87 Difference]: Start difference. First operand 27 states and 31 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-28 07:28:25,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:25,872 INFO L93 Difference]: Finished difference Result 39 states and 45 transitions. [2022-04-28 07:28:25,872 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 07:28:25,873 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-28 07:28:25,874 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:28:25,874 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-28 07:28:25,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-28 07:28:25,876 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-28 07:28:25,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-28 07:28:25,879 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 45 transitions. [2022-04-28 07:28:25,928 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:28:25,929 INFO L225 Difference]: With dead ends: 39 [2022-04-28 07:28:25,929 INFO L226 Difference]: Without dead ends: 37 [2022-04-28 07:28:25,929 INFO L412 NwaCegarLoop]: 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-28 07:28:25,930 INFO L413 NwaCegarLoop]: 25 mSDtfsCounter, 8 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 43 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:28:25,931 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 87 Invalid, 43 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 07:28:25,931 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-28 07:28:25,947 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 33. [2022-04-28 07:28:25,947 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:28:25,948 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:28:25,948 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:28:25,948 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:28:25,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:25,950 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-28 07:28:25,950 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-28 07:28:25,950 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:28:25,950 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:28:25,951 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 37 states. [2022-04-28 07:28:25,951 INFO L87 Difference]: Start difference. First operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 37 states. [2022-04-28 07:28:25,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:25,952 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-28 07:28:25,952 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-28 07:28:25,953 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:28:25,953 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:28:25,953 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:28:25,953 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:28:25,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:28:25,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2022-04-28 07:28:25,955 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 28 [2022-04-28 07:28:25,955 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:28:25,955 INFO L495 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2022-04-28 07:28:25,955 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (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-28 07:28:25,955 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 37 transitions. [2022-04-28 07:28:25,985 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:28:25,986 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2022-04-28 07:28:25,986 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 07:28:25,986 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:28:25,987 INFO L195 NwaCegarLoop]: 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, 1] [2022-04-28 07:28:26,005 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 07:28:26,202 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:28:26,203 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:28:26,203 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:28:26,203 INFO L85 PathProgramCache]: Analyzing trace with hash 1911690432, now seen corresponding path program 1 times [2022-04-28 07:28:26,203 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:28:26,203 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1990049529] [2022-04-28 07:28:26,204 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:28:26,204 INFO L85 PathProgramCache]: Analyzing trace with hash 1911690432, now seen corresponding path program 2 times [2022-04-28 07:28:26,204 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:28:26,204 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [952962330] [2022-04-28 07:28:26,204 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:28:26,204 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:28:26,217 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:28:26,218 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1518205760] [2022-04-28 07:28:26,218 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:28:26,218 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:28:26,218 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:28:26,219 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 07:28:26,220 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-28 07:28:26,258 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:28:26,258 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:28:26,259 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 07:28:26,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:28:26,270 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:28:26,387 INFO L272 TraceCheckUtils]: 0: Hoare triple {585#true} call ULTIMATE.init(); {585#true} is VALID [2022-04-28 07:28:26,388 INFO L290 TraceCheckUtils]: 1: Hoare triple {585#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {585#true} is VALID [2022-04-28 07:28:26,388 INFO L290 TraceCheckUtils]: 2: Hoare triple {585#true} assume true; {585#true} is VALID [2022-04-28 07:28:26,388 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {585#true} {585#true} #71#return; {585#true} is VALID [2022-04-28 07:28:26,388 INFO L272 TraceCheckUtils]: 4: Hoare triple {585#true} call #t~ret6 := main(); {585#true} is VALID [2022-04-28 07:28:26,405 INFO L290 TraceCheckUtils]: 5: Hoare triple {585#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {585#true} is VALID [2022-04-28 07:28:26,405 INFO L272 TraceCheckUtils]: 6: Hoare triple {585#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {585#true} is VALID [2022-04-28 07:28:26,405 INFO L290 TraceCheckUtils]: 7: Hoare triple {585#true} ~cond := #in~cond; {585#true} is VALID [2022-04-28 07:28:26,405 INFO L290 TraceCheckUtils]: 8: Hoare triple {585#true} assume !(0 == ~cond); {585#true} is VALID [2022-04-28 07:28:26,405 INFO L290 TraceCheckUtils]: 9: Hoare triple {585#true} assume true; {585#true} is VALID [2022-04-28 07:28:26,406 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {585#true} {585#true} #61#return; {585#true} is VALID [2022-04-28 07:28:26,406 INFO L290 TraceCheckUtils]: 11: Hoare triple {585#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {585#true} is VALID [2022-04-28 07:28:26,406 INFO L272 TraceCheckUtils]: 12: Hoare triple {585#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {585#true} is VALID [2022-04-28 07:28:26,406 INFO L290 TraceCheckUtils]: 13: Hoare triple {585#true} ~cond := #in~cond; {585#true} is VALID [2022-04-28 07:28:26,406 INFO L290 TraceCheckUtils]: 14: Hoare triple {585#true} assume !(0 == ~cond); {585#true} is VALID [2022-04-28 07:28:26,406 INFO L290 TraceCheckUtils]: 15: Hoare triple {585#true} assume true; {585#true} is VALID [2022-04-28 07:28:26,406 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {585#true} {585#true} #63#return; {585#true} is VALID [2022-04-28 07:28:26,406 INFO L272 TraceCheckUtils]: 17: Hoare triple {585#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {585#true} is VALID [2022-04-28 07:28:26,408 INFO L290 TraceCheckUtils]: 18: Hoare triple {585#true} ~cond := #in~cond; {644#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:28:26,408 INFO L290 TraceCheckUtils]: 19: Hoare triple {644#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {648#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:28:26,409 INFO L290 TraceCheckUtils]: 20: Hoare triple {648#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {648#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:28:26,409 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {648#(not (= |assume_abort_if_not_#in~cond| 0))} {585#true} #65#return; {655#(<= 1 main_~b~0)} is VALID [2022-04-28 07:28:26,410 INFO L290 TraceCheckUtils]: 22: Hoare triple {655#(<= 1 main_~b~0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {659#(<= 1 main_~y~0)} is VALID [2022-04-28 07:28:26,410 INFO L290 TraceCheckUtils]: 23: Hoare triple {659#(<= 1 main_~y~0)} assume !false; {659#(<= 1 main_~y~0)} is VALID [2022-04-28 07:28:26,410 INFO L272 TraceCheckUtils]: 24: Hoare triple {659#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {585#true} is VALID [2022-04-28 07:28:26,410 INFO L290 TraceCheckUtils]: 25: Hoare triple {585#true} ~cond := #in~cond; {585#true} is VALID [2022-04-28 07:28:26,411 INFO L290 TraceCheckUtils]: 26: Hoare triple {585#true} assume !(0 == ~cond); {585#true} is VALID [2022-04-28 07:28:26,411 INFO L290 TraceCheckUtils]: 27: Hoare triple {585#true} assume true; {585#true} is VALID [2022-04-28 07:28:26,411 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {585#true} {659#(<= 1 main_~y~0)} #67#return; {659#(<= 1 main_~y~0)} is VALID [2022-04-28 07:28:26,412 INFO L290 TraceCheckUtils]: 29: Hoare triple {659#(<= 1 main_~y~0)} assume !(0 != ~y~0); {586#false} is VALID [2022-04-28 07:28:26,412 INFO L272 TraceCheckUtils]: 30: Hoare triple {586#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {586#false} is VALID [2022-04-28 07:28:26,412 INFO L290 TraceCheckUtils]: 31: Hoare triple {586#false} ~cond := #in~cond; {586#false} is VALID [2022-04-28 07:28:26,412 INFO L290 TraceCheckUtils]: 32: Hoare triple {586#false} assume 0 == ~cond; {586#false} is VALID [2022-04-28 07:28:26,412 INFO L290 TraceCheckUtils]: 33: Hoare triple {586#false} assume !false; {586#false} is VALID [2022-04-28 07:28:26,412 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-28 07:28:26,413 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:28:26,413 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:28:26,413 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [952962330] [2022-04-28 07:28:26,413 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:28:26,413 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1518205760] [2022-04-28 07:28:26,413 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1518205760] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:28:26,413 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:28:26,413 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 07:28:26,414 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:28:26,414 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1990049529] [2022-04-28 07:28:26,414 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1990049529] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:28:26,414 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:28:26,414 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 07:28:26,414 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2009586785] [2022-04-28 07:28:26,414 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:28:26,415 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-28 07:28:26,415 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:28:26,415 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 07:28:26,433 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-28 07:28:26,433 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 07:28:26,434 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:28:26,434 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 07:28:26,435 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 07:28:26,435 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 07:28:26,580 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:26,580 INFO L93 Difference]: Finished difference Result 43 states and 48 transitions. [2022-04-28 07:28:26,580 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 07:28:26,580 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-28 07:28:26,582 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:28:26,582 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 07:28:26,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 45 transitions. [2022-04-28 07:28:26,583 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 07:28:26,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 45 transitions. [2022-04-28 07:28:26,593 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 45 transitions. [2022-04-28 07:28:26,623 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:28:26,626 INFO L225 Difference]: With dead ends: 43 [2022-04-28 07:28:26,626 INFO L226 Difference]: Without dead ends: 36 [2022-04-28 07:28:26,626 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-28 07:28:26,636 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 14 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 58 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 58 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:28:26,637 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [15 Valid, 89 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 58 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 07:28:26,638 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-28 07:28:26,655 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 34. [2022-04-28 07:28:26,655 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:28:26,656 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:28:26,657 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:28:26,658 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:28:26,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:26,661 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-28 07:28:26,661 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-28 07:28:26,661 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:28:26,662 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:28:26,662 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 36 states. [2022-04-28 07:28:26,662 INFO L87 Difference]: Start difference. First operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 36 states. [2022-04-28 07:28:26,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:26,663 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-28 07:28:26,663 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-28 07:28:26,664 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:28:26,664 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:28:26,664 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:28:26,664 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:28:26,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:28:26,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 38 transitions. [2022-04-28 07:28:26,665 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 38 transitions. Word has length 34 [2022-04-28 07:28:26,665 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:28:26,665 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 38 transitions. [2022-04-28 07:28:26,666 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 07:28:26,666 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 38 transitions. [2022-04-28 07:28:26,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:28:26,709 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-28 07:28:26,709 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 07:28:26,709 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:28:26,710 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:28:26,727 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 07:28:26,915 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-28 07:28:26,916 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:28:26,916 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:28:26,917 INFO L85 PathProgramCache]: Analyzing trace with hash 2022075506, now seen corresponding path program 1 times [2022-04-28 07:28:26,917 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:28:26,917 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1671719743] [2022-04-28 07:28:26,917 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:28:26,917 INFO L85 PathProgramCache]: Analyzing trace with hash 2022075506, now seen corresponding path program 2 times [2022-04-28 07:28:26,917 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:28:26,917 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [758583914] [2022-04-28 07:28:26,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:28:26,918 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:28:26,939 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:28:26,940 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [885515273] [2022-04-28 07:28:26,940 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:28:26,940 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:28:26,940 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:28:26,943 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 07:28:26,944 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 07:28:26,979 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:28:26,980 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:28:26,980 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-28 07:28:26,990 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:28:26,991 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:28:27,911 INFO L272 TraceCheckUtils]: 0: Hoare triple {922#true} call ULTIMATE.init(); {922#true} is VALID [2022-04-28 07:28:27,912 INFO L290 TraceCheckUtils]: 1: Hoare triple {922#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {922#true} is VALID [2022-04-28 07:28:27,912 INFO L290 TraceCheckUtils]: 2: Hoare triple {922#true} assume true; {922#true} is VALID [2022-04-28 07:28:27,912 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {922#true} {922#true} #71#return; {922#true} is VALID [2022-04-28 07:28:27,912 INFO L272 TraceCheckUtils]: 4: Hoare triple {922#true} call #t~ret6 := main(); {922#true} is VALID [2022-04-28 07:28:27,912 INFO L290 TraceCheckUtils]: 5: Hoare triple {922#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {922#true} is VALID [2022-04-28 07:28:27,912 INFO L272 TraceCheckUtils]: 6: Hoare triple {922#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {922#true} is VALID [2022-04-28 07:28:27,913 INFO L290 TraceCheckUtils]: 7: Hoare triple {922#true} ~cond := #in~cond; {948#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:28:27,913 INFO L290 TraceCheckUtils]: 8: Hoare triple {948#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {952#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:28:27,913 INFO L290 TraceCheckUtils]: 9: Hoare triple {952#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {952#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:28:27,915 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {952#(not (= |assume_abort_if_not_#in~cond| 0))} {922#true} #61#return; {959#(and (<= 0 main_~a~0) (<= main_~a~0 2))} is VALID [2022-04-28 07:28:27,915 INFO L290 TraceCheckUtils]: 11: Hoare triple {959#(and (<= 0 main_~a~0) (<= main_~a~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {959#(and (<= 0 main_~a~0) (<= main_~a~0 2))} is VALID [2022-04-28 07:28:27,915 INFO L272 TraceCheckUtils]: 12: Hoare triple {959#(and (<= 0 main_~a~0) (<= main_~a~0 2))} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {922#true} is VALID [2022-04-28 07:28:27,917 INFO L290 TraceCheckUtils]: 13: Hoare triple {922#true} ~cond := #in~cond; {948#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:28:27,918 INFO L290 TraceCheckUtils]: 14: Hoare triple {948#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {952#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:28:27,927 INFO L290 TraceCheckUtils]: 15: Hoare triple {952#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {952#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:28:27,928 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {952#(not (= |assume_abort_if_not_#in~cond| 0))} {959#(and (<= 0 main_~a~0) (<= main_~a~0 2))} #63#return; {978#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} is VALID [2022-04-28 07:28:27,928 INFO L272 TraceCheckUtils]: 17: Hoare triple {978#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {922#true} is VALID [2022-04-28 07:28:27,928 INFO L290 TraceCheckUtils]: 18: Hoare triple {922#true} ~cond := #in~cond; {922#true} is VALID [2022-04-28 07:28:27,928 INFO L290 TraceCheckUtils]: 19: Hoare triple {922#true} assume !(0 == ~cond); {922#true} is VALID [2022-04-28 07:28:27,928 INFO L290 TraceCheckUtils]: 20: Hoare triple {922#true} assume true; {922#true} is VALID [2022-04-28 07:28:27,929 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {922#true} {978#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} #65#return; {978#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} is VALID [2022-04-28 07:28:27,929 INFO L290 TraceCheckUtils]: 22: Hoare triple {978#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {997#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:27,930 INFO L290 TraceCheckUtils]: 23: Hoare triple {997#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} assume !false; {997#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:27,930 INFO L272 TraceCheckUtils]: 24: Hoare triple {997#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {922#true} is VALID [2022-04-28 07:28:27,930 INFO L290 TraceCheckUtils]: 25: Hoare triple {922#true} ~cond := #in~cond; {922#true} is VALID [2022-04-28 07:28:27,930 INFO L290 TraceCheckUtils]: 26: Hoare triple {922#true} assume !(0 == ~cond); {922#true} is VALID [2022-04-28 07:28:27,930 INFO L290 TraceCheckUtils]: 27: Hoare triple {922#true} assume true; {922#true} is VALID [2022-04-28 07:28:27,931 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {922#true} {997#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} #67#return; {997#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:27,931 INFO L290 TraceCheckUtils]: 29: Hoare triple {997#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {1019#(and (= main_~z~0 0) (not (= main_~y~0 0)) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:27,932 INFO L290 TraceCheckUtils]: 30: Hoare triple {1019#(and (= main_~z~0 0) (not (= main_~y~0 0)) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {1023#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-28 07:28:27,933 INFO L290 TraceCheckUtils]: 31: Hoare triple {1023#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {1027#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 07:28:27,934 INFO L290 TraceCheckUtils]: 32: Hoare triple {1027#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} assume !false; {1027#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 07:28:27,936 INFO L272 TraceCheckUtils]: 33: Hoare triple {1027#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1034#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:28:27,936 INFO L290 TraceCheckUtils]: 34: Hoare triple {1034#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1038#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:28:27,936 INFO L290 TraceCheckUtils]: 35: Hoare triple {1038#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {923#false} is VALID [2022-04-28 07:28:27,937 INFO L290 TraceCheckUtils]: 36: Hoare triple {923#false} assume !false; {923#false} is VALID [2022-04-28 07:28:27,937 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 2 proven. 8 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 07:28:27,937 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:28:41,897 INFO L290 TraceCheckUtils]: 36: Hoare triple {923#false} assume !false; {923#false} is VALID [2022-04-28 07:28:41,898 INFO L290 TraceCheckUtils]: 35: Hoare triple {1038#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {923#false} is VALID [2022-04-28 07:28:41,898 INFO L290 TraceCheckUtils]: 34: Hoare triple {1034#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1038#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:28:41,900 INFO L272 TraceCheckUtils]: 33: Hoare triple {1054#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1034#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:28:41,901 INFO L290 TraceCheckUtils]: 32: Hoare triple {1054#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} assume !false; {1054#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 07:28:41,907 INFO L290 TraceCheckUtils]: 31: Hoare triple {1061#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {1054#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 07:28:41,909 INFO L290 TraceCheckUtils]: 30: Hoare triple {1065#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {1061#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-28 07:28:41,910 INFO L290 TraceCheckUtils]: 29: Hoare triple {1065#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume !!(0 != ~y~0); {1065#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 07:28:41,910 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {922#true} {1065#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} #67#return; {1065#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 07:28:41,910 INFO L290 TraceCheckUtils]: 27: Hoare triple {922#true} assume true; {922#true} is VALID [2022-04-28 07:28:41,911 INFO L290 TraceCheckUtils]: 26: Hoare triple {922#true} assume !(0 == ~cond); {922#true} is VALID [2022-04-28 07:28:41,911 INFO L290 TraceCheckUtils]: 25: Hoare triple {922#true} ~cond := #in~cond; {922#true} is VALID [2022-04-28 07:28:41,911 INFO L272 TraceCheckUtils]: 24: Hoare triple {1065#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {922#true} is VALID [2022-04-28 07:28:41,911 INFO L290 TraceCheckUtils]: 23: Hoare triple {1065#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume !false; {1065#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 07:28:42,064 INFO L290 TraceCheckUtils]: 22: Hoare triple {922#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1065#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 07:28:42,065 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {922#true} {922#true} #65#return; {922#true} is VALID [2022-04-28 07:28:42,065 INFO L290 TraceCheckUtils]: 20: Hoare triple {922#true} assume true; {922#true} is VALID [2022-04-28 07:28:42,065 INFO L290 TraceCheckUtils]: 19: Hoare triple {922#true} assume !(0 == ~cond); {922#true} is VALID [2022-04-28 07:28:42,065 INFO L290 TraceCheckUtils]: 18: Hoare triple {922#true} ~cond := #in~cond; {922#true} is VALID [2022-04-28 07:28:42,065 INFO L272 TraceCheckUtils]: 17: Hoare triple {922#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {922#true} is VALID [2022-04-28 07:28:42,065 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {922#true} {922#true} #63#return; {922#true} is VALID [2022-04-28 07:28:42,065 INFO L290 TraceCheckUtils]: 15: Hoare triple {922#true} assume true; {922#true} is VALID [2022-04-28 07:28:42,066 INFO L290 TraceCheckUtils]: 14: Hoare triple {922#true} assume !(0 == ~cond); {922#true} is VALID [2022-04-28 07:28:42,066 INFO L290 TraceCheckUtils]: 13: Hoare triple {922#true} ~cond := #in~cond; {922#true} is VALID [2022-04-28 07:28:42,066 INFO L272 TraceCheckUtils]: 12: Hoare triple {922#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {922#true} is VALID [2022-04-28 07:28:42,066 INFO L290 TraceCheckUtils]: 11: Hoare triple {922#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {922#true} is VALID [2022-04-28 07:28:42,066 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {922#true} {922#true} #61#return; {922#true} is VALID [2022-04-28 07:28:42,066 INFO L290 TraceCheckUtils]: 9: Hoare triple {922#true} assume true; {922#true} is VALID [2022-04-28 07:28:42,066 INFO L290 TraceCheckUtils]: 8: Hoare triple {922#true} assume !(0 == ~cond); {922#true} is VALID [2022-04-28 07:28:42,066 INFO L290 TraceCheckUtils]: 7: Hoare triple {922#true} ~cond := #in~cond; {922#true} is VALID [2022-04-28 07:28:42,066 INFO L272 TraceCheckUtils]: 6: Hoare triple {922#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {922#true} is VALID [2022-04-28 07:28:42,067 INFO L290 TraceCheckUtils]: 5: Hoare triple {922#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {922#true} is VALID [2022-04-28 07:28:42,067 INFO L272 TraceCheckUtils]: 4: Hoare triple {922#true} call #t~ret6 := main(); {922#true} is VALID [2022-04-28 07:28:42,067 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {922#true} {922#true} #71#return; {922#true} is VALID [2022-04-28 07:28:42,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {922#true} assume true; {922#true} is VALID [2022-04-28 07:28:42,067 INFO L290 TraceCheckUtils]: 1: Hoare triple {922#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {922#true} is VALID [2022-04-28 07:28:42,067 INFO L272 TraceCheckUtils]: 0: Hoare triple {922#true} call ULTIMATE.init(); {922#true} is VALID [2022-04-28 07:28:42,067 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 07:28:42,067 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:28:42,068 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [758583914] [2022-04-28 07:28:42,068 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:28:42,068 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [885515273] [2022-04-28 07:28:42,068 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [885515273] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 07:28:42,068 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 07:28:42,068 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [12] total 15 [2022-04-28 07:28:42,068 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:28:42,068 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1671719743] [2022-04-28 07:28:42,068 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1671719743] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:28:42,068 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:28:42,068 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 07:28:42,069 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1387326195] [2022-04-28 07:28:42,069 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:28:42,069 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 37 [2022-04-28 07:28:42,069 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:28:42,069 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 07:28:42,266 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-28 07:28:42,266 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 07:28:42,267 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:28:42,267 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 07:28:42,267 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=162, Unknown=0, NotChecked=0, Total=210 [2022-04-28 07:28:42,267 INFO L87 Difference]: Start difference. First operand 34 states and 38 transitions. Second operand has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 07:28:44,862 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:44,862 INFO L93 Difference]: Finished difference Result 47 states and 53 transitions. [2022-04-28 07:28:44,862 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 07:28:44,863 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 37 [2022-04-28 07:28:44,863 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:28:44,863 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 07:28:44,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 46 transitions. [2022-04-28 07:28:44,864 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 07:28:44,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 46 transitions. [2022-04-28 07:28:44,865 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 46 transitions. [2022-04-28 07:28:44,899 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-28 07:28:44,900 INFO L225 Difference]: With dead ends: 47 [2022-04-28 07:28:44,900 INFO L226 Difference]: Without dead ends: 45 [2022-04-28 07:28:44,900 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 58 SyntacticMatches, 2 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 52 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=59, Invalid=213, Unknown=0, NotChecked=0, Total=272 [2022-04-28 07:28:44,901 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 8 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 76 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 07:28:44,901 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 116 Invalid, 76 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 07:28:44,901 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-04-28 07:28:44,933 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 43. [2022-04-28 07:28:44,933 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:28:44,934 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:28:44,934 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:28:44,934 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:28:44,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:44,936 INFO L93 Difference]: Finished difference Result 45 states and 51 transitions. [2022-04-28 07:28:44,936 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 51 transitions. [2022-04-28 07:28:44,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:28:44,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:28:44,936 INFO L74 IsIncluded]: Start isIncluded. First operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 45 states. [2022-04-28 07:28:44,937 INFO L87 Difference]: Start difference. First operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 45 states. [2022-04-28 07:28:44,938 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:28:44,938 INFO L93 Difference]: Finished difference Result 45 states and 51 transitions. [2022-04-28 07:28:44,938 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 51 transitions. [2022-04-28 07:28:44,938 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:28:44,938 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:28:44,938 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:28:44,938 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:28:44,939 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 28 states have (on average 1.1785714285714286) internal successors, (33), 29 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:28:44,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 49 transitions. [2022-04-28 07:28:44,940 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 49 transitions. Word has length 37 [2022-04-28 07:28:44,940 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:28:44,940 INFO L495 AbstractCegarLoop]: Abstraction has 43 states and 49 transitions. [2022-04-28 07:28:44,940 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 07:28:44,940 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 43 states and 49 transitions. [2022-04-28 07:28:44,988 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-28 07:28:44,989 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 49 transitions. [2022-04-28 07:28:44,989 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 07:28:44,989 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:28:44,989 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:28:45,008 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 07:28:45,190 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:28:45,190 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:28:45,190 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:28:45,190 INFO L85 PathProgramCache]: Analyzing trace with hash -497884428, now seen corresponding path program 1 times [2022-04-28 07:28:45,191 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:28:45,191 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [105993837] [2022-04-28 07:28:45,191 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:28:45,191 INFO L85 PathProgramCache]: Analyzing trace with hash -497884428, now seen corresponding path program 2 times [2022-04-28 07:28:45,191 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:28:45,191 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1559721889] [2022-04-28 07:28:45,191 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:28:45,191 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:28:45,205 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:28:45,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [175887934] [2022-04-28 07:28:45,205 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:28:45,205 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:28:45,205 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:28:45,215 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 07:28:45,228 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 07:28:45,253 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:28:45,253 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:28:45,254 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-28 07:28:45,267 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:28:45,268 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:28:45,840 INFO L272 TraceCheckUtils]: 0: Hoare triple {1432#true} call ULTIMATE.init(); {1432#true} is VALID [2022-04-28 07:28:45,841 INFO L290 TraceCheckUtils]: 1: Hoare triple {1432#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {1432#true} is VALID [2022-04-28 07:28:45,841 INFO L290 TraceCheckUtils]: 2: Hoare triple {1432#true} assume true; {1432#true} is VALID [2022-04-28 07:28:45,841 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1432#true} {1432#true} #71#return; {1432#true} is VALID [2022-04-28 07:28:45,841 INFO L272 TraceCheckUtils]: 4: Hoare triple {1432#true} call #t~ret6 := main(); {1432#true} is VALID [2022-04-28 07:28:45,841 INFO L290 TraceCheckUtils]: 5: Hoare triple {1432#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {1432#true} is VALID [2022-04-28 07:28:45,841 INFO L272 TraceCheckUtils]: 6: Hoare triple {1432#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {1432#true} is VALID [2022-04-28 07:28:45,841 INFO L290 TraceCheckUtils]: 7: Hoare triple {1432#true} ~cond := #in~cond; {1432#true} is VALID [2022-04-28 07:28:45,841 INFO L290 TraceCheckUtils]: 8: Hoare triple {1432#true} assume !(0 == ~cond); {1432#true} is VALID [2022-04-28 07:28:45,841 INFO L290 TraceCheckUtils]: 9: Hoare triple {1432#true} assume true; {1432#true} is VALID [2022-04-28 07:28:45,842 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1432#true} {1432#true} #61#return; {1432#true} is VALID [2022-04-28 07:28:45,842 INFO L290 TraceCheckUtils]: 11: Hoare triple {1432#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1432#true} is VALID [2022-04-28 07:28:45,842 INFO L272 TraceCheckUtils]: 12: Hoare triple {1432#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {1432#true} is VALID [2022-04-28 07:28:45,842 INFO L290 TraceCheckUtils]: 13: Hoare triple {1432#true} ~cond := #in~cond; {1476#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:28:45,842 INFO L290 TraceCheckUtils]: 14: Hoare triple {1476#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:28:45,843 INFO L290 TraceCheckUtils]: 15: Hoare triple {1480#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:28:45,843 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1480#(not (= |assume_abort_if_not_#in~cond| 0))} {1432#true} #63#return; {1487#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-28 07:28:45,843 INFO L272 TraceCheckUtils]: 17: Hoare triple {1487#(and (<= main_~b~0 2) (<= 0 main_~b~0))} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {1432#true} is VALID [2022-04-28 07:28:45,844 INFO L290 TraceCheckUtils]: 18: Hoare triple {1432#true} ~cond := #in~cond; {1476#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:28:45,844 INFO L290 TraceCheckUtils]: 19: Hoare triple {1476#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:28:45,855 INFO L290 TraceCheckUtils]: 20: Hoare triple {1480#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:28:45,856 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1480#(not (= |assume_abort_if_not_#in~cond| 0))} {1487#(and (<= main_~b~0 2) (<= 0 main_~b~0))} #65#return; {1503#(and (<= main_~b~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 07:28:45,856 INFO L290 TraceCheckUtils]: 22: Hoare triple {1503#(and (<= main_~b~0 2) (<= 1 main_~b~0))} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1507#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:45,856 INFO L290 TraceCheckUtils]: 23: Hoare triple {1507#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !false; {1507#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:45,858 INFO L272 TraceCheckUtils]: 24: Hoare triple {1507#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1432#true} is VALID [2022-04-28 07:28:45,858 INFO L290 TraceCheckUtils]: 25: Hoare triple {1432#true} ~cond := #in~cond; {1432#true} is VALID [2022-04-28 07:28:45,858 INFO L290 TraceCheckUtils]: 26: Hoare triple {1432#true} assume !(0 == ~cond); {1432#true} is VALID [2022-04-28 07:28:45,858 INFO L290 TraceCheckUtils]: 27: Hoare triple {1432#true} assume true; {1432#true} is VALID [2022-04-28 07:28:45,859 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1432#true} {1507#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #67#return; {1507#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:45,860 INFO L290 TraceCheckUtils]: 29: Hoare triple {1507#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {1507#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:45,860 INFO L290 TraceCheckUtils]: 30: Hoare triple {1507#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {1532#(and (= main_~z~0 0) (<= main_~b~0 2) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:28:45,861 INFO L290 TraceCheckUtils]: 31: Hoare triple {1532#(and (= main_~z~0 0) (<= main_~b~0 2) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {1536#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-28 07:28:45,862 INFO L290 TraceCheckUtils]: 32: Hoare triple {1536#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} assume !false; {1536#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-28 07:28:45,863 INFO L272 TraceCheckUtils]: 33: Hoare triple {1536#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1543#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:28:45,864 INFO L290 TraceCheckUtils]: 34: Hoare triple {1543#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1547#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:28:45,864 INFO L290 TraceCheckUtils]: 35: Hoare triple {1547#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1433#false} is VALID [2022-04-28 07:28:45,864 INFO L290 TraceCheckUtils]: 36: Hoare triple {1433#false} assume !false; {1433#false} is VALID [2022-04-28 07:28:45,864 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 07:28:45,864 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:29:08,423 INFO L290 TraceCheckUtils]: 36: Hoare triple {1433#false} assume !false; {1433#false} is VALID [2022-04-28 07:29:08,425 INFO L290 TraceCheckUtils]: 35: Hoare triple {1547#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1433#false} is VALID [2022-04-28 07:29:08,425 INFO L290 TraceCheckUtils]: 34: Hoare triple {1543#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1547#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:29:08,426 INFO L272 TraceCheckUtils]: 33: Hoare triple {1563#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1543#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:29:08,426 INFO L290 TraceCheckUtils]: 32: Hoare triple {1563#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} assume !false; {1563#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 07:29:08,431 INFO L290 TraceCheckUtils]: 31: Hoare triple {1570#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {1563#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 07:29:08,432 INFO L290 TraceCheckUtils]: 30: Hoare triple {1574#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {1570#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-28 07:29:08,433 INFO L290 TraceCheckUtils]: 29: Hoare triple {1574#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !!(0 != ~y~0); {1574#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 07:29:08,433 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1432#true} {1574#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} #67#return; {1574#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 07:29:08,433 INFO L290 TraceCheckUtils]: 27: Hoare triple {1432#true} assume true; {1432#true} is VALID [2022-04-28 07:29:08,433 INFO L290 TraceCheckUtils]: 26: Hoare triple {1432#true} assume !(0 == ~cond); {1432#true} is VALID [2022-04-28 07:29:08,433 INFO L290 TraceCheckUtils]: 25: Hoare triple {1432#true} ~cond := #in~cond; {1432#true} is VALID [2022-04-28 07:29:08,434 INFO L272 TraceCheckUtils]: 24: Hoare triple {1574#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1432#true} is VALID [2022-04-28 07:29:08,434 INFO L290 TraceCheckUtils]: 23: Hoare triple {1574#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !false; {1574#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 07:29:08,436 INFO L290 TraceCheckUtils]: 22: Hoare triple {1599#(or (= (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1574#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 07:29:08,437 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1480#(not (= |assume_abort_if_not_#in~cond| 0))} {1432#true} #65#return; {1599#(or (= (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} is VALID [2022-04-28 07:29:08,437 INFO L290 TraceCheckUtils]: 20: Hoare triple {1480#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:29:08,438 INFO L290 TraceCheckUtils]: 19: Hoare triple {1612#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:29:08,438 INFO L290 TraceCheckUtils]: 18: Hoare triple {1432#true} ~cond := #in~cond; {1612#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 07:29:08,438 INFO L272 TraceCheckUtils]: 17: Hoare triple {1432#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {1432#true} is VALID [2022-04-28 07:29:08,438 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1432#true} {1432#true} #63#return; {1432#true} is VALID [2022-04-28 07:29:08,438 INFO L290 TraceCheckUtils]: 15: Hoare triple {1432#true} assume true; {1432#true} is VALID [2022-04-28 07:29:08,438 INFO L290 TraceCheckUtils]: 14: Hoare triple {1432#true} assume !(0 == ~cond); {1432#true} is VALID [2022-04-28 07:29:08,439 INFO L290 TraceCheckUtils]: 13: Hoare triple {1432#true} ~cond := #in~cond; {1432#true} is VALID [2022-04-28 07:29:08,439 INFO L272 TraceCheckUtils]: 12: Hoare triple {1432#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {1432#true} is VALID [2022-04-28 07:29:08,439 INFO L290 TraceCheckUtils]: 11: Hoare triple {1432#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1432#true} is VALID [2022-04-28 07:29:08,451 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1432#true} {1432#true} #61#return; {1432#true} is VALID [2022-04-28 07:29:08,451 INFO L290 TraceCheckUtils]: 9: Hoare triple {1432#true} assume true; {1432#true} is VALID [2022-04-28 07:29:08,451 INFO L290 TraceCheckUtils]: 8: Hoare triple {1432#true} assume !(0 == ~cond); {1432#true} is VALID [2022-04-28 07:29:08,451 INFO L290 TraceCheckUtils]: 7: Hoare triple {1432#true} ~cond := #in~cond; {1432#true} is VALID [2022-04-28 07:29:08,452 INFO L272 TraceCheckUtils]: 6: Hoare triple {1432#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {1432#true} is VALID [2022-04-28 07:29:08,452 INFO L290 TraceCheckUtils]: 5: Hoare triple {1432#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {1432#true} is VALID [2022-04-28 07:29:08,452 INFO L272 TraceCheckUtils]: 4: Hoare triple {1432#true} call #t~ret6 := main(); {1432#true} is VALID [2022-04-28 07:29:08,452 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1432#true} {1432#true} #71#return; {1432#true} is VALID [2022-04-28 07:29:08,452 INFO L290 TraceCheckUtils]: 2: Hoare triple {1432#true} assume true; {1432#true} is VALID [2022-04-28 07:29:08,452 INFO L290 TraceCheckUtils]: 1: Hoare triple {1432#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {1432#true} is VALID [2022-04-28 07:29:08,452 INFO L272 TraceCheckUtils]: 0: Hoare triple {1432#true} call ULTIMATE.init(); {1432#true} is VALID [2022-04-28 07:29:08,452 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 07:29:08,452 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:29:08,453 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1559721889] [2022-04-28 07:29:08,453 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:29:08,453 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [175887934] [2022-04-28 07:29:08,453 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [175887934] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:29:08,453 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:29:08,453 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10] total 16 [2022-04-28 07:29:08,453 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:29:08,453 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [105993837] [2022-04-28 07:29:08,453 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [105993837] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:29:08,453 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:29:08,453 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 07:29:08,453 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1205718664] [2022-04-28 07:29:08,453 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:29:08,454 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 4 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 37 [2022-04-28 07:29:08,454 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:29:08,454 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 4 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-28 07:29:08,474 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:29:08,474 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 07:29:08,474 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:29:08,474 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 07:29:08,474 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=188, Unknown=0, NotChecked=0, Total=240 [2022-04-28 07:29:08,475 INFO L87 Difference]: Start difference. First operand 43 states and 49 transitions. Second operand has 11 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 4 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-28 07:29:08,881 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:29:08,881 INFO L93 Difference]: Finished difference Result 65 states and 77 transitions. [2022-04-28 07:29:08,881 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 07:29:08,882 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 4 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 37 [2022-04-28 07:29:08,882 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:29:08,882 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 4 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-28 07:29:08,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 63 transitions. [2022-04-28 07:29:08,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 4 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-28 07:29:08,884 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 63 transitions. [2022-04-28 07:29:08,885 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 63 transitions. [2022-04-28 07:29:08,932 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:29:08,933 INFO L225 Difference]: With dead ends: 65 [2022-04-28 07:29:08,933 INFO L226 Difference]: Without dead ends: 53 [2022-04-28 07:29:08,933 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 58 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 54 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=61, Invalid=245, Unknown=0, NotChecked=0, Total=306 [2022-04-28 07:29:08,934 INFO L413 NwaCegarLoop]: 23 mSDtfsCounter, 18 mSDsluCounter, 104 mSDsCounter, 0 mSdLazyCounter, 153 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 127 SdHoareTripleChecker+Invalid, 159 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 153 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 07:29:08,934 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [21 Valid, 127 Invalid, 159 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 153 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 07:29:08,934 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-04-28 07:29:08,975 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 53. [2022-04-28 07:29:08,975 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:29:08,976 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 53 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 37 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:29:08,976 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 53 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 37 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:29:08,976 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 53 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 37 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:29:08,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:29:08,978 INFO L93 Difference]: Finished difference Result 53 states and 60 transitions. [2022-04-28 07:29:08,978 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 60 transitions. [2022-04-28 07:29:08,978 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:29:08,978 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:29:08,978 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 37 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 53 states. [2022-04-28 07:29:08,978 INFO L87 Difference]: Start difference. First operand has 53 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 37 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 53 states. [2022-04-28 07:29:08,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:29:08,980 INFO L93 Difference]: Finished difference Result 53 states and 60 transitions. [2022-04-28 07:29:08,980 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 60 transitions. [2022-04-28 07:29:08,980 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:29:08,980 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:29:08,980 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:29:08,980 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:29:08,980 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 37 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:29:08,982 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 60 transitions. [2022-04-28 07:29:08,982 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 60 transitions. Word has length 37 [2022-04-28 07:29:08,982 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:29:08,982 INFO L495 AbstractCegarLoop]: Abstraction has 53 states and 60 transitions. [2022-04-28 07:29:08,982 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 4 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-28 07:29:08,982 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 53 states and 60 transitions. [2022-04-28 07:29:09,047 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:29:09,047 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 60 transitions. [2022-04-28 07:29:09,047 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 07:29:09,047 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:29:09,047 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:29:09,070 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-28 07:29:09,248 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:29:09,248 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:29:09,248 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:29:09,248 INFO L85 PathProgramCache]: Analyzing trace with hash -1351630086, now seen corresponding path program 1 times [2022-04-28 07:29:09,248 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:29:09,248 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [155533063] [2022-04-28 07:29:09,249 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:29:09,249 INFO L85 PathProgramCache]: Analyzing trace with hash -1351630086, now seen corresponding path program 2 times [2022-04-28 07:29:09,249 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:29:09,249 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [577145137] [2022-04-28 07:29:09,249 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:29:09,249 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:29:09,259 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:29:09,259 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [791655002] [2022-04-28 07:29:09,259 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:29:09,259 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:29:09,260 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:29:09,260 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 07:29:09,261 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 07:29:09,295 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:29:09,295 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:29:09,297 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 07:29:09,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:29:09,307 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:29:11,452 INFO L272 TraceCheckUtils]: 0: Hoare triple {2015#true} call ULTIMATE.init(); {2015#true} is VALID [2022-04-28 07:29:11,452 INFO L290 TraceCheckUtils]: 1: Hoare triple {2015#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {2015#true} is VALID [2022-04-28 07:29:11,452 INFO L290 TraceCheckUtils]: 2: Hoare triple {2015#true} assume true; {2015#true} is VALID [2022-04-28 07:29:11,452 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2015#true} {2015#true} #71#return; {2015#true} is VALID [2022-04-28 07:29:11,452 INFO L272 TraceCheckUtils]: 4: Hoare triple {2015#true} call #t~ret6 := main(); {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L290 TraceCheckUtils]: 5: Hoare triple {2015#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L272 TraceCheckUtils]: 6: Hoare triple {2015#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L290 TraceCheckUtils]: 7: Hoare triple {2015#true} ~cond := #in~cond; {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L290 TraceCheckUtils]: 8: Hoare triple {2015#true} assume !(0 == ~cond); {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L290 TraceCheckUtils]: 9: Hoare triple {2015#true} assume true; {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2015#true} {2015#true} #61#return; {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L290 TraceCheckUtils]: 11: Hoare triple {2015#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L272 TraceCheckUtils]: 12: Hoare triple {2015#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L290 TraceCheckUtils]: 13: Hoare triple {2015#true} ~cond := #in~cond; {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L290 TraceCheckUtils]: 14: Hoare triple {2015#true} assume !(0 == ~cond); {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L290 TraceCheckUtils]: 15: Hoare triple {2015#true} assume true; {2015#true} is VALID [2022-04-28 07:29:11,453 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2015#true} {2015#true} #63#return; {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L272 TraceCheckUtils]: 17: Hoare triple {2015#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L290 TraceCheckUtils]: 18: Hoare triple {2015#true} ~cond := #in~cond; {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L290 TraceCheckUtils]: 19: Hoare triple {2015#true} assume !(0 == ~cond); {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L290 TraceCheckUtils]: 20: Hoare triple {2015#true} assume true; {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2015#true} {2015#true} #65#return; {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L290 TraceCheckUtils]: 22: Hoare triple {2015#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L290 TraceCheckUtils]: 23: Hoare triple {2015#true} assume !false; {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L272 TraceCheckUtils]: 24: Hoare triple {2015#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L290 TraceCheckUtils]: 25: Hoare triple {2015#true} ~cond := #in~cond; {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L290 TraceCheckUtils]: 26: Hoare triple {2015#true} assume !(0 == ~cond); {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L290 TraceCheckUtils]: 27: Hoare triple {2015#true} assume true; {2015#true} is VALID [2022-04-28 07:29:11,454 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2015#true} {2015#true} #67#return; {2015#true} is VALID [2022-04-28 07:29:11,455 INFO L290 TraceCheckUtils]: 29: Hoare triple {2015#true} assume !!(0 != ~y~0); {2015#true} is VALID [2022-04-28 07:29:11,455 INFO L290 TraceCheckUtils]: 30: Hoare triple {2015#true} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2015#true} is VALID [2022-04-28 07:29:11,455 INFO L290 TraceCheckUtils]: 31: Hoare triple {2015#true} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2015#true} is VALID [2022-04-28 07:29:11,455 INFO L290 TraceCheckUtils]: 32: Hoare triple {2015#true} assume !false; {2015#true} is VALID [2022-04-28 07:29:11,455 INFO L272 TraceCheckUtils]: 33: Hoare triple {2015#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2015#true} is VALID [2022-04-28 07:29:11,455 INFO L290 TraceCheckUtils]: 34: Hoare triple {2015#true} ~cond := #in~cond; {2122#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:29:11,456 INFO L290 TraceCheckUtils]: 35: Hoare triple {2122#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2126#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:29:11,456 INFO L290 TraceCheckUtils]: 36: Hoare triple {2126#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2126#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:29:13,458 WARN L284 TraceCheckUtils]: 37: Hoare quadruple {2126#(not (= |__VERIFIER_assert_#in~cond| 0))} {2015#true} #67#return; {2133#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} is UNKNOWN [2022-04-28 07:29:13,459 INFO L290 TraceCheckUtils]: 38: Hoare triple {2133#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} assume !(0 != ~y~0); {2137#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-28 07:29:13,460 INFO L272 TraceCheckUtils]: 39: Hoare triple {2137#(= main_~z~0 (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {2141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:29:13,460 INFO L290 TraceCheckUtils]: 40: Hoare triple {2141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:29:13,460 INFO L290 TraceCheckUtils]: 41: Hoare triple {2145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2016#false} is VALID [2022-04-28 07:29:13,461 INFO L290 TraceCheckUtils]: 42: Hoare triple {2016#false} assume !false; {2016#false} is VALID [2022-04-28 07:29:13,461 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 07:29:13,461 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:29:27,914 INFO L290 TraceCheckUtils]: 42: Hoare triple {2016#false} assume !false; {2016#false} is VALID [2022-04-28 07:29:27,914 INFO L290 TraceCheckUtils]: 41: Hoare triple {2145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2016#false} is VALID [2022-04-28 07:29:27,915 INFO L290 TraceCheckUtils]: 40: Hoare triple {2141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:29:27,915 INFO L272 TraceCheckUtils]: 39: Hoare triple {2137#(= main_~z~0 (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {2141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:29:27,916 INFO L290 TraceCheckUtils]: 38: Hoare triple {2164#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} assume !(0 != ~y~0); {2137#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-28 07:29:27,916 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2126#(not (= |__VERIFIER_assert_#in~cond| 0))} {2015#true} #67#return; {2164#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-28 07:29:27,917 INFO L290 TraceCheckUtils]: 36: Hoare triple {2126#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2126#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:29:27,917 INFO L290 TraceCheckUtils]: 35: Hoare triple {2177#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2126#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:29:27,918 INFO L290 TraceCheckUtils]: 34: Hoare triple {2015#true} ~cond := #in~cond; {2177#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 07:29:27,918 INFO L272 TraceCheckUtils]: 33: Hoare triple {2015#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2015#true} is VALID [2022-04-28 07:29:27,918 INFO L290 TraceCheckUtils]: 32: Hoare triple {2015#true} assume !false; {2015#true} is VALID [2022-04-28 07:29:27,918 INFO L290 TraceCheckUtils]: 31: Hoare triple {2015#true} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2015#true} is VALID [2022-04-28 07:29:27,918 INFO L290 TraceCheckUtils]: 30: Hoare triple {2015#true} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2015#true} is VALID [2022-04-28 07:29:27,918 INFO L290 TraceCheckUtils]: 29: Hoare triple {2015#true} assume !!(0 != ~y~0); {2015#true} is VALID [2022-04-28 07:29:27,918 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2015#true} {2015#true} #67#return; {2015#true} is VALID [2022-04-28 07:29:27,918 INFO L290 TraceCheckUtils]: 27: Hoare triple {2015#true} assume true; {2015#true} is VALID [2022-04-28 07:29:27,918 INFO L290 TraceCheckUtils]: 26: Hoare triple {2015#true} assume !(0 == ~cond); {2015#true} is VALID [2022-04-28 07:29:27,918 INFO L290 TraceCheckUtils]: 25: Hoare triple {2015#true} ~cond := #in~cond; {2015#true} is VALID [2022-04-28 07:29:27,918 INFO L272 TraceCheckUtils]: 24: Hoare triple {2015#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2015#true} is VALID [2022-04-28 07:29:27,918 INFO L290 TraceCheckUtils]: 23: Hoare triple {2015#true} assume !false; {2015#true} is VALID [2022-04-28 07:29:27,919 INFO L290 TraceCheckUtils]: 22: Hoare triple {2015#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2015#true} is VALID [2022-04-28 07:29:27,919 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2015#true} {2015#true} #65#return; {2015#true} is VALID [2022-04-28 07:29:27,919 INFO L290 TraceCheckUtils]: 20: Hoare triple {2015#true} assume true; {2015#true} is VALID [2022-04-28 07:29:27,919 INFO L290 TraceCheckUtils]: 19: Hoare triple {2015#true} assume !(0 == ~cond); {2015#true} is VALID [2022-04-28 07:29:27,919 INFO L290 TraceCheckUtils]: 18: Hoare triple {2015#true} ~cond := #in~cond; {2015#true} is VALID [2022-04-28 07:29:27,919 INFO L272 TraceCheckUtils]: 17: Hoare triple {2015#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2015#true} is VALID [2022-04-28 07:29:27,919 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2015#true} {2015#true} #63#return; {2015#true} is VALID [2022-04-28 07:29:27,919 INFO L290 TraceCheckUtils]: 15: Hoare triple {2015#true} assume true; {2015#true} is VALID [2022-04-28 07:29:27,919 INFO L290 TraceCheckUtils]: 14: Hoare triple {2015#true} assume !(0 == ~cond); {2015#true} is VALID [2022-04-28 07:29:27,920 INFO L290 TraceCheckUtils]: 13: Hoare triple {2015#true} ~cond := #in~cond; {2015#true} is VALID [2022-04-28 07:29:27,920 INFO L272 TraceCheckUtils]: 12: Hoare triple {2015#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {2015#true} is VALID [2022-04-28 07:29:27,920 INFO L290 TraceCheckUtils]: 11: Hoare triple {2015#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {2015#true} is VALID [2022-04-28 07:29:27,920 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2015#true} {2015#true} #61#return; {2015#true} is VALID [2022-04-28 07:29:27,920 INFO L290 TraceCheckUtils]: 9: Hoare triple {2015#true} assume true; {2015#true} is VALID [2022-04-28 07:29:27,920 INFO L290 TraceCheckUtils]: 8: Hoare triple {2015#true} assume !(0 == ~cond); {2015#true} is VALID [2022-04-28 07:29:27,920 INFO L290 TraceCheckUtils]: 7: Hoare triple {2015#true} ~cond := #in~cond; {2015#true} is VALID [2022-04-28 07:29:27,920 INFO L272 TraceCheckUtils]: 6: Hoare triple {2015#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {2015#true} is VALID [2022-04-28 07:29:27,920 INFO L290 TraceCheckUtils]: 5: Hoare triple {2015#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {2015#true} is VALID [2022-04-28 07:29:27,920 INFO L272 TraceCheckUtils]: 4: Hoare triple {2015#true} call #t~ret6 := main(); {2015#true} is VALID [2022-04-28 07:29:27,921 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2015#true} {2015#true} #71#return; {2015#true} is VALID [2022-04-28 07:29:27,921 INFO L290 TraceCheckUtils]: 2: Hoare triple {2015#true} assume true; {2015#true} is VALID [2022-04-28 07:29:27,921 INFO L290 TraceCheckUtils]: 1: Hoare triple {2015#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {2015#true} is VALID [2022-04-28 07:29:27,921 INFO L272 TraceCheckUtils]: 0: Hoare triple {2015#true} call ULTIMATE.init(); {2015#true} is VALID [2022-04-28 07:29:27,921 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 07:29:27,921 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:29:27,921 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [577145137] [2022-04-28 07:29:27,921 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:29:27,922 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [791655002] [2022-04-28 07:29:27,922 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [791655002] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:29:27,922 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:29:27,922 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-28 07:29:27,922 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:29:27,922 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [155533063] [2022-04-28 07:29:27,922 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [155533063] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:29:27,922 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:29:27,922 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 07:29:27,922 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [373974344] [2022-04-28 07:29:27,922 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:29:27,923 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 2 states have call predecessors, (6), 1 states have call successors, (6) Word has length 43 [2022-04-28 07:29:27,923 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:29:27,923 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 2 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-28 07:29:29,949 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 34 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:29:29,949 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 07:29:29,949 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:29:29,950 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 07:29:29,950 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-28 07:29:29,950 INFO L87 Difference]: Start difference. First operand 53 states and 60 transitions. Second operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 2 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-28 07:29:32,011 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 07:29:32,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:29:32,522 INFO L93 Difference]: Finished difference Result 60 states and 66 transitions. [2022-04-28 07:29:32,522 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 07:29:32,522 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 2 states have call predecessors, (6), 1 states have call successors, (6) Word has length 43 [2022-04-28 07:29:32,522 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:29:32,522 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 2 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-28 07:29:32,523 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 37 transitions. [2022-04-28 07:29:32,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 2 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-28 07:29:32,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 37 transitions. [2022-04-28 07:29:32,524 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 37 transitions. [2022-04-28 07:29:34,556 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 36 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:29:34,557 INFO L225 Difference]: With dead ends: 60 [2022-04-28 07:29:34,557 INFO L226 Difference]: Without dead ends: 53 [2022-04-28 07:29:34,557 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 76 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-28 07:29:34,558 INFO L413 NwaCegarLoop]: 25 mSDtfsCounter, 13 mSDsluCounter, 95 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 1 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 120 SdHoareTripleChecker+Invalid, 71 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-28 07:29:34,558 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 120 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 69 Invalid, 1 Unknown, 0 Unchecked, 2.3s Time] [2022-04-28 07:29:34,558 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-04-28 07:29:34,594 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 52. [2022-04-28 07:29:34,595 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:29:34,595 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 52 states, 36 states have (on average 1.1111111111111112) internal successors, (40), 36 states have internal predecessors, (40), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:29:34,595 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 52 states, 36 states have (on average 1.1111111111111112) internal successors, (40), 36 states have internal predecessors, (40), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:29:34,595 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 52 states, 36 states have (on average 1.1111111111111112) internal successors, (40), 36 states have internal predecessors, (40), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:29:34,597 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:29:34,597 INFO L93 Difference]: Finished difference Result 53 states and 58 transitions. [2022-04-28 07:29:34,597 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 58 transitions. [2022-04-28 07:29:34,597 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:29:34,597 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:29:34,597 INFO L74 IsIncluded]: Start isIncluded. First operand has 52 states, 36 states have (on average 1.1111111111111112) internal successors, (40), 36 states have internal predecessors, (40), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 53 states. [2022-04-28 07:29:34,597 INFO L87 Difference]: Start difference. First operand has 52 states, 36 states have (on average 1.1111111111111112) internal successors, (40), 36 states have internal predecessors, (40), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 53 states. [2022-04-28 07:29:34,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:29:34,599 INFO L93 Difference]: Finished difference Result 53 states and 58 transitions. [2022-04-28 07:29:34,599 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 58 transitions. [2022-04-28 07:29:34,599 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:29:34,599 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:29:34,599 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:29:34,599 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:29:34,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 36 states have (on average 1.1111111111111112) internal successors, (40), 36 states have internal predecessors, (40), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:29:34,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 57 transitions. [2022-04-28 07:29:34,601 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 57 transitions. Word has length 43 [2022-04-28 07:29:34,601 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:29:34,601 INFO L495 AbstractCegarLoop]: Abstraction has 52 states and 57 transitions. [2022-04-28 07:29:34,601 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (6), 2 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-28 07:29:34,601 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 52 states and 57 transitions. [2022-04-28 07:29:39,312 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 55 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 07:29:39,313 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 57 transitions. [2022-04-28 07:29:39,313 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 07:29:39,313 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:29:39,313 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:29:39,329 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 07:29:39,515 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:29:39,515 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:29:39,516 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:29:39,516 INFO L85 PathProgramCache]: Analyzing trace with hash -1494691206, now seen corresponding path program 1 times [2022-04-28 07:29:39,516 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:29:39,516 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [75083029] [2022-04-28 07:29:39,516 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:29:39,516 INFO L85 PathProgramCache]: Analyzing trace with hash -1494691206, now seen corresponding path program 2 times [2022-04-28 07:29:39,516 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:29:39,516 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [874822345] [2022-04-28 07:29:39,517 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:29:39,517 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:29:39,535 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:29:39,535 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [426113358] [2022-04-28 07:29:39,535 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:29:39,535 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:29:39,535 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:29:39,536 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 07:29:39,537 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 07:29:39,572 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:29:39,572 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:29:39,573 INFO L263 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 07:29:39,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:29:39,589 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:29:40,188 INFO L272 TraceCheckUtils]: 0: Hoare triple {2616#true} call ULTIMATE.init(); {2616#true} is VALID [2022-04-28 07:29:40,188 INFO L290 TraceCheckUtils]: 1: Hoare triple {2616#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {2616#true} is VALID [2022-04-28 07:29:40,188 INFO L290 TraceCheckUtils]: 2: Hoare triple {2616#true} assume true; {2616#true} is VALID [2022-04-28 07:29:40,188 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2616#true} {2616#true} #71#return; {2616#true} is VALID [2022-04-28 07:29:40,188 INFO L272 TraceCheckUtils]: 4: Hoare triple {2616#true} call #t~ret6 := main(); {2616#true} is VALID [2022-04-28 07:29:40,188 INFO L290 TraceCheckUtils]: 5: Hoare triple {2616#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {2616#true} is VALID [2022-04-28 07:29:40,189 INFO L272 TraceCheckUtils]: 6: Hoare triple {2616#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {2616#true} is VALID [2022-04-28 07:29:40,189 INFO L290 TraceCheckUtils]: 7: Hoare triple {2616#true} ~cond := #in~cond; {2616#true} is VALID [2022-04-28 07:29:40,189 INFO L290 TraceCheckUtils]: 8: Hoare triple {2616#true} assume !(0 == ~cond); {2616#true} is VALID [2022-04-28 07:29:40,189 INFO L290 TraceCheckUtils]: 9: Hoare triple {2616#true} assume true; {2616#true} is VALID [2022-04-28 07:29:40,189 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2616#true} {2616#true} #61#return; {2616#true} is VALID [2022-04-28 07:29:40,189 INFO L290 TraceCheckUtils]: 11: Hoare triple {2616#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {2616#true} is VALID [2022-04-28 07:29:40,189 INFO L272 TraceCheckUtils]: 12: Hoare triple {2616#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {2616#true} is VALID [2022-04-28 07:29:40,189 INFO L290 TraceCheckUtils]: 13: Hoare triple {2616#true} ~cond := #in~cond; {2660#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:29:40,190 INFO L290 TraceCheckUtils]: 14: Hoare triple {2660#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2664#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:29:40,190 INFO L290 TraceCheckUtils]: 15: Hoare triple {2664#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2664#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:29:40,190 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2664#(not (= |assume_abort_if_not_#in~cond| 0))} {2616#true} #63#return; {2671#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-28 07:29:40,191 INFO L272 TraceCheckUtils]: 17: Hoare triple {2671#(and (<= main_~b~0 2) (<= 0 main_~b~0))} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2616#true} is VALID [2022-04-28 07:29:40,191 INFO L290 TraceCheckUtils]: 18: Hoare triple {2616#true} ~cond := #in~cond; {2616#true} is VALID [2022-04-28 07:29:40,191 INFO L290 TraceCheckUtils]: 19: Hoare triple {2616#true} assume !(0 == ~cond); {2616#true} is VALID [2022-04-28 07:29:40,191 INFO L290 TraceCheckUtils]: 20: Hoare triple {2616#true} assume true; {2616#true} is VALID [2022-04-28 07:29:40,191 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2616#true} {2671#(and (<= main_~b~0 2) (<= 0 main_~b~0))} #65#return; {2671#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-28 07:29:40,191 INFO L290 TraceCheckUtils]: 22: Hoare triple {2671#(and (<= main_~b~0 2) (<= 0 main_~b~0))} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2690#(<= main_~y~0 2)} is VALID [2022-04-28 07:29:40,192 INFO L290 TraceCheckUtils]: 23: Hoare triple {2690#(<= main_~y~0 2)} assume !false; {2690#(<= main_~y~0 2)} is VALID [2022-04-28 07:29:40,192 INFO L272 TraceCheckUtils]: 24: Hoare triple {2690#(<= main_~y~0 2)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2616#true} is VALID [2022-04-28 07:29:40,192 INFO L290 TraceCheckUtils]: 25: Hoare triple {2616#true} ~cond := #in~cond; {2616#true} is VALID [2022-04-28 07:29:40,192 INFO L290 TraceCheckUtils]: 26: Hoare triple {2616#true} assume !(0 == ~cond); {2616#true} is VALID [2022-04-28 07:29:40,192 INFO L290 TraceCheckUtils]: 27: Hoare triple {2616#true} assume true; {2616#true} is VALID [2022-04-28 07:29:40,193 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2616#true} {2690#(<= main_~y~0 2)} #67#return; {2690#(<= main_~y~0 2)} is VALID [2022-04-28 07:29:40,193 INFO L290 TraceCheckUtils]: 29: Hoare triple {2690#(<= main_~y~0 2)} assume !!(0 != ~y~0); {2712#(and (not (= main_~y~0 0)) (<= main_~y~0 2))} is VALID [2022-04-28 07:29:40,194 INFO L290 TraceCheckUtils]: 30: Hoare triple {2712#(and (not (= main_~y~0 0)) (<= main_~y~0 2))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-28 07:29:40,195 INFO L290 TraceCheckUtils]: 31: Hoare triple {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-28 07:29:40,195 INFO L290 TraceCheckUtils]: 32: Hoare triple {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} assume !false; {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-28 07:29:40,195 INFO L272 TraceCheckUtils]: 33: Hoare triple {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2616#true} is VALID [2022-04-28 07:29:40,195 INFO L290 TraceCheckUtils]: 34: Hoare triple {2616#true} ~cond := #in~cond; {2616#true} is VALID [2022-04-28 07:29:40,195 INFO L290 TraceCheckUtils]: 35: Hoare triple {2616#true} assume !(0 == ~cond); {2616#true} is VALID [2022-04-28 07:29:40,196 INFO L290 TraceCheckUtils]: 36: Hoare triple {2616#true} assume true; {2616#true} is VALID [2022-04-28 07:29:40,196 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2616#true} {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} #67#return; {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-28 07:29:40,197 INFO L290 TraceCheckUtils]: 38: Hoare triple {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} assume !!(0 != ~y~0); {2617#false} is VALID [2022-04-28 07:29:40,197 INFO L290 TraceCheckUtils]: 39: Hoare triple {2617#false} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {2617#false} is VALID [2022-04-28 07:29:40,197 INFO L290 TraceCheckUtils]: 40: Hoare triple {2617#false} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2617#false} is VALID [2022-04-28 07:29:40,197 INFO L290 TraceCheckUtils]: 41: Hoare triple {2617#false} assume !false; {2617#false} is VALID [2022-04-28 07:29:40,197 INFO L272 TraceCheckUtils]: 42: Hoare triple {2617#false} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2617#false} is VALID [2022-04-28 07:29:40,197 INFO L290 TraceCheckUtils]: 43: Hoare triple {2617#false} ~cond := #in~cond; {2617#false} is VALID [2022-04-28 07:29:40,197 INFO L290 TraceCheckUtils]: 44: Hoare triple {2617#false} assume 0 == ~cond; {2617#false} is VALID [2022-04-28 07:29:40,197 INFO L290 TraceCheckUtils]: 45: Hoare triple {2617#false} assume !false; {2617#false} is VALID [2022-04-28 07:29:40,197 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 16 proven. 3 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-28 07:29:40,198 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:29:41,436 INFO L290 TraceCheckUtils]: 45: Hoare triple {2617#false} assume !false; {2617#false} is VALID [2022-04-28 07:29:41,436 INFO L290 TraceCheckUtils]: 44: Hoare triple {2617#false} assume 0 == ~cond; {2617#false} is VALID [2022-04-28 07:29:41,436 INFO L290 TraceCheckUtils]: 43: Hoare triple {2617#false} ~cond := #in~cond; {2617#false} is VALID [2022-04-28 07:29:41,437 INFO L272 TraceCheckUtils]: 42: Hoare triple {2617#false} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2617#false} is VALID [2022-04-28 07:29:41,437 INFO L290 TraceCheckUtils]: 41: Hoare triple {2617#false} assume !false; {2617#false} is VALID [2022-04-28 07:29:41,437 INFO L290 TraceCheckUtils]: 40: Hoare triple {2617#false} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2617#false} is VALID [2022-04-28 07:29:41,437 INFO L290 TraceCheckUtils]: 39: Hoare triple {2617#false} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {2617#false} is VALID [2022-04-28 07:29:41,437 INFO L290 TraceCheckUtils]: 38: Hoare triple {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} assume !!(0 != ~y~0); {2617#false} is VALID [2022-04-28 07:29:41,438 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2616#true} {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} #67#return; {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-28 07:29:41,438 INFO L290 TraceCheckUtils]: 36: Hoare triple {2616#true} assume true; {2616#true} is VALID [2022-04-28 07:29:41,438 INFO L290 TraceCheckUtils]: 35: Hoare triple {2616#true} assume !(0 == ~cond); {2616#true} is VALID [2022-04-28 07:29:41,438 INFO L290 TraceCheckUtils]: 34: Hoare triple {2616#true} ~cond := #in~cond; {2616#true} is VALID [2022-04-28 07:29:41,438 INFO L272 TraceCheckUtils]: 33: Hoare triple {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2616#true} is VALID [2022-04-28 07:29:41,438 INFO L290 TraceCheckUtils]: 32: Hoare triple {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} assume !false; {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-28 07:29:41,440 INFO L290 TraceCheckUtils]: 31: Hoare triple {2804#(and (or (and (<= (div main_~y~0 2) 1) (<= 1 (mod (+ (div main_~y~0 2) 1) 2))) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))) (or (not (< main_~y~0 0)) (and (<= 0 (+ (div main_~y~0 2) 2)) (<= 1 (mod (div main_~y~0 2) 2)))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-28 07:29:41,441 INFO L290 TraceCheckUtils]: 30: Hoare triple {2808#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2804#(and (or (and (<= (div main_~y~0 2) 1) (<= 1 (mod (+ (div main_~y~0 2) 1) 2))) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))) (or (not (< main_~y~0 0)) (and (<= 0 (+ (div main_~y~0 2) 2)) (<= 1 (mod (div main_~y~0 2) 2)))))} is VALID [2022-04-28 07:29:41,441 INFO L290 TraceCheckUtils]: 29: Hoare triple {2808#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume !!(0 != ~y~0); {2808#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 07:29:41,442 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2616#true} {2808#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} #67#return; {2808#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 07:29:41,442 INFO L290 TraceCheckUtils]: 27: Hoare triple {2616#true} assume true; {2616#true} is VALID [2022-04-28 07:29:41,442 INFO L290 TraceCheckUtils]: 26: Hoare triple {2616#true} assume !(0 == ~cond); {2616#true} is VALID [2022-04-28 07:29:41,442 INFO L290 TraceCheckUtils]: 25: Hoare triple {2616#true} ~cond := #in~cond; {2616#true} is VALID [2022-04-28 07:29:41,442 INFO L272 TraceCheckUtils]: 24: Hoare triple {2808#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2616#true} is VALID [2022-04-28 07:29:41,445 INFO L290 TraceCheckUtils]: 23: Hoare triple {2808#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume !false; {2808#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 07:29:41,446 INFO L290 TraceCheckUtils]: 22: Hoare triple {2833#(<= (div (* (- 1) (div (+ (- 2) (* (- 1) main_~b~0)) (- 2))) (- 2)) 1)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2808#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 07:29:41,447 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2616#true} {2833#(<= (div (* (- 1) (div (+ (- 2) (* (- 1) main_~b~0)) (- 2))) (- 2)) 1)} #65#return; {2833#(<= (div (* (- 1) (div (+ (- 2) (* (- 1) main_~b~0)) (- 2))) (- 2)) 1)} is VALID [2022-04-28 07:29:41,447 INFO L290 TraceCheckUtils]: 20: Hoare triple {2616#true} assume true; {2616#true} is VALID [2022-04-28 07:29:41,447 INFO L290 TraceCheckUtils]: 19: Hoare triple {2616#true} assume !(0 == ~cond); {2616#true} is VALID [2022-04-28 07:29:41,447 INFO L290 TraceCheckUtils]: 18: Hoare triple {2616#true} ~cond := #in~cond; {2616#true} is VALID [2022-04-28 07:29:41,447 INFO L272 TraceCheckUtils]: 17: Hoare triple {2833#(<= (div (* (- 1) (div (+ (- 2) (* (- 1) main_~b~0)) (- 2))) (- 2)) 1)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2616#true} is VALID [2022-04-28 07:29:41,448 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2664#(not (= |assume_abort_if_not_#in~cond| 0))} {2616#true} #63#return; {2833#(<= (div (* (- 1) (div (+ (- 2) (* (- 1) main_~b~0)) (- 2))) (- 2)) 1)} is VALID [2022-04-28 07:29:41,448 INFO L290 TraceCheckUtils]: 15: Hoare triple {2664#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2664#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:29:41,448 INFO L290 TraceCheckUtils]: 14: Hoare triple {2861#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2664#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:29:41,448 INFO L290 TraceCheckUtils]: 13: Hoare triple {2616#true} ~cond := #in~cond; {2861#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 07:29:41,448 INFO L272 TraceCheckUtils]: 12: Hoare triple {2616#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L290 TraceCheckUtils]: 11: Hoare triple {2616#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2616#true} {2616#true} #61#return; {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L290 TraceCheckUtils]: 9: Hoare triple {2616#true} assume true; {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L290 TraceCheckUtils]: 8: Hoare triple {2616#true} assume !(0 == ~cond); {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L290 TraceCheckUtils]: 7: Hoare triple {2616#true} ~cond := #in~cond; {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L272 TraceCheckUtils]: 6: Hoare triple {2616#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L290 TraceCheckUtils]: 5: Hoare triple {2616#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L272 TraceCheckUtils]: 4: Hoare triple {2616#true} call #t~ret6 := main(); {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2616#true} {2616#true} #71#return; {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L290 TraceCheckUtils]: 2: Hoare triple {2616#true} assume true; {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L290 TraceCheckUtils]: 1: Hoare triple {2616#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {2616#true} is VALID [2022-04-28 07:29:41,449 INFO L272 TraceCheckUtils]: 0: Hoare triple {2616#true} call ULTIMATE.init(); {2616#true} is VALID [2022-04-28 07:29:41,450 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 16 proven. 3 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-28 07:29:41,450 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:29:41,450 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [874822345] [2022-04-28 07:29:41,450 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:29:41,450 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [426113358] [2022-04-28 07:29:41,450 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [426113358] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:29:41,450 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:29:41,450 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-28 07:29:41,450 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:29:41,450 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [75083029] [2022-04-28 07:29:41,450 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [75083029] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:29:41,450 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:29:41,451 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 07:29:41,451 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1184844948] [2022-04-28 07:29:41,451 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:29:41,451 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Word has length 46 [2022-04-28 07:29:41,451 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:29:41,451 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-28 07:29:41,475 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:29:41,475 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 07:29:41,475 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:29:41,475 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 07:29:41,475 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=100, Unknown=0, NotChecked=0, Total=132 [2022-04-28 07:29:41,475 INFO L87 Difference]: Start difference. First operand 52 states and 57 transitions. Second operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-28 07:29:41,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:29:41,703 INFO L93 Difference]: Finished difference Result 70 states and 75 transitions. [2022-04-28 07:29:41,703 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 07:29:41,703 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Word has length 46 [2022-04-28 07:29:41,704 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:29:41,704 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-28 07:29:41,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 46 transitions. [2022-04-28 07:29:41,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-28 07:29:41,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 46 transitions. [2022-04-28 07:29:41,706 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 46 transitions. [2022-04-28 07:29:41,737 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-28 07:29:41,737 INFO L225 Difference]: With dead ends: 70 [2022-04-28 07:29:41,737 INFO L226 Difference]: Without dead ends: 39 [2022-04-28 07:29:41,738 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 95 GetRequests, 78 SyntacticMatches, 3 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=60, Invalid=180, Unknown=0, NotChecked=0, Total=240 [2022-04-28 07:29:41,738 INFO L413 NwaCegarLoop]: 23 mSDtfsCounter, 8 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 74 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 82 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 74 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 07:29:41,738 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 101 Invalid, 82 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 74 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 07:29:41,739 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-04-28 07:29:41,781 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 39. [2022-04-28 07:29:41,781 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:29:41,781 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand has 39 states, 26 states have (on average 1.0) internal successors, (26), 26 states have internal predecessors, (26), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:29:41,781 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand has 39 states, 26 states have (on average 1.0) internal successors, (26), 26 states have internal predecessors, (26), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:29:41,782 INFO L87 Difference]: Start difference. First operand 39 states. Second operand has 39 states, 26 states have (on average 1.0) internal successors, (26), 26 states have internal predecessors, (26), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:29:41,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:29:41,783 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2022-04-28 07:29:41,783 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2022-04-28 07:29:41,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:29:41,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:29:41,783 INFO L74 IsIncluded]: Start isIncluded. First operand has 39 states, 26 states have (on average 1.0) internal successors, (26), 26 states have internal predecessors, (26), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 39 states. [2022-04-28 07:29:41,783 INFO L87 Difference]: Start difference. First operand has 39 states, 26 states have (on average 1.0) internal successors, (26), 26 states have internal predecessors, (26), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 39 states. [2022-04-28 07:29:41,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:29:41,784 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2022-04-28 07:29:41,784 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2022-04-28 07:29:41,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:29:41,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:29:41,785 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:29:41,785 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:29:41,785 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 26 states have (on average 1.0) internal successors, (26), 26 states have internal predecessors, (26), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:29:41,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 40 transitions. [2022-04-28 07:29:41,786 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 40 transitions. Word has length 46 [2022-04-28 07:29:41,786 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:29:41,786 INFO L495 AbstractCegarLoop]: Abstraction has 39 states and 40 transitions. [2022-04-28 07:29:41,786 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-28 07:29:41,786 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 39 states and 40 transitions. [2022-04-28 07:29:43,827 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 39 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:29:43,827 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2022-04-28 07:29:43,828 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 07:29:43,828 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:29:43,828 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:29:43,843 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 07:29:44,037 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:29:44,038 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:29:44,038 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:29:44,038 INFO L85 PathProgramCache]: Analyzing trace with hash 4200374, now seen corresponding path program 3 times [2022-04-28 07:29:44,038 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:29:44,038 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1966616273] [2022-04-28 07:29:44,039 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:29:44,039 INFO L85 PathProgramCache]: Analyzing trace with hash 4200374, now seen corresponding path program 4 times [2022-04-28 07:29:44,039 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:29:44,039 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [810204463] [2022-04-28 07:29:44,039 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:29:44,039 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:29:44,063 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:29:44,063 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [427492542] [2022-04-28 07:29:44,063 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 07:29:44,064 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:29:44,064 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:29:44,065 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 07:29:44,067 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 07:29:44,101 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 07:29:44,101 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:29:44,102 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-28 07:29:44,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:29:44,112 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:29:45,514 INFO L272 TraceCheckUtils]: 0: Hoare triple {3207#true} call ULTIMATE.init(); {3207#true} is VALID [2022-04-28 07:29:45,514 INFO L290 TraceCheckUtils]: 1: Hoare triple {3207#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {3207#true} is VALID [2022-04-28 07:29:45,514 INFO L290 TraceCheckUtils]: 2: Hoare triple {3207#true} assume true; {3207#true} is VALID [2022-04-28 07:29:45,514 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3207#true} {3207#true} #71#return; {3207#true} is VALID [2022-04-28 07:29:45,514 INFO L272 TraceCheckUtils]: 4: Hoare triple {3207#true} call #t~ret6 := main(); {3207#true} is VALID [2022-04-28 07:29:45,514 INFO L290 TraceCheckUtils]: 5: Hoare triple {3207#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {3207#true} is VALID [2022-04-28 07:29:45,514 INFO L272 TraceCheckUtils]: 6: Hoare triple {3207#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {3207#true} is VALID [2022-04-28 07:29:45,514 INFO L290 TraceCheckUtils]: 7: Hoare triple {3207#true} ~cond := #in~cond; {3207#true} is VALID [2022-04-28 07:29:45,514 INFO L290 TraceCheckUtils]: 8: Hoare triple {3207#true} assume !(0 == ~cond); {3207#true} is VALID [2022-04-28 07:29:45,514 INFO L290 TraceCheckUtils]: 9: Hoare triple {3207#true} assume true; {3207#true} is VALID [2022-04-28 07:29:45,515 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3207#true} {3207#true} #61#return; {3207#true} is VALID [2022-04-28 07:29:45,515 INFO L290 TraceCheckUtils]: 11: Hoare triple {3207#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {3207#true} is VALID [2022-04-28 07:29:45,515 INFO L272 TraceCheckUtils]: 12: Hoare triple {3207#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {3207#true} is VALID [2022-04-28 07:29:45,515 INFO L290 TraceCheckUtils]: 13: Hoare triple {3207#true} ~cond := #in~cond; {3251#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:29:45,515 INFO L290 TraceCheckUtils]: 14: Hoare triple {3251#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3255#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:29:45,516 INFO L290 TraceCheckUtils]: 15: Hoare triple {3255#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3255#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:29:45,516 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3255#(not (= |assume_abort_if_not_#in~cond| 0))} {3207#true} #63#return; {3262#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-28 07:29:45,516 INFO L272 TraceCheckUtils]: 17: Hoare triple {3262#(and (<= main_~b~0 2) (<= 0 main_~b~0))} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {3207#true} is VALID [2022-04-28 07:29:45,516 INFO L290 TraceCheckUtils]: 18: Hoare triple {3207#true} ~cond := #in~cond; {3207#true} is VALID [2022-04-28 07:29:45,516 INFO L290 TraceCheckUtils]: 19: Hoare triple {3207#true} assume !(0 == ~cond); {3207#true} is VALID [2022-04-28 07:29:45,516 INFO L290 TraceCheckUtils]: 20: Hoare triple {3207#true} assume true; {3207#true} is VALID [2022-04-28 07:29:45,517 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3207#true} {3262#(and (<= main_~b~0 2) (<= 0 main_~b~0))} #65#return; {3262#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-28 07:29:45,517 INFO L290 TraceCheckUtils]: 22: Hoare triple {3262#(and (<= main_~b~0 2) (<= 0 main_~b~0))} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {3281#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:29:45,517 INFO L290 TraceCheckUtils]: 23: Hoare triple {3281#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} assume !false; {3281#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:29:45,518 INFO L272 TraceCheckUtils]: 24: Hoare triple {3281#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3207#true} is VALID [2022-04-28 07:29:45,518 INFO L290 TraceCheckUtils]: 25: Hoare triple {3207#true} ~cond := #in~cond; {3207#true} is VALID [2022-04-28 07:29:45,518 INFO L290 TraceCheckUtils]: 26: Hoare triple {3207#true} assume !(0 == ~cond); {3207#true} is VALID [2022-04-28 07:29:45,518 INFO L290 TraceCheckUtils]: 27: Hoare triple {3207#true} assume true; {3207#true} is VALID [2022-04-28 07:29:45,518 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3207#true} {3281#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} #67#return; {3281#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:29:45,519 INFO L290 TraceCheckUtils]: 29: Hoare triple {3281#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {3303#(and (= main_~z~0 0) (not (= main_~y~0 0)) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:29:45,519 INFO L290 TraceCheckUtils]: 30: Hoare triple {3303#(and (= main_~z~0 0) (not (= main_~y~0 0)) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3307#(and (= main_~z~0 0) (not (= main_~y~0 0)) (<= main_~b~0 2) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:29:45,520 INFO L290 TraceCheckUtils]: 31: Hoare triple {3307#(and (= main_~z~0 0) (not (= main_~y~0 0)) (<= main_~b~0 2) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3311#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= main_~b~0 0)) (not (= (mod main_~b~0 2) 1)) (<= 0 main_~b~0))} is VALID [2022-04-28 07:29:45,520 INFO L290 TraceCheckUtils]: 32: Hoare triple {3311#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= main_~b~0 0)) (not (= (mod main_~b~0 2) 1)) (<= 0 main_~b~0))} assume !false; {3311#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= main_~b~0 0)) (not (= (mod main_~b~0 2) 1)) (<= 0 main_~b~0))} is VALID [2022-04-28 07:29:45,520 INFO L272 TraceCheckUtils]: 33: Hoare triple {3311#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= main_~b~0 0)) (not (= (mod main_~b~0 2) 1)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3207#true} is VALID [2022-04-28 07:29:45,520 INFO L290 TraceCheckUtils]: 34: Hoare triple {3207#true} ~cond := #in~cond; {3321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:29:45,521 INFO L290 TraceCheckUtils]: 35: Hoare triple {3321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:29:45,522 INFO L290 TraceCheckUtils]: 36: Hoare triple {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:29:45,523 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} {3311#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= main_~b~0 0)) (not (= (mod main_~b~0 2) 1)) (<= 0 main_~b~0))} #67#return; {3311#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= main_~b~0 0)) (not (= (mod main_~b~0 2) 1)) (<= 0 main_~b~0))} is VALID [2022-04-28 07:29:45,523 INFO L290 TraceCheckUtils]: 38: Hoare triple {3311#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= main_~b~0 0)) (not (= (mod main_~b~0 2) 1)) (<= 0 main_~b~0))} assume !!(0 != ~y~0); {3311#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= main_~b~0 0)) (not (= (mod main_~b~0 2) 1)) (<= 0 main_~b~0))} is VALID [2022-04-28 07:29:45,524 INFO L290 TraceCheckUtils]: 39: Hoare triple {3311#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= main_~b~0 0)) (not (= (mod main_~b~0 2) 1)) (<= 0 main_~b~0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {3338#(and (= main_~z~0 main_~x~0) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (= (div main_~b~0 2) (+ main_~y~0 1)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} is VALID [2022-04-28 07:29:45,525 INFO L290 TraceCheckUtils]: 40: Hoare triple {3338#(and (= main_~z~0 main_~x~0) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (= (div main_~b~0 2) (+ main_~y~0 1)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3342#(and (<= main_~b~0 2) (= (div (+ (- 1) (div main_~b~0 2)) 2) main_~y~0) (= (* main_~a~0 2) main_~z~0) (= main_~x~0 (* main_~z~0 2)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} is VALID [2022-04-28 07:29:45,526 INFO L290 TraceCheckUtils]: 41: Hoare triple {3342#(and (<= main_~b~0 2) (= (div (+ (- 1) (div main_~b~0 2)) 2) main_~y~0) (= (* main_~a~0 2) main_~z~0) (= main_~x~0 (* main_~z~0 2)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} assume !false; {3342#(and (<= main_~b~0 2) (= (div (+ (- 1) (div main_~b~0 2)) 2) main_~y~0) (= (* main_~a~0 2) main_~z~0) (= main_~x~0 (* main_~z~0 2)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} is VALID [2022-04-28 07:29:45,529 INFO L272 TraceCheckUtils]: 42: Hoare triple {3342#(and (<= main_~b~0 2) (= (div (+ (- 1) (div main_~b~0 2)) 2) main_~y~0) (= (* main_~a~0 2) main_~z~0) (= main_~x~0 (* main_~z~0 2)) (<= 0 (div main_~b~0 2)) (<= 1 (mod (div main_~b~0 2) 2)))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3349#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:29:45,529 INFO L290 TraceCheckUtils]: 43: Hoare triple {3349#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3353#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:29:45,530 INFO L290 TraceCheckUtils]: 44: Hoare triple {3353#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3208#false} is VALID [2022-04-28 07:29:45,530 INFO L290 TraceCheckUtils]: 45: Hoare triple {3208#false} assume !false; {3208#false} is VALID [2022-04-28 07:29:45,530 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 9 proven. 13 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-28 07:29:45,530 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:30:39,691 INFO L290 TraceCheckUtils]: 45: Hoare triple {3208#false} assume !false; {3208#false} is VALID [2022-04-28 07:30:39,691 INFO L290 TraceCheckUtils]: 44: Hoare triple {3353#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3208#false} is VALID [2022-04-28 07:30:39,692 INFO L290 TraceCheckUtils]: 43: Hoare triple {3349#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3353#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:30:39,692 INFO L272 TraceCheckUtils]: 42: Hoare triple {3369#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3349#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:30:39,693 INFO L290 TraceCheckUtils]: 41: Hoare triple {3369#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} assume !false; {3369#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 07:30:39,698 INFO L290 TraceCheckUtils]: 40: Hoare triple {3376#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3369#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 07:30:39,700 INFO L290 TraceCheckUtils]: 39: Hoare triple {3380#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {3376#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-28 07:30:39,700 INFO L290 TraceCheckUtils]: 38: Hoare triple {3380#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} assume !!(0 != ~y~0); {3380#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 07:30:39,929 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} {3207#true} #67#return; {3380#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 07:30:39,930 INFO L290 TraceCheckUtils]: 36: Hoare triple {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:30:39,930 INFO L290 TraceCheckUtils]: 35: Hoare triple {3396#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:30:39,931 INFO L290 TraceCheckUtils]: 34: Hoare triple {3207#true} ~cond := #in~cond; {3396#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 07:30:39,931 INFO L272 TraceCheckUtils]: 33: Hoare triple {3207#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3207#true} is VALID [2022-04-28 07:30:39,931 INFO L290 TraceCheckUtils]: 32: Hoare triple {3207#true} assume !false; {3207#true} is VALID [2022-04-28 07:30:39,931 INFO L290 TraceCheckUtils]: 31: Hoare triple {3207#true} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3207#true} is VALID [2022-04-28 07:30:39,931 INFO L290 TraceCheckUtils]: 30: Hoare triple {3207#true} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3207#true} is VALID [2022-04-28 07:30:39,931 INFO L290 TraceCheckUtils]: 29: Hoare triple {3207#true} assume !!(0 != ~y~0); {3207#true} is VALID [2022-04-28 07:30:39,931 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3207#true} {3207#true} #67#return; {3207#true} is VALID [2022-04-28 07:30:39,931 INFO L290 TraceCheckUtils]: 27: Hoare triple {3207#true} assume true; {3207#true} is VALID [2022-04-28 07:30:39,931 INFO L290 TraceCheckUtils]: 26: Hoare triple {3207#true} assume !(0 == ~cond); {3207#true} is VALID [2022-04-28 07:30:39,931 INFO L290 TraceCheckUtils]: 25: Hoare triple {3207#true} ~cond := #in~cond; {3207#true} is VALID [2022-04-28 07:30:39,931 INFO L272 TraceCheckUtils]: 24: Hoare triple {3207#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3207#true} is VALID [2022-04-28 07:30:39,931 INFO L290 TraceCheckUtils]: 23: Hoare triple {3207#true} assume !false; {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L290 TraceCheckUtils]: 22: Hoare triple {3207#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3207#true} {3207#true} #65#return; {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L290 TraceCheckUtils]: 20: Hoare triple {3207#true} assume true; {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L290 TraceCheckUtils]: 19: Hoare triple {3207#true} assume !(0 == ~cond); {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L290 TraceCheckUtils]: 18: Hoare triple {3207#true} ~cond := #in~cond; {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L272 TraceCheckUtils]: 17: Hoare triple {3207#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3207#true} {3207#true} #63#return; {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L290 TraceCheckUtils]: 15: Hoare triple {3207#true} assume true; {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L290 TraceCheckUtils]: 14: Hoare triple {3207#true} assume !(0 == ~cond); {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L290 TraceCheckUtils]: 13: Hoare triple {3207#true} ~cond := #in~cond; {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L272 TraceCheckUtils]: 12: Hoare triple {3207#true} call assume_abort_if_not((if ~b~0 >= 0 && ~b~0 <= 2 then 1 else 0)); {3207#true} is VALID [2022-04-28 07:30:39,932 INFO L290 TraceCheckUtils]: 11: Hoare triple {3207#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3207#true} {3207#true} #61#return; {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L290 TraceCheckUtils]: 9: Hoare triple {3207#true} assume true; {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L290 TraceCheckUtils]: 8: Hoare triple {3207#true} assume !(0 == ~cond); {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L290 TraceCheckUtils]: 7: Hoare triple {3207#true} ~cond := #in~cond; {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L272 TraceCheckUtils]: 6: Hoare triple {3207#true} call assume_abort_if_not((if ~a~0 >= 0 && ~a~0 <= 2 then 1 else 0)); {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L290 TraceCheckUtils]: 5: Hoare triple {3207#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4; {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L272 TraceCheckUtils]: 4: Hoare triple {3207#true} call #t~ret6 := main(); {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3207#true} {3207#true} #71#return; {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L290 TraceCheckUtils]: 2: Hoare triple {3207#true} assume true; {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L290 TraceCheckUtils]: 1: Hoare triple {3207#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {3207#true} is VALID [2022-04-28 07:30:39,933 INFO L272 TraceCheckUtils]: 0: Hoare triple {3207#true} call ULTIMATE.init(); {3207#true} is VALID [2022-04-28 07:30:39,934 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 13 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 07:30:39,934 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:30:39,934 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [810204463] [2022-04-28 07:30:39,934 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:30:39,934 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [427492542] [2022-04-28 07:30:39,934 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [427492542] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:30:39,934 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:30:39,934 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 9] total 19 [2022-04-28 07:30:39,934 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:30:39,934 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1966616273] [2022-04-28 07:30:39,934 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1966616273] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:30:39,934 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:30:39,935 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 07:30:39,935 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [353961669] [2022-04-28 07:30:39,935 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:30:39,935 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), 5 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Word has length 46 [2022-04-28 07:30:39,935 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:30:39,935 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), 5 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-28 07:30:39,968 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-28 07:30:39,968 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 07:30:39,968 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:30:39,968 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 07:30:39,968 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=64, Invalid=278, Unknown=0, NotChecked=0, Total=342 [2022-04-28 07:30:39,969 INFO L87 Difference]: Start difference. First operand 39 states and 40 transitions. Second operand has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 13 states have internal predecessors, (29), 5 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-28 07:30:40,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:30:40,667 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2022-04-28 07:30:40,668 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 07:30:40,668 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), 5 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Word has length 46 [2022-04-28 07:30:40,668 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:30:40,668 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), 5 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-28 07:30:40,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 36 transitions. [2022-04-28 07:30:40,669 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), 5 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-28 07:30:40,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 36 transitions. [2022-04-28 07:30:40,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 36 transitions. [2022-04-28 07:30:40,704 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:30:40,704 INFO L225 Difference]: With dead ends: 39 [2022-04-28 07:30:40,704 INFO L226 Difference]: Without dead ends: 0 [2022-04-28 07:30:40,704 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 71 SyntacticMatches, 3 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 96 ImplicationChecksByTransitivity, 1.7s TimeCoverageRelationStatistics Valid=75, Invalid=345, Unknown=0, NotChecked=0, Total=420 [2022-04-28 07:30:40,705 INFO L413 NwaCegarLoop]: 19 mSDtfsCounter, 17 mSDsluCounter, 122 mSDsCounter, 0 mSdLazyCounter, 205 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 213 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 205 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 07:30:40,705 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 141 Invalid, 213 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 205 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 07:30:40,705 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-28 07:30:40,705 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-28 07:30:40,705 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:30:40,705 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-28 07:30:40,705 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-28 07:30:40,705 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-28 07:30:40,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:30:40,706 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 07:30:40,706 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 07:30:40,706 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:30:40,706 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:30:40,706 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-28 07:30:40,706 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-28 07:30:40,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:30:40,706 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 07:30:40,706 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 07:30:40,706 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:30:40,706 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:30:40,706 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:30:40,706 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:30:40,706 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-28 07:30:40,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-28 07:30:40,706 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 46 [2022-04-28 07:30:40,707 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:30:40,707 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-28 07:30:40,707 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 13 states have internal predecessors, (29), 5 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-28 07:30:40,707 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-28 07:30:40,707 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-28 07:30:40,708 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 07:30:40,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:30:40,710 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-28 07:30:40,727 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 07:30:40,923 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:30:40,925 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-28 07:30:47,706 WARN L232 SmtUtils]: Spent 6.62s on a formula simplification. DAG size of input: 41 DAG size of output: 28 (called from [L 149] de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.HoareAnnotationComposer.combineInter) [2022-04-28 07:30:58,830 WARN L232 SmtUtils]: Spent 8.26s on a formula simplification. DAG size of input: 46 DAG size of output: 45 (called from [L 149] de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.HoareAnnotationComposer.combineInter) [2022-04-28 07:30:58,850 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 6) no Hoare annotation was computed. [2022-04-28 07:30:58,850 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 6) no Hoare annotation was computed. [2022-04-28 07:30:58,851 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 6) no Hoare annotation was computed. [2022-04-28 07:30:58,851 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 9 11) the Hoare annotation is: true [2022-04-28 07:30:58,851 INFO L895 garLoopResultBuilder]: At program point L10(line 10) the Hoare annotation is: (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|) [2022-04-28 07:30:58,851 INFO L895 garLoopResultBuilder]: At program point L10-2(lines 9 11) 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-28 07:30:58,851 INFO L895 garLoopResultBuilder]: At program point assume_abort_if_notEXIT(lines 9 11) 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-28 07:30:58,851 INFO L902 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: true [2022-04-28 07:30:58,851 INFO L895 garLoopResultBuilder]: At program point L27-1(line 27) the Hoare annotation is: (and (<= main_~b~0 2) (<= 0 main_~b~0)) [2022-04-28 07:30:58,851 INFO L902 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: true [2022-04-28 07:30:58,851 INFO L902 garLoopResultBuilder]: At program point mainEXIT(lines 20 49) the Hoare annotation is: true [2022-04-28 07:30:58,851 INFO L902 garLoopResultBuilder]: At program point L25-1(line 25) the Hoare annotation is: true [2022-04-28 07:30:58,851 INFO L902 garLoopResultBuilder]: At program point L46(line 46) the Hoare annotation is: true [2022-04-28 07:30:58,851 INFO L902 garLoopResultBuilder]: At program point mainFINAL(lines 20 49) the Hoare annotation is: true [2022-04-28 07:30:58,851 INFO L895 garLoopResultBuilder]: At program point L34-2(lines 34 45) the Hoare annotation is: (let ((.cse0 (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (.cse2 (<= main_~b~0 2)) (.cse3 (<= 1 main_~b~0))) (or (and .cse0 (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0)) (let ((.cse1 (+ main_~y~0 1))) (and (<= 1 (mod .cse1 2)) .cse0 .cse2 .cse3 (<= 0 .cse1) (<= main_~y~0 1))) (and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) .cse2 (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) .cse3))) [2022-04-28 07:30:58,851 INFO L895 garLoopResultBuilder]: At program point L34-3(lines 34 45) the Hoare annotation is: (let ((.cse0 (* main_~b~0 main_~a~0))) (and (= main_~z~0 .cse0) (<= main_~b~0 2) (<= 1 main_~b~0) (or (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0) (= .cse0 (+ (* main_~x~0 2) (* 2 (* (div main_~y~0 2) main_~x~0)) main_~z~0))))) [2022-04-28 07:30:58,851 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 20 49) the Hoare annotation is: true [2022-04-28 07:30:58,852 INFO L895 garLoopResultBuilder]: At program point L28(line 28) the Hoare annotation is: (and (<= main_~b~0 2) (<= 1 main_~b~0)) [2022-04-28 07:30:58,852 INFO L895 garLoopResultBuilder]: At program point L39(lines 39 42) the Hoare annotation is: (let ((.cse0 (<= 1 main_~b~0))) (or (and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) .cse0) (and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (<= main_~y~0 2) (= main_~b~0 main_~y~0) .cse0 (= main_~a~0 main_~x~0)))) [2022-04-28 07:30:58,852 INFO L895 garLoopResultBuilder]: At program point L39-2(lines 39 42) the Hoare annotation is: (let ((.cse1 (<= 1 main_~b~0))) (or (let ((.cse0 (+ main_~y~0 1))) (and (<= 1 (mod .cse0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (<= main_~b~0 2) .cse1 (<= 0 .cse0) (<= main_~y~0 1))) (and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (<= main_~y~0 2) (= main_~b~0 main_~y~0) .cse1 (= main_~a~0 main_~x~0)))) [2022-04-28 07:30:58,852 INFO L895 garLoopResultBuilder]: At program point L35(line 35) the Hoare annotation is: (let ((.cse0 (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (.cse2 (<= main_~b~0 2)) (.cse3 (<= 1 main_~b~0))) (or (and .cse0 (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0)) (let ((.cse1 (+ main_~y~0 1))) (and (<= 1 (mod .cse1 2)) .cse0 .cse2 .cse3 (<= 0 .cse1) (<= main_~y~0 1))) (and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) .cse2 (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) .cse3))) [2022-04-28 07:30:58,852 INFO L895 garLoopResultBuilder]: At program point L35-1(lines 34 45) the Hoare annotation is: (let ((.cse0 (* main_~b~0 main_~a~0))) (let ((.cse1 (or (= main_~z~0 .cse0) (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) .cse0) main_~y~0) 0)))) (.cse3 (<= main_~b~0 2)) (.cse4 (<= 1 main_~b~0))) (or (and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) .cse0) .cse1 (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0)) (let ((.cse2 (+ main_~y~0 1))) (and (<= 1 (mod .cse2 2)) .cse1 .cse3 .cse4 (<= 0 .cse2) (<= main_~y~0 1))) (and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) .cse3 (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) .cse4)))) [2022-04-28 07:30:58,852 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2022-04-28 07:30:58,852 INFO L895 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-28 07:30:58,852 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2022-04-28 07:30:58,852 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-28 07:30:58,852 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-28 07:30:58,852 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-28 07:30:58,852 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-28 07:30:58,852 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 12 18) the Hoare annotation is: true [2022-04-28 07:30:58,852 INFO L895 garLoopResultBuilder]: At program point L14(lines 14 15) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-28 07:30:58,852 INFO L895 garLoopResultBuilder]: At program point L13(lines 13 16) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-28 07:30:58,852 INFO L895 garLoopResultBuilder]: At program point L13-2(lines 12 18) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-28 07:30:58,853 INFO L895 garLoopResultBuilder]: At program point __VERIFIER_assertEXIT(lines 12 18) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-28 07:30:58,853 INFO L895 garLoopResultBuilder]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 15) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-28 07:30:58,855 INFO L356 BasicCegarLoop]: Path program histogram: [4, 2, 2, 2, 2, 2, 2] [2022-04-28 07:30:58,856 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-28 07:30:58,857 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-28 07:30:58,866 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-28 07:30:59,379 INFO L163 areAnnotationChecker]: CFG has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-28 07:30:59,395 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 07:30:59 BoogieIcfgContainer [2022-04-28 07:30:59,395 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-28 07:30:59,396 INFO L158 Benchmark]: Toolchain (without parser) took 155148.77ms. Allocated memory was 197.1MB in the beginning and 268.4MB in the end (delta: 71.3MB). Free memory was 143.5MB in the beginning and 205.3MB in the end (delta: -61.9MB). Peak memory consumption was 128.2MB. Max. memory is 8.0GB. [2022-04-28 07:30:59,396 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 197.1MB. Free memory is still 159.5MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 07:30:59,396 INFO L158 Benchmark]: CACSL2BoogieTranslator took 200.39ms. Allocated memory was 197.1MB in the beginning and 268.4MB in the end (delta: 71.3MB). Free memory was 143.2MB in the beginning and 239.1MB in the end (delta: -95.9MB). Peak memory consumption was 11.8MB. Max. memory is 8.0GB. [2022-04-28 07:30:59,396 INFO L158 Benchmark]: Boogie Preprocessor took 37.41ms. Allocated memory is still 268.4MB. Free memory was 239.1MB in the beginning and 237.5MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-28 07:30:59,396 INFO L158 Benchmark]: RCFGBuilder took 256.33ms. Allocated memory is still 268.4MB. Free memory was 237.5MB in the beginning and 225.5MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-28 07:30:59,397 INFO L158 Benchmark]: TraceAbstraction took 154650.67ms. Allocated memory is still 268.4MB. Free memory was 225.0MB in the beginning and 205.3MB in the end (delta: 19.6MB). Peak memory consumption was 137.6MB. Max. memory is 8.0GB. [2022-04-28 07:30:59,398 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.08ms. Allocated memory is still 197.1MB. Free memory is still 159.5MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 200.39ms. Allocated memory was 197.1MB in the beginning and 268.4MB in the end (delta: 71.3MB). Free memory was 143.2MB in the beginning and 239.1MB in the end (delta: -95.9MB). Peak memory consumption was 11.8MB. Max. memory is 8.0GB. * Boogie Preprocessor took 37.41ms. Allocated memory is still 268.4MB. Free memory was 239.1MB in the beginning and 237.5MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 256.33ms. Allocated memory is still 268.4MB. Free memory was 237.5MB in the beginning and 225.5MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 154650.67ms. Allocated memory is still 268.4MB. Free memory was 225.0MB in the beginning and 205.3MB in the end (delta: 19.6MB). Peak memory consumption was 137.6MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 15]: 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, 35 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 154.0s, OverallIterations: 8, TraceHistogramMax: 3, PathProgramHistogramMax: 4, EmptinessCheckTime: 0.0s, AutomataDifference: 9.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 17.9s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 1 mSolverCounterUnknown, 116 SdHoareTripleChecker+Valid, 3.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 105 mSDsluCounter, 815 SdHoareTripleChecker+Invalid, 3.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 621 mSDsCounter, 38 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 678 IncrementalHoareTripleChecker+Invalid, 717 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 38 mSolverCounterUnsat, 194 mSDtfsCounter, 678 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 501 GetRequests, 406 SyntacticMatches, 10 SemanticMatches, 85 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 247 ImplicationChecksByTransitivity, 3.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=53occurred in iteration=5, InterpolantAutomatonStates: 61, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 8 MinimizatonAttempts, 9 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 32 LocationsWithAnnotation, 114 PreInvPairs, 163 NumberOfFragments, 503 HoareAnnotationTreeSize, 114 FomulaSimplifications, 123 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 32 FomulaSimplificationsInter, 730 FormulaSimplificationTreeSizeReductionInter, 17.8s 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: 34]: Loop Invariant Derived loop invariant: (((((z + y * x == b * a && y <= 2) && b == y) && 1 <= y) && a == x) || (((((1 <= (y + 1) % 2 && z + y * x == b * a) && b <= 2) && 1 <= b) && 0 <= y + 1) && y <= 1)) || (((((z == 0 && y == b / 2) && b <= 2) && a * 2 == x) && !(b % 2 == 1)) && 1 <= b) - ProcedureContractResult [Line: 9]: Procedure Contract for assume_abort_if_not Derived contract for procedure assume_abort_if_not: !(\old(cond) == 0) && cond == \old(cond) - ProcedureContractResult [Line: 20]: Procedure Contract for main Derived contract for procedure main: 1 - ProcedureContractResult [Line: 12]: 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-28 07:30:59,431 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...