/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/prod4br-ll_valuebound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 07:22:20,545 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 07:22:20,546 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 07:22:20,566 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 07:22:20,567 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 07:22:20,567 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 07:22:20,568 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 07:22:20,569 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 07:22:20,571 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 07:22:20,571 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 07:22:20,572 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 07:22:20,573 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 07:22:20,573 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 07:22:20,574 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 07:22:20,575 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 07:22:20,578 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 07:22:20,578 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 07:22:20,579 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 07:22:20,580 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 07:22:20,582 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 07:22:20,583 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 07:22:20,583 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 07:22:20,584 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 07:22:20,585 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 07:22:20,585 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 07:22:20,588 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 07:22:20,588 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 07:22:20,588 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 07:22:20,589 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 07:22:20,589 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 07:22:20,590 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 07:22:20,590 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 07:22:20,590 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 07:22:20,591 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 07:22:20,592 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 07:22:20,592 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 07:22:20,592 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 07:22:20,593 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 07:22:20,593 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 07:22:20,593 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 07:22:20,594 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 07:22:20,599 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 07:22:20,600 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:22:20,605 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 07:22:20,606 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 07:22:20,606 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 07:22:20,607 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 07:22:20,607 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 07:22:20,607 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 07:22:20,607 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 07:22:20,607 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 07:22:20,607 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 07:22:20,607 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 07:22:20,607 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 07:22:20,608 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 07:22:20,608 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 07:22:20,608 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 07:22:20,608 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 07:22:20,608 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 07:22:20,608 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 07:22:20,608 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 07:22:20,609 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 07:22:20,609 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 07:22:20,609 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 07:22:20,609 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 07:22:20,609 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 07:22:20,609 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 07:22:20,609 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 07:22:20,609 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:22:20,766 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 07:22:20,783 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 07:22:20,784 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 07:22:20,785 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 07:22:20,786 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 07:22:20,787 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_valuebound2.c [2022-04-28 07:22:20,839 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/94bd00c9a/0227d971a5dd49b0bf2542d48452a0a5/FLAGbb44ba9af [2022-04-28 07:22:21,217 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 07:22:21,218 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_valuebound2.c [2022-04-28 07:22:21,229 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/94bd00c9a/0227d971a5dd49b0bf2542d48452a0a5/FLAGbb44ba9af [2022-04-28 07:22:21,241 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/94bd00c9a/0227d971a5dd49b0bf2542d48452a0a5 [2022-04-28 07:22:21,243 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 07:22:21,244 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 07:22:21,245 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 07:22:21,245 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 07:22:21,248 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 07:22:21,251 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 07:22:21" (1/1) ... [2022-04-28 07:22:21,252 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3ad8a205 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21, skipping insertion in model container [2022-04-28 07:22:21,253 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 07:22:21" (1/1) ... [2022-04-28 07:22:21,257 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 07:22:21,267 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 07:22:21,428 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_valuebound2.c[524,537] [2022-04-28 07:22:21,453 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 07:22:21,461 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 07:22:21,471 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_valuebound2.c[524,537] [2022-04-28 07:22:21,490 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 07:22:21,512 INFO L208 MainTranslator]: Completed translation [2022-04-28 07:22:21,513 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21 WrapperNode [2022-04-28 07:22:21,513 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 07:22:21,513 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 07:22:21,513 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 07:22:21,514 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 07:22:21,521 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21" (1/1) ... [2022-04-28 07:22:21,521 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21" (1/1) ... [2022-04-28 07:22:21,526 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21" (1/1) ... [2022-04-28 07:22:21,527 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21" (1/1) ... [2022-04-28 07:22:21,531 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21" (1/1) ... [2022-04-28 07:22:21,539 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21" (1/1) ... [2022-04-28 07:22:21,540 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21" (1/1) ... [2022-04-28 07:22:21,542 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 07:22:21,542 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 07:22:21,542 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 07:22:21,542 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 07:22:21,544 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21" (1/1) ... [2022-04-28 07:22:21,550 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 07:22:21,557 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:22:21,576 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:22:21,591 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:22:21,600 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 07:22:21,600 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 07:22:21,601 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 07:22:21,601 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 07:22:21,601 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 07:22:21,601 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 07:22:21,601 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 07:22:21,601 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 07:22:21,602 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 07:22:21,602 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 07:22:21,602 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 07:22:21,603 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 07:22:21,603 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 07:22:21,603 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 07:22:21,603 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 07:22:21,603 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 07:22:21,603 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 07:22:21,603 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 07:22:21,604 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 07:22:21,604 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 07:22:21,650 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 07:22:21,651 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 07:22:21,834 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 07:22:21,839 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 07:22:21,839 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 07:22:21,840 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 07:22:21 BoogieIcfgContainer [2022-04-28 07:22:21,841 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 07:22:21,842 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 07:22:21,842 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 07:22:21,865 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 07:22:21,865 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 07:22:21" (1/3) ... [2022-04-28 07:22:21,865 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6089f85e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 07:22:21, skipping insertion in model container [2022-04-28 07:22:21,865 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:22:21" (2/3) ... [2022-04-28 07:22:21,866 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6089f85e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 07:22:21, skipping insertion in model container [2022-04-28 07:22:21,866 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 07:22:21" (3/3) ... [2022-04-28 07:22:21,866 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_valuebound2.c [2022-04-28 07:22:21,876 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 07:22:21,876 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 07:22:21,913 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 07:22:21,928 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@2e637d3a, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@28c17bca [2022-04-28 07:22:21,928 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 07:22:21,934 INFO L276 IsEmpty]: Start isEmpty. Operand has 34 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:22:21,939 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 07:22:21,940 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:22:21,940 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:22:21,941 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:22:21,944 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:22:21,944 INFO L85 PathProgramCache]: Analyzing trace with hash 1738134960, now seen corresponding path program 1 times [2022-04-28 07:22:21,952 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:22:21,953 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1826845606] [2022-04-28 07:22:21,963 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:22:21,963 INFO L85 PathProgramCache]: Analyzing trace with hash 1738134960, now seen corresponding path program 2 times [2022-04-28 07:22:21,965 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:22:21,966 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1782485000] [2022-04-28 07:22:21,966 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:22:21,966 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:22:22,043 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:22:22,091 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 07:22:22,097 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:22:22,112 INFO L290 TraceCheckUtils]: 0: Hoare triple {54#(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); {37#true} is VALID [2022-04-28 07:22:22,113 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume true; {37#true} is VALID [2022-04-28 07:22:22,113 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {37#true} {37#true} #83#return; {37#true} is VALID [2022-04-28 07:22:22,114 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 07:22:22,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:22:22,137 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:22:22,138 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:22:22,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:22:22,138 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {37#true} #71#return; {38#false} is VALID [2022-04-28 07:22:22,138 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 07:22:22,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:22:22,150 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:22:22,151 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:22:22,151 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:22:22,151 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #73#return; {38#false} is VALID [2022-04-28 07:22:22,151 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 07:22:22,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:22:22,163 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:22:22,163 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:22:22,164 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:22:22,164 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #75#return; {38#false} is VALID [2022-04-28 07:22:22,165 INFO L272 TraceCheckUtils]: 0: Hoare triple {37#true} call ULTIMATE.init(); {54#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 07:22:22,165 INFO L290 TraceCheckUtils]: 1: Hoare triple {54#(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); {37#true} is VALID [2022-04-28 07:22:22,165 INFO L290 TraceCheckUtils]: 2: Hoare triple {37#true} assume true; {37#true} is VALID [2022-04-28 07:22:22,165 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37#true} {37#true} #83#return; {37#true} is VALID [2022-04-28 07:22:22,166 INFO L272 TraceCheckUtils]: 4: Hoare triple {37#true} call #t~ret6 := main(); {37#true} is VALID [2022-04-28 07:22:22,166 INFO L290 TraceCheckUtils]: 5: Hoare triple {37#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {37#true} is VALID [2022-04-28 07:22:22,166 INFO L272 TraceCheckUtils]: 6: Hoare triple {37#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {37#true} is VALID [2022-04-28 07:22:22,166 INFO L290 TraceCheckUtils]: 7: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:22:22,167 INFO L290 TraceCheckUtils]: 8: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:22:22,168 INFO L290 TraceCheckUtils]: 9: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:22:22,168 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38#false} {37#true} #71#return; {38#false} is VALID [2022-04-28 07:22:22,168 INFO L290 TraceCheckUtils]: 11: Hoare triple {38#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {38#false} is VALID [2022-04-28 07:22:22,168 INFO L272 TraceCheckUtils]: 12: Hoare triple {38#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {37#true} is VALID [2022-04-28 07:22:22,168 INFO L290 TraceCheckUtils]: 13: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:22:22,169 INFO L290 TraceCheckUtils]: 14: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:22:22,169 INFO L290 TraceCheckUtils]: 15: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:22:22,169 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {38#false} {38#false} #73#return; {38#false} is VALID [2022-04-28 07:22:22,169 INFO L272 TraceCheckUtils]: 17: Hoare triple {38#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37#true} is VALID [2022-04-28 07:22:22,169 INFO L290 TraceCheckUtils]: 18: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:22:22,171 INFO L290 TraceCheckUtils]: 19: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:22:22,171 INFO L290 TraceCheckUtils]: 20: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:22:22,171 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38#false} {38#false} #75#return; {38#false} is VALID [2022-04-28 07:22:22,171 INFO L290 TraceCheckUtils]: 22: Hoare triple {38#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {38#false} is VALID [2022-04-28 07:22:22,171 INFO L290 TraceCheckUtils]: 23: Hoare triple {38#false} assume !true; {38#false} is VALID [2022-04-28 07:22:22,172 INFO L272 TraceCheckUtils]: 24: Hoare triple {38#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {38#false} is VALID [2022-04-28 07:22:22,172 INFO L290 TraceCheckUtils]: 25: Hoare triple {38#false} ~cond := #in~cond; {38#false} is VALID [2022-04-28 07:22:22,172 INFO L290 TraceCheckUtils]: 26: Hoare triple {38#false} assume 0 == ~cond; {38#false} is VALID [2022-04-28 07:22:22,172 INFO L290 TraceCheckUtils]: 27: Hoare triple {38#false} assume !false; {38#false} is VALID [2022-04-28 07:22:22,172 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:22:22,173 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:22:22,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1782485000] [2022-04-28 07:22:22,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1782485000] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:22:22,174 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:22:22,174 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 07:22:22,175 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:22:22,176 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1826845606] [2022-04-28 07:22:22,176 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1826845606] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:22:22,176 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:22:22,176 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 07:22:22,176 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1868929588] [2022-04-28 07:22:22,177 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:22:22,180 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:22:22,183 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:22:22,185 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:22:22,217 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:22:22,217 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 07:22:22,217 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:22:22,232 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 07:22:22,233 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 07:22:22,235 INFO L87 Difference]: Start difference. First operand has 34 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) 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:22:22,397 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:22,398 INFO L93 Difference]: Finished difference Result 61 states and 88 transitions. [2022-04-28 07:22:22,398 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 07:22:22,398 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:22:22,398 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:22:22,400 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:22:22,409 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 88 transitions. [2022-04-28 07:22:22,410 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:22:22,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 88 transitions. [2022-04-28 07:22:22,424 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 88 transitions. [2022-04-28 07:22:22,520 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:22:22,527 INFO L225 Difference]: With dead ends: 61 [2022-04-28 07:22:22,528 INFO L226 Difference]: Without dead ends: 29 [2022-04-28 07:22:22,530 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:22:22,534 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 22 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 28 SdHoareTripleChecker+Valid, 38 SdHoareTripleChecker+Invalid, 15 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:22:22,535 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [28 Valid, 38 Invalid, 15 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 07:22:22,545 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-28 07:22:22,559 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-28 07:22:22,560 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:22:22,560 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 18 states have internal predecessors, (22), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:22:22,561 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 18 states have internal predecessors, (22), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:22:22,561 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 18 states have internal predecessors, (22), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:22:22,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:22,565 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2022-04-28 07:22:22,565 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-28 07:22:22,566 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:22:22,566 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:22:22,567 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 18 states have internal predecessors, (22), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 29 states. [2022-04-28 07:22:22,567 INFO L87 Difference]: Start difference. First operand has 29 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 18 states have internal predecessors, (22), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 29 states. [2022-04-28 07:22:22,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:22,572 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2022-04-28 07:22:22,572 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-28 07:22:22,572 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:22:22,572 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:22:22,573 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:22:22,573 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:22:22,574 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 18 states have internal predecessors, (22), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:22:22,578 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 36 transitions. [2022-04-28 07:22:22,579 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 36 transitions. Word has length 28 [2022-04-28 07:22:22,579 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:22:22,580 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 36 transitions. [2022-04-28 07:22:22,581 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:22:22,581 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 36 transitions. [2022-04-28 07:22:22,619 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:22:22,619 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-28 07:22:22,620 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 07:22:22,620 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:22:22,620 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:22:22,621 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 07:22:22,621 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:22:22,622 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:22:22,622 INFO L85 PathProgramCache]: Analyzing trace with hash 567203544, now seen corresponding path program 1 times [2022-04-28 07:22:22,622 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:22:22,622 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1418553484] [2022-04-28 07:22:22,623 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:22:22,623 INFO L85 PathProgramCache]: Analyzing trace with hash 567203544, now seen corresponding path program 2 times [2022-04-28 07:22:22,623 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:22:22,626 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [851416999] [2022-04-28 07:22:22,626 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:22:22,626 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:22:22,661 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:22:22,661 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2124011381] [2022-04-28 07:22:22,661 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:22:22,662 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:22:22,662 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:22:22,666 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:22:22,667 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:22:22,720 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 07:22:22,720 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:22:22,721 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 07:22:22,729 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:22:22,732 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:22:22,958 INFO L272 TraceCheckUtils]: 0: Hoare triple {295#true} call ULTIMATE.init(); {295#true} is VALID [2022-04-28 07:22:22,958 INFO L290 TraceCheckUtils]: 1: Hoare triple {295#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); {295#true} is VALID [2022-04-28 07:22:22,958 INFO L290 TraceCheckUtils]: 2: Hoare triple {295#true} assume true; {295#true} is VALID [2022-04-28 07:22:22,959 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {295#true} {295#true} #83#return; {295#true} is VALID [2022-04-28 07:22:22,959 INFO L272 TraceCheckUtils]: 4: Hoare triple {295#true} call #t~ret6 := main(); {295#true} is VALID [2022-04-28 07:22:22,959 INFO L290 TraceCheckUtils]: 5: Hoare triple {295#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {295#true} is VALID [2022-04-28 07:22:22,959 INFO L272 TraceCheckUtils]: 6: Hoare triple {295#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {295#true} is VALID [2022-04-28 07:22:22,959 INFO L290 TraceCheckUtils]: 7: Hoare triple {295#true} ~cond := #in~cond; {295#true} is VALID [2022-04-28 07:22:22,959 INFO L290 TraceCheckUtils]: 8: Hoare triple {295#true} assume !(0 == ~cond); {295#true} is VALID [2022-04-28 07:22:22,960 INFO L290 TraceCheckUtils]: 9: Hoare triple {295#true} assume true; {295#true} is VALID [2022-04-28 07:22:22,960 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {295#true} {295#true} #71#return; {295#true} is VALID [2022-04-28 07:22:22,960 INFO L290 TraceCheckUtils]: 11: Hoare triple {295#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {295#true} is VALID [2022-04-28 07:22:22,960 INFO L272 TraceCheckUtils]: 12: Hoare triple {295#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {295#true} is VALID [2022-04-28 07:22:22,960 INFO L290 TraceCheckUtils]: 13: Hoare triple {295#true} ~cond := #in~cond; {295#true} is VALID [2022-04-28 07:22:22,960 INFO L290 TraceCheckUtils]: 14: Hoare triple {295#true} assume !(0 == ~cond); {295#true} is VALID [2022-04-28 07:22:22,961 INFO L290 TraceCheckUtils]: 15: Hoare triple {295#true} assume true; {295#true} is VALID [2022-04-28 07:22:22,961 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {295#true} {295#true} #73#return; {295#true} is VALID [2022-04-28 07:22:22,961 INFO L272 TraceCheckUtils]: 17: Hoare triple {295#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {295#true} is VALID [2022-04-28 07:22:22,961 INFO L290 TraceCheckUtils]: 18: Hoare triple {295#true} ~cond := #in~cond; {295#true} is VALID [2022-04-28 07:22:22,961 INFO L290 TraceCheckUtils]: 19: Hoare triple {295#true} assume !(0 == ~cond); {295#true} is VALID [2022-04-28 07:22:22,961 INFO L290 TraceCheckUtils]: 20: Hoare triple {295#true} assume true; {295#true} is VALID [2022-04-28 07:22:22,962 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {295#true} {295#true} #75#return; {295#true} is VALID [2022-04-28 07:22:22,963 INFO L290 TraceCheckUtils]: 22: Hoare triple {295#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {366#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:22:22,963 INFO L290 TraceCheckUtils]: 23: Hoare triple {366#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {366#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:22:22,964 INFO L272 TraceCheckUtils]: 24: Hoare triple {366#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {373#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:22:22,965 INFO L290 TraceCheckUtils]: 25: Hoare triple {373#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {377#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:22:22,965 INFO L290 TraceCheckUtils]: 26: Hoare triple {377#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {296#false} is VALID [2022-04-28 07:22:22,965 INFO L290 TraceCheckUtils]: 27: Hoare triple {296#false} assume !false; {296#false} is VALID [2022-04-28 07:22:22,965 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:22:22,966 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:22:22,966 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:22:22,966 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [851416999] [2022-04-28 07:22:22,966 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:22:22,966 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2124011381] [2022-04-28 07:22:22,966 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2124011381] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:22:22,967 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:22:22,967 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:22:22,967 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:22:22,967 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1418553484] [2022-04-28 07:22:22,968 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1418553484] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:22:22,968 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:22:22,968 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:22:22,968 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [181910811] [2022-04-28 07:22:22,968 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:22:22,969 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:22:22,969 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:22:22,969 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:22:22,984 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:22:22,984 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 07:22:22,984 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:22:22,985 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 07:22:22,986 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 07:22:22,987 INFO L87 Difference]: Start difference. First operand 29 states and 36 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:22:23,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:23,189 INFO L93 Difference]: Finished difference Result 43 states and 55 transitions. [2022-04-28 07:22:23,189 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 07:22:23,190 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:22:23,190 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:22:23,190 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:22:23,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 55 transitions. [2022-04-28 07:22:23,195 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:22:23,198 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 55 transitions. [2022-04-28 07:22:23,199 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 55 transitions. [2022-04-28 07:22:23,261 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:22:23,264 INFO L225 Difference]: With dead ends: 43 [2022-04-28 07:22:23,264 INFO L226 Difference]: Without dead ends: 41 [2022-04-28 07:22:23,267 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:22:23,269 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 9 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 92 SdHoareTripleChecker+Invalid, 57 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:22:23,272 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 92 Invalid, 57 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 57 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 07:22:23,273 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states. [2022-04-28 07:22:23,291 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 35. [2022-04-28 07:22:23,291 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:22:23,291 INFO L82 GeneralOperation]: Start isEquivalent. First operand 41 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 9 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:22:23,292 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 9 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:22:23,292 INFO L87 Difference]: Start difference. First operand 41 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 9 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:22:23,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:23,294 INFO L93 Difference]: Finished difference Result 41 states and 53 transitions. [2022-04-28 07:22:23,294 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 53 transitions. [2022-04-28 07:22:23,294 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:22:23,294 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:22:23,295 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 9 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 41 states. [2022-04-28 07:22:23,295 INFO L87 Difference]: Start difference. First operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 9 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 41 states. [2022-04-28 07:22:23,297 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:23,297 INFO L93 Difference]: Finished difference Result 41 states and 53 transitions. [2022-04-28 07:22:23,297 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 53 transitions. [2022-04-28 07:22:23,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:22:23,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:22:23,297 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:22:23,297 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:22:23,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 9 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:22:23,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 42 transitions. [2022-04-28 07:22:23,299 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 42 transitions. Word has length 28 [2022-04-28 07:22:23,299 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:22:23,299 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 42 transitions. [2022-04-28 07:22:23,299 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:22:23,299 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 42 transitions. [2022-04-28 07:22:23,342 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:22:23,342 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 42 transitions. [2022-04-28 07:22:23,344 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 07:22:23,345 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:22:23,345 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:22:23,366 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:22:23,555 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:22:23,555 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:22:23,556 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:22:23,556 INFO L85 PathProgramCache]: Analyzing trace with hash -1139707498, now seen corresponding path program 1 times [2022-04-28 07:22:23,556 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:22:23,556 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1844991381] [2022-04-28 07:22:23,556 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:22:23,556 INFO L85 PathProgramCache]: Analyzing trace with hash -1139707498, now seen corresponding path program 2 times [2022-04-28 07:22:23,557 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:22:23,557 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [145435876] [2022-04-28 07:22:23,557 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:22:23,557 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:22:23,570 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:22:23,570 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2054314298] [2022-04-28 07:22:23,570 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:22:23,570 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:22:23,570 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:22:23,573 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:22:23,573 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:22:23,624 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:22:23,624 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:22:23,629 INFO L263 TraceCheckSpWp]: Trace formula consists of 102 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 07:22:23,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:22:23,653 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:22:34,322 INFO L272 TraceCheckUtils]: 0: Hoare triple {623#true} call ULTIMATE.init(); {623#true} is VALID [2022-04-28 07:22:34,323 INFO L290 TraceCheckUtils]: 1: Hoare triple {623#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); {623#true} is VALID [2022-04-28 07:22:34,323 INFO L290 TraceCheckUtils]: 2: Hoare triple {623#true} assume true; {623#true} is VALID [2022-04-28 07:22:34,323 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {623#true} {623#true} #83#return; {623#true} is VALID [2022-04-28 07:22:34,323 INFO L272 TraceCheckUtils]: 4: Hoare triple {623#true} call #t~ret6 := main(); {623#true} is VALID [2022-04-28 07:22:34,323 INFO L290 TraceCheckUtils]: 5: Hoare triple {623#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {623#true} is VALID [2022-04-28 07:22:34,323 INFO L272 TraceCheckUtils]: 6: Hoare triple {623#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {623#true} is VALID [2022-04-28 07:22:34,324 INFO L290 TraceCheckUtils]: 7: Hoare triple {623#true} ~cond := #in~cond; {649#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:22:34,324 INFO L290 TraceCheckUtils]: 8: Hoare triple {649#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {653#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:22:34,324 INFO L290 TraceCheckUtils]: 9: Hoare triple {653#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {653#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:22:34,325 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {653#(not (= |assume_abort_if_not_#in~cond| 0))} {623#true} #71#return; {660#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:22:34,325 INFO L290 TraceCheckUtils]: 11: Hoare triple {660#(and (<= 0 main_~x~0) (<= main_~x~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {660#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:22:34,326 INFO L272 TraceCheckUtils]: 12: Hoare triple {660#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {623#true} is VALID [2022-04-28 07:22:34,326 INFO L290 TraceCheckUtils]: 13: Hoare triple {623#true} ~cond := #in~cond; {623#true} is VALID [2022-04-28 07:22:34,326 INFO L290 TraceCheckUtils]: 14: Hoare triple {623#true} assume !(0 == ~cond); {623#true} is VALID [2022-04-28 07:22:34,326 INFO L290 TraceCheckUtils]: 15: Hoare triple {623#true} assume true; {623#true} is VALID [2022-04-28 07:22:34,326 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {623#true} {660#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #73#return; {660#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:22:34,327 INFO L272 TraceCheckUtils]: 17: Hoare triple {660#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {623#true} is VALID [2022-04-28 07:22:34,327 INFO L290 TraceCheckUtils]: 18: Hoare triple {623#true} ~cond := #in~cond; {649#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:22:34,327 INFO L290 TraceCheckUtils]: 19: Hoare triple {649#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {653#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:22:34,328 INFO L290 TraceCheckUtils]: 20: Hoare triple {653#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {653#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:22:34,328 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {653#(not (= |assume_abort_if_not_#in~cond| 0))} {660#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #75#return; {694#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:22:34,329 INFO L290 TraceCheckUtils]: 22: Hoare triple {694#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {698#(and (<= 0 main_~x~0) (<= main_~y~0 main_~b~0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:22:34,329 INFO L290 TraceCheckUtils]: 23: Hoare triple {698#(and (<= 0 main_~x~0) (<= main_~y~0 main_~b~0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2))} assume !false; {698#(and (<= 0 main_~x~0) (<= main_~y~0 main_~b~0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:22:34,330 INFO L272 TraceCheckUtils]: 24: Hoare triple {698#(and (<= 0 main_~x~0) (<= main_~y~0 main_~b~0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {623#true} is VALID [2022-04-28 07:22:34,330 INFO L290 TraceCheckUtils]: 25: Hoare triple {623#true} ~cond := #in~cond; {708#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:22:34,330 INFO L290 TraceCheckUtils]: 26: Hoare triple {708#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {712#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:22:34,331 INFO L290 TraceCheckUtils]: 27: Hoare triple {712#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {712#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:22:36,333 WARN L284 TraceCheckUtils]: 28: Hoare quadruple {712#(not (= |__VERIFIER_assert_#in~cond| 0))} {698#(and (<= 0 main_~x~0) (<= main_~y~0 main_~b~0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2))} #77#return; {719#(and (<= 0 main_~x~0) (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is UNKNOWN [2022-04-28 07:22:36,336 INFO L290 TraceCheckUtils]: 29: Hoare triple {719#(and (<= 0 main_~x~0) (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= main_~x~0 main_~a~0) (<= 1 main_~y~0) (<= main_~x~0 2))} assume !(0 != ~a~0 && 0 != ~b~0); {723#(and (<= main_~x~0 0) (<= 0 main_~x~0) (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:22:36,336 INFO L272 TraceCheckUtils]: 30: Hoare triple {723#(and (<= main_~x~0 0) (<= 0 main_~x~0) (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {727#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:22:36,337 INFO L290 TraceCheckUtils]: 31: Hoare triple {727#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {731#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:22:36,337 INFO L290 TraceCheckUtils]: 32: Hoare triple {731#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {624#false} is VALID [2022-04-28 07:22:36,337 INFO L290 TraceCheckUtils]: 33: Hoare triple {624#false} assume !false; {624#false} is VALID [2022-04-28 07:22:36,337 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 4 proven. 4 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 07:22:36,338 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:23:12,927 INFO L290 TraceCheckUtils]: 33: Hoare triple {624#false} assume !false; {624#false} is VALID [2022-04-28 07:23:12,928 INFO L290 TraceCheckUtils]: 32: Hoare triple {731#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {624#false} is VALID [2022-04-28 07:23:12,928 INFO L290 TraceCheckUtils]: 31: Hoare triple {727#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {731#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:23:12,929 INFO L272 TraceCheckUtils]: 30: Hoare triple {747#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {727#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:23:12,930 INFO L290 TraceCheckUtils]: 29: Hoare triple {751#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {747#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:12,931 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {712#(not (= |__VERIFIER_assert_#in~cond| 0))} {623#true} #77#return; {751#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-28 07:23:12,932 INFO L290 TraceCheckUtils]: 27: Hoare triple {712#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {712#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:23:12,932 INFO L290 TraceCheckUtils]: 26: Hoare triple {764#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {712#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:23:12,933 INFO L290 TraceCheckUtils]: 25: Hoare triple {623#true} ~cond := #in~cond; {764#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 07:23:12,934 INFO L272 TraceCheckUtils]: 24: Hoare triple {623#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {623#true} is VALID [2022-04-28 07:23:12,934 INFO L290 TraceCheckUtils]: 23: Hoare triple {623#true} assume !false; {623#true} is VALID [2022-04-28 07:23:12,934 INFO L290 TraceCheckUtils]: 22: Hoare triple {623#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {623#true} is VALID [2022-04-28 07:23:12,936 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {623#true} {623#true} #75#return; {623#true} is VALID [2022-04-28 07:23:12,936 INFO L290 TraceCheckUtils]: 20: Hoare triple {623#true} assume true; {623#true} is VALID [2022-04-28 07:23:12,946 INFO L290 TraceCheckUtils]: 19: Hoare triple {623#true} assume !(0 == ~cond); {623#true} is VALID [2022-04-28 07:23:12,946 INFO L290 TraceCheckUtils]: 18: Hoare triple {623#true} ~cond := #in~cond; {623#true} is VALID [2022-04-28 07:23:12,946 INFO L272 TraceCheckUtils]: 17: Hoare triple {623#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {623#true} is VALID [2022-04-28 07:23:12,947 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {623#true} {623#true} #73#return; {623#true} is VALID [2022-04-28 07:23:12,947 INFO L290 TraceCheckUtils]: 15: Hoare triple {623#true} assume true; {623#true} is VALID [2022-04-28 07:23:12,947 INFO L290 TraceCheckUtils]: 14: Hoare triple {623#true} assume !(0 == ~cond); {623#true} is VALID [2022-04-28 07:23:12,947 INFO L290 TraceCheckUtils]: 13: Hoare triple {623#true} ~cond := #in~cond; {623#true} is VALID [2022-04-28 07:23:12,947 INFO L272 TraceCheckUtils]: 12: Hoare triple {623#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {623#true} is VALID [2022-04-28 07:23:12,947 INFO L290 TraceCheckUtils]: 11: Hoare triple {623#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {623#true} is VALID [2022-04-28 07:23:12,947 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {623#true} {623#true} #71#return; {623#true} is VALID [2022-04-28 07:23:12,947 INFO L290 TraceCheckUtils]: 9: Hoare triple {623#true} assume true; {623#true} is VALID [2022-04-28 07:23:12,947 INFO L290 TraceCheckUtils]: 8: Hoare triple {623#true} assume !(0 == ~cond); {623#true} is VALID [2022-04-28 07:23:12,947 INFO L290 TraceCheckUtils]: 7: Hoare triple {623#true} ~cond := #in~cond; {623#true} is VALID [2022-04-28 07:23:12,948 INFO L272 TraceCheckUtils]: 6: Hoare triple {623#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {623#true} is VALID [2022-04-28 07:23:12,948 INFO L290 TraceCheckUtils]: 5: Hoare triple {623#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {623#true} is VALID [2022-04-28 07:23:12,948 INFO L272 TraceCheckUtils]: 4: Hoare triple {623#true} call #t~ret6 := main(); {623#true} is VALID [2022-04-28 07:23:12,948 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {623#true} {623#true} #83#return; {623#true} is VALID [2022-04-28 07:23:12,948 INFO L290 TraceCheckUtils]: 2: Hoare triple {623#true} assume true; {623#true} is VALID [2022-04-28 07:23:12,948 INFO L290 TraceCheckUtils]: 1: Hoare triple {623#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); {623#true} is VALID [2022-04-28 07:23:12,948 INFO L272 TraceCheckUtils]: 0: Hoare triple {623#true} call ULTIMATE.init(); {623#true} is VALID [2022-04-28 07:23:12,948 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 07:23:12,949 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:23:12,949 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [145435876] [2022-04-28 07:23:12,949 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:23:12,949 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2054314298] [2022-04-28 07:23:12,949 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2054314298] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:23:12,949 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:23:12,949 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 8] total 16 [2022-04-28 07:23:12,949 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:23:12,949 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1844991381] [2022-04-28 07:23:12,949 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1844991381] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:23:12,949 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:23:12,949 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 07:23:12,950 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [242591988] [2022-04-28 07:23:12,950 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:23:12,950 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 1.5833333333333333) internal successors, (19), 10 states have internal predecessors, (19), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 34 [2022-04-28 07:23:12,950 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:23:12,950 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 1.5833333333333333) internal successors, (19), 10 states have internal predecessors, (19), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 07:23:14,978 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 30 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:23:14,979 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 07:23:14,979 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:23:14,979 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 07:23:14,979 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=195, Unknown=0, NotChecked=0, Total=240 [2022-04-28 07:23:14,980 INFO L87 Difference]: Start difference. First operand 35 states and 42 transitions. Second operand has 13 states, 12 states have (on average 1.5833333333333333) internal successors, (19), 10 states have internal predecessors, (19), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 07:23:17,485 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:23:21,154 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:23:21,313 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:23:21,313 INFO L93 Difference]: Finished difference Result 47 states and 58 transitions. [2022-04-28 07:23:21,313 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 07:23:21,313 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 1.5833333333333333) internal successors, (19), 10 states have internal predecessors, (19), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 34 [2022-04-28 07:23:21,314 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:23:21,314 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 1.5833333333333333) internal successors, (19), 10 states have internal predecessors, (19), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 07:23:21,315 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 55 transitions. [2022-04-28 07:23:21,315 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 1.5833333333333333) internal successors, (19), 10 states have internal predecessors, (19), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 07:23:21,317 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 55 transitions. [2022-04-28 07:23:21,317 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 55 transitions. [2022-04-28 07:23:21,365 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:23:21,369 INFO L225 Difference]: With dead ends: 47 [2022-04-28 07:23:21,369 INFO L226 Difference]: Without dead ends: 45 [2022-04-28 07:23:21,369 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 71 GetRequests, 52 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=309, Unknown=0, NotChecked=0, Total=380 [2022-04-28 07:23:21,371 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 26 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 227 mSolverCounterSat, 10 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 239 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 227 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.8s IncrementalHoareTripleChecker+Time [2022-04-28 07:23:21,371 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 137 Invalid, 239 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 227 Invalid, 2 Unknown, 0 Unchecked, 4.8s Time] [2022-04-28 07:23:21,372 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-04-28 07:23:21,415 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 41. [2022-04-28 07:23:21,415 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:23:21,416 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 41 states, 25 states have (on average 1.24) internal successors, (31), 27 states have internal predecessors, (31), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:23:21,416 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 41 states, 25 states have (on average 1.24) internal successors, (31), 27 states have internal predecessors, (31), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:23:21,416 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 41 states, 25 states have (on average 1.24) internal successors, (31), 27 states have internal predecessors, (31), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:23:21,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:23:21,418 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-28 07:23:21,418 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 56 transitions. [2022-04-28 07:23:21,419 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:23:21,419 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:23:21,419 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 25 states have (on average 1.24) internal successors, (31), 27 states have internal predecessors, (31), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 45 states. [2022-04-28 07:23:21,419 INFO L87 Difference]: Start difference. First operand has 41 states, 25 states have (on average 1.24) internal successors, (31), 27 states have internal predecessors, (31), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 45 states. [2022-04-28 07:23:21,421 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:23:21,421 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-28 07:23:21,421 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 56 transitions. [2022-04-28 07:23:21,421 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:23:21,421 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:23:21,421 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:23:21,421 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:23:21,422 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 25 states have (on average 1.24) internal successors, (31), 27 states have internal predecessors, (31), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:23:21,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 49 transitions. [2022-04-28 07:23:21,423 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 49 transitions. Word has length 34 [2022-04-28 07:23:21,423 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:23:21,423 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 49 transitions. [2022-04-28 07:23:21,423 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 1.5833333333333333) internal successors, (19), 10 states have internal predecessors, (19), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 07:23:21,424 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 41 states and 49 transitions. [2022-04-28 07:23:21,479 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:23:21,479 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 49 transitions. [2022-04-28 07:23:21,479 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 07:23:21,479 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:23:21,480 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] [2022-04-28 07:23:21,501 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:23:21,680 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:23:21,680 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:23:21,681 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:23:21,681 INFO L85 PathProgramCache]: Analyzing trace with hash 412541489, now seen corresponding path program 1 times [2022-04-28 07:23:21,681 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:23:21,681 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [234615054] [2022-04-28 07:23:21,681 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:23:21,681 INFO L85 PathProgramCache]: Analyzing trace with hash 412541489, now seen corresponding path program 2 times [2022-04-28 07:23:21,681 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:23:21,681 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1806228149] [2022-04-28 07:23:21,681 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:23:21,682 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:23:21,696 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:23:21,696 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [700119444] [2022-04-28 07:23:21,696 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:23:21,696 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:23:21,696 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:23:21,702 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:23:21,702 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:23:21,741 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:23:21,741 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:23:21,742 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-28 07:23:21,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:23:21,756 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:23:23,169 INFO L272 TraceCheckUtils]: 0: Hoare triple {1116#true} call ULTIMATE.init(); {1116#true} is VALID [2022-04-28 07:23:23,169 INFO L290 TraceCheckUtils]: 1: Hoare triple {1116#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); {1116#true} is VALID [2022-04-28 07:23:23,169 INFO L290 TraceCheckUtils]: 2: Hoare triple {1116#true} assume true; {1116#true} is VALID [2022-04-28 07:23:23,170 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1116#true} {1116#true} #83#return; {1116#true} is VALID [2022-04-28 07:23:23,170 INFO L272 TraceCheckUtils]: 4: Hoare triple {1116#true} call #t~ret6 := main(); {1116#true} is VALID [2022-04-28 07:23:23,170 INFO L290 TraceCheckUtils]: 5: Hoare triple {1116#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1116#true} is VALID [2022-04-28 07:23:23,170 INFO L272 TraceCheckUtils]: 6: Hoare triple {1116#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {1116#true} is VALID [2022-04-28 07:23:23,170 INFO L290 TraceCheckUtils]: 7: Hoare triple {1116#true} ~cond := #in~cond; {1142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:23:23,170 INFO L290 TraceCheckUtils]: 8: Hoare triple {1142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:23:23,171 INFO L290 TraceCheckUtils]: 9: Hoare triple {1146#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:23:23,171 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1146#(not (= |assume_abort_if_not_#in~cond| 0))} {1116#true} #71#return; {1153#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:23:23,172 INFO L290 TraceCheckUtils]: 11: Hoare triple {1153#(and (<= 0 main_~x~0) (<= main_~x~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1153#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:23:23,172 INFO L272 TraceCheckUtils]: 12: Hoare triple {1153#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {1116#true} is VALID [2022-04-28 07:23:23,172 INFO L290 TraceCheckUtils]: 13: Hoare triple {1116#true} ~cond := #in~cond; {1142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:23:23,172 INFO L290 TraceCheckUtils]: 14: Hoare triple {1142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:23:23,173 INFO L290 TraceCheckUtils]: 15: Hoare triple {1146#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:23:23,173 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1146#(not (= |assume_abort_if_not_#in~cond| 0))} {1153#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #73#return; {1172#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:23:23,173 INFO L272 TraceCheckUtils]: 17: Hoare triple {1172#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1116#true} is VALID [2022-04-28 07:23:23,174 INFO L290 TraceCheckUtils]: 18: Hoare triple {1116#true} ~cond := #in~cond; {1142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:23:23,174 INFO L290 TraceCheckUtils]: 19: Hoare triple {1142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:23:23,174 INFO L290 TraceCheckUtils]: 20: Hoare triple {1146#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:23:23,175 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1146#(not (= |assume_abort_if_not_#in~cond| 0))} {1172#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (<= main_~x~0 2))} #75#return; {1188#(and (<= main_~y~0 2) (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:23:23,175 INFO L290 TraceCheckUtils]: 22: Hoare triple {1188#(and (<= main_~y~0 2) (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1192#(and (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:23:23,176 INFO L290 TraceCheckUtils]: 23: Hoare triple {1192#(and (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !false; {1192#(and (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:23:23,176 INFO L272 TraceCheckUtils]: 24: Hoare triple {1192#(and (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1116#true} is VALID [2022-04-28 07:23:23,176 INFO L290 TraceCheckUtils]: 25: Hoare triple {1116#true} ~cond := #in~cond; {1116#true} is VALID [2022-04-28 07:23:23,176 INFO L290 TraceCheckUtils]: 26: Hoare triple {1116#true} assume !(0 == ~cond); {1116#true} is VALID [2022-04-28 07:23:23,176 INFO L290 TraceCheckUtils]: 27: Hoare triple {1116#true} assume true; {1116#true} is VALID [2022-04-28 07:23:23,177 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1116#true} {1192#(and (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} #77#return; {1192#(and (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:23:23,177 INFO L290 TraceCheckUtils]: 29: Hoare triple {1192#(and (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {1214#(and (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (= main_~a~0 0)) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:23:23,179 INFO L290 TraceCheckUtils]: 30: Hoare triple {1214#(and (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (= main_~a~0 0)) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1218#(and (<= main_~y~0 2) (= (div main_~y~0 2) main_~b~0) (<= 0 main_~x~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0) (<= main_~x~0 2) (not (= main_~x~0 0)))} is VALID [2022-04-28 07:23:23,179 INFO L290 TraceCheckUtils]: 31: Hoare triple {1218#(and (<= main_~y~0 2) (= (div main_~y~0 2) main_~b~0) (<= 0 main_~x~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0) (<= main_~x~0 2) (not (= main_~x~0 0)))} assume !false; {1218#(and (<= main_~y~0 2) (= (div main_~y~0 2) main_~b~0) (<= 0 main_~x~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0) (<= main_~x~0 2) (not (= main_~x~0 0)))} is VALID [2022-04-28 07:23:23,181 INFO L272 TraceCheckUtils]: 32: Hoare triple {1218#(and (<= main_~y~0 2) (= (div main_~y~0 2) main_~b~0) (<= 0 main_~x~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0) (<= main_~x~0 2) (not (= main_~x~0 0)))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1225#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:23:23,182 INFO L290 TraceCheckUtils]: 33: Hoare triple {1225#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1229#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:23:23,182 INFO L290 TraceCheckUtils]: 34: Hoare triple {1229#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1117#false} is VALID [2022-04-28 07:23:23,182 INFO L290 TraceCheckUtils]: 35: Hoare triple {1117#false} assume !false; {1117#false} is VALID [2022-04-28 07:23:23,182 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 07:23:23,182 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:24:31,611 INFO L290 TraceCheckUtils]: 35: Hoare triple {1117#false} assume !false; {1117#false} is VALID [2022-04-28 07:24:31,617 INFO L290 TraceCheckUtils]: 34: Hoare triple {1229#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1117#false} is VALID [2022-04-28 07:24:31,618 INFO L290 TraceCheckUtils]: 33: Hoare triple {1225#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1229#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:24:31,618 INFO L272 TraceCheckUtils]: 32: Hoare triple {1245#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1225#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:24:31,619 INFO L290 TraceCheckUtils]: 31: Hoare triple {1245#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !false; {1245#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:24:31,623 INFO L290 TraceCheckUtils]: 30: Hoare triple {1252#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1245#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:24:31,623 INFO L290 TraceCheckUtils]: 29: Hoare triple {1256#(or (= main_~a~0 0) (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (= main_~b~0 0) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} assume !!(0 != ~a~0 && 0 != ~b~0); {1252#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} is VALID [2022-04-28 07:24:31,624 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1116#true} {1256#(or (= main_~a~0 0) (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (= main_~b~0 0) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} #77#return; {1256#(or (= main_~a~0 0) (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (= main_~b~0 0) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} is VALID [2022-04-28 07:24:31,624 INFO L290 TraceCheckUtils]: 27: Hoare triple {1116#true} assume true; {1116#true} is VALID [2022-04-28 07:24:31,624 INFO L290 TraceCheckUtils]: 26: Hoare triple {1116#true} assume !(0 == ~cond); {1116#true} is VALID [2022-04-28 07:24:31,624 INFO L290 TraceCheckUtils]: 25: Hoare triple {1116#true} ~cond := #in~cond; {1116#true} is VALID [2022-04-28 07:24:31,624 INFO L272 TraceCheckUtils]: 24: Hoare triple {1256#(or (= main_~a~0 0) (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (= main_~b~0 0) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1116#true} is VALID [2022-04-28 07:24:31,625 INFO L290 TraceCheckUtils]: 23: Hoare triple {1256#(or (= main_~a~0 0) (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (= main_~b~0 0) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} assume !false; {1256#(or (= main_~a~0 0) (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (= main_~b~0 0) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} is VALID [2022-04-28 07:24:31,628 INFO L290 TraceCheckUtils]: 22: Hoare triple {1278#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0) (= (* (div main_~x~0 2) (+ (div main_~y~0 2) 1) 4) (* main_~y~0 main_~x~0)) (not (= (mod main_~x~0 2) 0)))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1256#(or (= main_~a~0 0) (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (= main_~b~0 0) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} is VALID [2022-04-28 07:24:31,629 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1146#(not (= |assume_abort_if_not_#in~cond| 0))} {1116#true} #75#return; {1278#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0) (= (* (div main_~x~0 2) (+ (div main_~y~0 2) 1) 4) (* main_~y~0 main_~x~0)) (not (= (mod main_~x~0 2) 0)))} is VALID [2022-04-28 07:24:31,629 INFO L290 TraceCheckUtils]: 20: Hoare triple {1146#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:31,630 INFO L290 TraceCheckUtils]: 19: Hoare triple {1291#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:31,631 INFO L290 TraceCheckUtils]: 18: Hoare triple {1116#true} ~cond := #in~cond; {1291#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 07:24:31,631 INFO L272 TraceCheckUtils]: 17: Hoare triple {1116#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1116#true} is VALID [2022-04-28 07:24:31,631 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1116#true} {1116#true} #73#return; {1116#true} is VALID [2022-04-28 07:24:31,631 INFO L290 TraceCheckUtils]: 15: Hoare triple {1116#true} assume true; {1116#true} is VALID [2022-04-28 07:24:31,631 INFO L290 TraceCheckUtils]: 14: Hoare triple {1116#true} assume !(0 == ~cond); {1116#true} is VALID [2022-04-28 07:24:31,631 INFO L290 TraceCheckUtils]: 13: Hoare triple {1116#true} ~cond := #in~cond; {1116#true} is VALID [2022-04-28 07:24:31,631 INFO L272 TraceCheckUtils]: 12: Hoare triple {1116#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {1116#true} is VALID [2022-04-28 07:24:31,631 INFO L290 TraceCheckUtils]: 11: Hoare triple {1116#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1116#true} is VALID [2022-04-28 07:24:31,631 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1116#true} {1116#true} #71#return; {1116#true} is VALID [2022-04-28 07:24:31,631 INFO L290 TraceCheckUtils]: 9: Hoare triple {1116#true} assume true; {1116#true} is VALID [2022-04-28 07:24:31,631 INFO L290 TraceCheckUtils]: 8: Hoare triple {1116#true} assume !(0 == ~cond); {1116#true} is VALID [2022-04-28 07:24:31,632 INFO L290 TraceCheckUtils]: 7: Hoare triple {1116#true} ~cond := #in~cond; {1116#true} is VALID [2022-04-28 07:24:31,632 INFO L272 TraceCheckUtils]: 6: Hoare triple {1116#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {1116#true} is VALID [2022-04-28 07:24:31,632 INFO L290 TraceCheckUtils]: 5: Hoare triple {1116#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1116#true} is VALID [2022-04-28 07:24:31,632 INFO L272 TraceCheckUtils]: 4: Hoare triple {1116#true} call #t~ret6 := main(); {1116#true} is VALID [2022-04-28 07:24:31,632 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1116#true} {1116#true} #83#return; {1116#true} is VALID [2022-04-28 07:24:31,632 INFO L290 TraceCheckUtils]: 2: Hoare triple {1116#true} assume true; {1116#true} is VALID [2022-04-28 07:24:31,632 INFO L290 TraceCheckUtils]: 1: Hoare triple {1116#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); {1116#true} is VALID [2022-04-28 07:24:31,632 INFO L272 TraceCheckUtils]: 0: Hoare triple {1116#true} call ULTIMATE.init(); {1116#true} is VALID [2022-04-28 07:24:31,632 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:24:31,632 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:24:31,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1806228149] [2022-04-28 07:24:31,633 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:24:31,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [700119444] [2022-04-28 07:24:31,633 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [700119444] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:24:31,633 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:24:31,633 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10] total 17 [2022-04-28 07:24:31,633 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:24:31,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [234615054] [2022-04-28 07:24:31,633 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [234615054] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:24:31,633 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:24:31,633 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 07:24:31,633 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1553058792] [2022-04-28 07:24:31,633 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:24:31,634 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 1.6363636363636365) internal successors, (18), 9 states have internal predecessors, (18), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Word has length 36 [2022-04-28 07:24:31,634 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:24:31,634 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 1.6363636363636365) internal successors, (18), 9 states have internal predecessors, (18), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 07:24:31,659 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:31,659 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 07:24:31,659 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:24:31,659 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 07:24:31,660 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=211, Unknown=0, NotChecked=0, Total=272 [2022-04-28 07:24:31,660 INFO L87 Difference]: Start difference. First operand 41 states and 49 transitions. Second operand has 12 states, 11 states have (on average 1.6363636363636365) internal successors, (18), 9 states have internal predecessors, (18), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 07:24:32,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:32,392 INFO L93 Difference]: Finished difference Result 69 states and 90 transitions. [2022-04-28 07:24:32,392 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 07:24:32,393 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 1.6363636363636365) internal successors, (18), 9 states have internal predecessors, (18), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Word has length 36 [2022-04-28 07:24:32,393 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:24:32,394 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 1.6363636363636365) internal successors, (18), 9 states have internal predecessors, (18), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 07:24:32,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 84 transitions. [2022-04-28 07:24:32,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 1.6363636363636365) internal successors, (18), 9 states have internal predecessors, (18), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 07:24:32,402 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 84 transitions. [2022-04-28 07:24:32,402 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 84 transitions. [2022-04-28 07:24:32,471 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:32,473 INFO L225 Difference]: With dead ends: 69 [2022-04-28 07:24:32,473 INFO L226 Difference]: Without dead ends: 55 [2022-04-28 07:24:32,473 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 55 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 64 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=70, Invalid=272, Unknown=0, NotChecked=0, Total=342 [2022-04-28 07:24:32,474 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 38 mSDsluCounter, 123 mSDsCounter, 0 mSdLazyCounter, 237 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 147 SdHoareTripleChecker+Invalid, 256 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 237 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 07:24:32,475 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [44 Valid, 147 Invalid, 256 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 237 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 07:24:32,475 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-28 07:24:32,538 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 52. [2022-04-28 07:24:32,538 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:24:32,539 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 52 states, 34 states have (on average 1.2058823529411764) internal successors, (41), 36 states have internal predecessors, (41), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:24:32,539 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 52 states, 34 states have (on average 1.2058823529411764) internal successors, (41), 36 states have internal predecessors, (41), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:24:32,541 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 52 states, 34 states have (on average 1.2058823529411764) internal successors, (41), 36 states have internal predecessors, (41), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:24:32,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:32,543 INFO L93 Difference]: Finished difference Result 55 states and 66 transitions. [2022-04-28 07:24:32,543 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 66 transitions. [2022-04-28 07:24:32,543 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:24:32,543 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:24:32,544 INFO L74 IsIncluded]: Start isIncluded. First operand has 52 states, 34 states have (on average 1.2058823529411764) internal successors, (41), 36 states have internal predecessors, (41), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 55 states. [2022-04-28 07:24:32,544 INFO L87 Difference]: Start difference. First operand has 52 states, 34 states have (on average 1.2058823529411764) internal successors, (41), 36 states have internal predecessors, (41), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 55 states. [2022-04-28 07:24:32,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:32,547 INFO L93 Difference]: Finished difference Result 55 states and 66 transitions. [2022-04-28 07:24:32,547 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 66 transitions. [2022-04-28 07:24:32,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:24:32,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:24:32,549 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:24:32,549 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:24:32,550 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 34 states have (on average 1.2058823529411764) internal successors, (41), 36 states have internal predecessors, (41), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:24:32,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 61 transitions. [2022-04-28 07:24:32,552 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 61 transitions. Word has length 36 [2022-04-28 07:24:32,552 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:24:32,552 INFO L495 AbstractCegarLoop]: Abstraction has 52 states and 61 transitions. [2022-04-28 07:24:32,553 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 1.6363636363636365) internal successors, (18), 9 states have internal predecessors, (18), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 07:24:32,553 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 52 states and 61 transitions. [2022-04-28 07:24:32,635 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:32,635 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 61 transitions. [2022-04-28 07:24:32,636 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 07:24:32,636 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:24:32,636 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:24:32,656 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:24:32,836 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:24:32,836 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:24:32,837 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:24:32,837 INFO L85 PathProgramCache]: Analyzing trace with hash 2032180221, now seen corresponding path program 1 times [2022-04-28 07:24:32,837 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:24:32,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [790738335] [2022-04-28 07:24:32,837 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:24:32,837 INFO L85 PathProgramCache]: Analyzing trace with hash 2032180221, now seen corresponding path program 2 times [2022-04-28 07:24:32,837 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:24:32,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1830982375] [2022-04-28 07:24:32,838 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:24:32,838 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:24:32,855 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:24:32,855 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [169786453] [2022-04-28 07:24:32,855 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:24:32,855 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:24:32,856 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:24:32,858 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:24:32,858 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:24:32,895 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:24:32,896 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:24:32,897 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-28 07:24:32,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:24:32,908 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:24:33,481 INFO L272 TraceCheckUtils]: 0: Hoare triple {1704#true} call ULTIMATE.init(); {1704#true} is VALID [2022-04-28 07:24:33,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {1704#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); {1704#true} is VALID [2022-04-28 07:24:33,481 INFO L290 TraceCheckUtils]: 2: Hoare triple {1704#true} assume true; {1704#true} is VALID [2022-04-28 07:24:33,481 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1704#true} {1704#true} #83#return; {1704#true} is VALID [2022-04-28 07:24:33,481 INFO L272 TraceCheckUtils]: 4: Hoare triple {1704#true} call #t~ret6 := main(); {1704#true} is VALID [2022-04-28 07:24:33,481 INFO L290 TraceCheckUtils]: 5: Hoare triple {1704#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1704#true} is VALID [2022-04-28 07:24:33,481 INFO L272 TraceCheckUtils]: 6: Hoare triple {1704#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {1704#true} is VALID [2022-04-28 07:24:33,482 INFO L290 TraceCheckUtils]: 7: Hoare triple {1704#true} ~cond := #in~cond; {1730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:24:33,482 INFO L290 TraceCheckUtils]: 8: Hoare triple {1730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:33,482 INFO L290 TraceCheckUtils]: 9: Hoare triple {1734#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:33,483 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1734#(not (= |assume_abort_if_not_#in~cond| 0))} {1704#true} #71#return; {1741#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:33,483 INFO L290 TraceCheckUtils]: 11: Hoare triple {1741#(and (<= 0 main_~x~0) (<= main_~x~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1741#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:33,483 INFO L272 TraceCheckUtils]: 12: Hoare triple {1741#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {1704#true} is VALID [2022-04-28 07:24:33,483 INFO L290 TraceCheckUtils]: 13: Hoare triple {1704#true} ~cond := #in~cond; {1704#true} is VALID [2022-04-28 07:24:33,483 INFO L290 TraceCheckUtils]: 14: Hoare triple {1704#true} assume !(0 == ~cond); {1704#true} is VALID [2022-04-28 07:24:33,484 INFO L290 TraceCheckUtils]: 15: Hoare triple {1704#true} assume true; {1704#true} is VALID [2022-04-28 07:24:33,484 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1704#true} {1741#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #73#return; {1741#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:33,484 INFO L272 TraceCheckUtils]: 17: Hoare triple {1741#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1704#true} is VALID [2022-04-28 07:24:33,484 INFO L290 TraceCheckUtils]: 18: Hoare triple {1704#true} ~cond := #in~cond; {1730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:24:33,485 INFO L290 TraceCheckUtils]: 19: Hoare triple {1730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:33,485 INFO L290 TraceCheckUtils]: 20: Hoare triple {1734#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:33,485 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1734#(not (= |assume_abort_if_not_#in~cond| 0))} {1741#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #75#return; {1775#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:33,486 INFO L290 TraceCheckUtils]: 22: Hoare triple {1775#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1779#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:33,486 INFO L290 TraceCheckUtils]: 23: Hoare triple {1779#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !false; {1779#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:33,486 INFO L272 TraceCheckUtils]: 24: Hoare triple {1779#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1704#true} is VALID [2022-04-28 07:24:33,487 INFO L290 TraceCheckUtils]: 25: Hoare triple {1704#true} ~cond := #in~cond; {1789#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:24:33,487 INFO L290 TraceCheckUtils]: 26: Hoare triple {1789#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1793#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:24:33,487 INFO L290 TraceCheckUtils]: 27: Hoare triple {1793#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1793#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:24:33,488 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1793#(not (= |__VERIFIER_assert_#in~cond| 0))} {1779#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} #77#return; {1779#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:33,488 INFO L290 TraceCheckUtils]: 29: Hoare triple {1779#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {1803#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (= main_~a~0 0)) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:33,489 INFO L290 TraceCheckUtils]: 30: Hoare triple {1803#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (= main_~a~0 0)) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {1803#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (= main_~a~0 0)) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:33,494 INFO L290 TraceCheckUtils]: 31: Hoare triple {1803#(and (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (= main_~a~0 0)) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume 1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := ~a~0 - 1;~q~0 := ~q~0 + ~b~0 * ~p~0; {1810#(and (= (* main_~b~0 main_~p~0) main_~q~0) (<= 1 (mod (+ main_~a~0 1) 2)) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= (+ main_~a~0 1) main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:33,498 INFO L290 TraceCheckUtils]: 32: Hoare triple {1810#(and (= (* main_~b~0 main_~p~0) main_~q~0) (<= 1 (mod (+ main_~a~0 1) 2)) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= (+ main_~a~0 1) main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !false; {1810#(and (= (* main_~b~0 main_~p~0) main_~q~0) (<= 1 (mod (+ main_~a~0 1) 2)) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= (+ main_~a~0 1) main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:33,500 INFO L272 TraceCheckUtils]: 33: Hoare triple {1810#(and (= (* main_~b~0 main_~p~0) main_~q~0) (<= 1 (mod (+ main_~a~0 1) 2)) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= (+ main_~a~0 1) main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1817#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:24:33,501 INFO L290 TraceCheckUtils]: 34: Hoare triple {1817#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1821#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:24:33,501 INFO L290 TraceCheckUtils]: 35: Hoare triple {1821#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1705#false} is VALID [2022-04-28 07:24:33,501 INFO L290 TraceCheckUtils]: 36: Hoare triple {1705#false} assume !false; {1705#false} is VALID [2022-04-28 07:24:33,501 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 6 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 07:24:33,501 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:24:42,174 INFO L290 TraceCheckUtils]: 36: Hoare triple {1705#false} assume !false; {1705#false} is VALID [2022-04-28 07:24:42,175 INFO L290 TraceCheckUtils]: 35: Hoare triple {1821#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1705#false} is VALID [2022-04-28 07:24:42,175 INFO L290 TraceCheckUtils]: 34: Hoare triple {1817#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1821#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:24:42,176 INFO L272 TraceCheckUtils]: 33: Hoare triple {1837#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1817#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:24:42,176 INFO L290 TraceCheckUtils]: 32: Hoare triple {1837#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !false; {1837#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:24:42,191 INFO L290 TraceCheckUtils]: 31: Hoare triple {1844#(or (= (+ (* main_~b~0 main_~p~0) (* (+ (- 1) main_~a~0) main_~b~0 main_~p~0) main_~q~0) (* main_~y~0 main_~x~0)) (< main_~a~0 0) (not (<= 1 (mod main_~a~0 2))))} assume 1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := ~a~0 - 1;~q~0 := ~q~0 + ~b~0 * ~p~0; {1837#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:24:42,196 INFO L290 TraceCheckUtils]: 30: Hoare triple {1844#(or (= (+ (* main_~b~0 main_~p~0) (* (+ (- 1) main_~a~0) main_~b~0 main_~p~0) main_~q~0) (* main_~y~0 main_~x~0)) (< main_~a~0 0) (not (<= 1 (mod main_~a~0 2))))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {1844#(or (= (+ (* main_~b~0 main_~p~0) (* (+ (- 1) main_~a~0) main_~b~0 main_~p~0) main_~q~0) (* main_~y~0 main_~x~0)) (< main_~a~0 0) (not (<= 1 (mod main_~a~0 2))))} is VALID [2022-04-28 07:24:42,199 INFO L290 TraceCheckUtils]: 29: Hoare triple {1851#(or (= main_~b~0 0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (< (mod main_~a~0 2) 1) (< main_~a~0 0))} assume !!(0 != ~a~0 && 0 != ~b~0); {1844#(or (= (+ (* main_~b~0 main_~p~0) (* (+ (- 1) main_~a~0) main_~b~0 main_~p~0) main_~q~0) (* main_~y~0 main_~x~0)) (< main_~a~0 0) (not (<= 1 (mod main_~a~0 2))))} is VALID [2022-04-28 07:24:42,200 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1793#(not (= |__VERIFIER_assert_#in~cond| 0))} {1704#true} #77#return; {1851#(or (= main_~b~0 0) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (< (mod main_~a~0 2) 1) (< main_~a~0 0))} is VALID [2022-04-28 07:24:42,200 INFO L290 TraceCheckUtils]: 27: Hoare triple {1793#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1793#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:24:42,200 INFO L290 TraceCheckUtils]: 26: Hoare triple {1864#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1793#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:24:42,200 INFO L290 TraceCheckUtils]: 25: Hoare triple {1704#true} ~cond := #in~cond; {1864#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 07:24:42,201 INFO L272 TraceCheckUtils]: 24: Hoare triple {1704#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L290 TraceCheckUtils]: 23: Hoare triple {1704#true} assume !false; {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L290 TraceCheckUtils]: 22: Hoare triple {1704#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1704#true} {1704#true} #75#return; {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L290 TraceCheckUtils]: 20: Hoare triple {1704#true} assume true; {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L290 TraceCheckUtils]: 19: Hoare triple {1704#true} assume !(0 == ~cond); {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L290 TraceCheckUtils]: 18: Hoare triple {1704#true} ~cond := #in~cond; {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L272 TraceCheckUtils]: 17: Hoare triple {1704#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1704#true} {1704#true} #73#return; {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L290 TraceCheckUtils]: 15: Hoare triple {1704#true} assume true; {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L290 TraceCheckUtils]: 14: Hoare triple {1704#true} assume !(0 == ~cond); {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L290 TraceCheckUtils]: 13: Hoare triple {1704#true} ~cond := #in~cond; {1704#true} is VALID [2022-04-28 07:24:42,201 INFO L272 TraceCheckUtils]: 12: Hoare triple {1704#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L290 TraceCheckUtils]: 11: Hoare triple {1704#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1704#true} {1704#true} #71#return; {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L290 TraceCheckUtils]: 9: Hoare triple {1704#true} assume true; {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L290 TraceCheckUtils]: 8: Hoare triple {1704#true} assume !(0 == ~cond); {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L290 TraceCheckUtils]: 7: Hoare triple {1704#true} ~cond := #in~cond; {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L272 TraceCheckUtils]: 6: Hoare triple {1704#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L290 TraceCheckUtils]: 5: Hoare triple {1704#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L272 TraceCheckUtils]: 4: Hoare triple {1704#true} call #t~ret6 := main(); {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1704#true} {1704#true} #83#return; {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L290 TraceCheckUtils]: 2: Hoare triple {1704#true} assume true; {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L290 TraceCheckUtils]: 1: Hoare triple {1704#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); {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L272 TraceCheckUtils]: 0: Hoare triple {1704#true} call ULTIMATE.init(); {1704#true} is VALID [2022-04-28 07:24:42,202 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 07:24:42,203 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:24:42,203 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1830982375] [2022-04-28 07:24:42,203 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:24:42,203 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [169786453] [2022-04-28 07:24:42,203 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [169786453] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:24:42,203 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:24:42,203 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 17 [2022-04-28 07:24:42,203 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:24:42,203 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [790738335] [2022-04-28 07:24:42,203 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [790738335] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:24:42,203 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:24:42,203 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 07:24:42,203 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1494180957] [2022-04-28 07:24:42,203 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:24:42,204 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.6923076923076923) internal successors, (22), 11 states have internal predecessors, (22), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 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:24:42,204 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:24:42,204 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 1.6923076923076923) internal successors, (22), 11 states have internal predecessors, (22), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 07:24:42,229 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:24:42,230 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 07:24:42,230 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:24:42,230 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 07:24:42,230 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=217, Unknown=0, NotChecked=0, Total=272 [2022-04-28 07:24:42,230 INFO L87 Difference]: Start difference. First operand 52 states and 61 transitions. Second operand has 13 states, 13 states have (on average 1.6923076923076923) internal successors, (22), 11 states have internal predecessors, (22), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 07:24:43,067 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:43,068 INFO L93 Difference]: Finished difference Result 78 states and 97 transitions. [2022-04-28 07:24:43,068 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 07:24:43,068 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.6923076923076923) internal successors, (22), 11 states have internal predecessors, (22), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 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:24:43,068 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:24:43,068 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.6923076923076923) internal successors, (22), 11 states have internal predecessors, (22), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 07:24:43,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 81 transitions. [2022-04-28 07:24:43,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.6923076923076923) internal successors, (22), 11 states have internal predecessors, (22), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 07:24:43,071 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 81 transitions. [2022-04-28 07:24:43,071 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 81 transitions. [2022-04-28 07:24:43,140 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:43,142 INFO L225 Difference]: With dead ends: 78 [2022-04-28 07:24:43,142 INFO L226 Difference]: Without dead ends: 55 [2022-04-28 07:24:43,142 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 57 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=72, Invalid=308, Unknown=0, NotChecked=0, Total=380 [2022-04-28 07:24:43,143 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 35 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 244 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 258 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 244 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 07:24:43,143 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [41 Valid, 123 Invalid, 258 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 244 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 07:24:43,143 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-28 07:24:43,217 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 53. [2022-04-28 07:24:43,218 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:24:43,218 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 53 states, 35 states have (on average 1.2) internal successors, (42), 37 states have internal predecessors, (42), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:24:43,218 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 53 states, 35 states have (on average 1.2) internal successors, (42), 37 states have internal predecessors, (42), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:24:43,218 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 53 states, 35 states have (on average 1.2) internal successors, (42), 37 states have internal predecessors, (42), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:24:43,220 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:43,220 INFO L93 Difference]: Finished difference Result 55 states and 65 transitions. [2022-04-28 07:24:43,220 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 65 transitions. [2022-04-28 07:24:43,220 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:24:43,220 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:24:43,220 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 35 states have (on average 1.2) internal successors, (42), 37 states have internal predecessors, (42), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 55 states. [2022-04-28 07:24:43,221 INFO L87 Difference]: Start difference. First operand has 53 states, 35 states have (on average 1.2) internal successors, (42), 37 states have internal predecessors, (42), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 55 states. [2022-04-28 07:24:43,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:43,222 INFO L93 Difference]: Finished difference Result 55 states and 65 transitions. [2022-04-28 07:24:43,222 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 65 transitions. [2022-04-28 07:24:43,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:24:43,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:24:43,222 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:24:43,222 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:24:43,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 35 states have (on average 1.2) internal successors, (42), 37 states have internal predecessors, (42), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:24:43,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 62 transitions. [2022-04-28 07:24:43,224 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 62 transitions. Word has length 37 [2022-04-28 07:24:43,224 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:24:43,224 INFO L495 AbstractCegarLoop]: Abstraction has 53 states and 62 transitions. [2022-04-28 07:24:43,224 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 1.6923076923076923) internal successors, (22), 11 states have internal predecessors, (22), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 07:24:43,224 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 53 states and 62 transitions. [2022-04-28 07:24:43,328 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:43,328 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 62 transitions. [2022-04-28 07:24:43,328 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 07:24:43,328 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:24:43,328 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:24:43,344 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:24:43,529 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:24:43,529 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:24:43,529 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:24:43,529 INFO L85 PathProgramCache]: Analyzing trace with hash 262800198, now seen corresponding path program 1 times [2022-04-28 07:24:43,530 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:24:43,530 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [962375968] [2022-04-28 07:24:43,532 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:24:43,532 INFO L85 PathProgramCache]: Analyzing trace with hash 262800198, now seen corresponding path program 2 times [2022-04-28 07:24:43,532 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:24:43,532 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1986955594] [2022-04-28 07:24:43,532 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:24:43,532 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:24:43,549 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:24:43,549 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1743496941] [2022-04-28 07:24:43,549 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:24:43,549 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:24:43,549 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:24:43,554 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:24:43,555 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:24:43,587 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:24:43,587 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:24:43,588 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-28 07:24:43,598 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:24:43,600 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:24:43,801 INFO L272 TraceCheckUtils]: 0: Hoare triple {2320#true} call ULTIMATE.init(); {2320#true} is VALID [2022-04-28 07:24:43,801 INFO L290 TraceCheckUtils]: 1: Hoare triple {2320#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); {2320#true} is VALID [2022-04-28 07:24:43,801 INFO L290 TraceCheckUtils]: 2: Hoare triple {2320#true} assume true; {2320#true} is VALID [2022-04-28 07:24:43,801 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2320#true} {2320#true} #83#return; {2320#true} is VALID [2022-04-28 07:24:43,801 INFO L272 TraceCheckUtils]: 4: Hoare triple {2320#true} call #t~ret6 := main(); {2320#true} is VALID [2022-04-28 07:24:43,801 INFO L290 TraceCheckUtils]: 5: Hoare triple {2320#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2320#true} is VALID [2022-04-28 07:24:43,802 INFO L272 TraceCheckUtils]: 6: Hoare triple {2320#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {2320#true} is VALID [2022-04-28 07:24:43,802 INFO L290 TraceCheckUtils]: 7: Hoare triple {2320#true} ~cond := #in~cond; {2346#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:24:43,802 INFO L290 TraceCheckUtils]: 8: Hoare triple {2346#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2350#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:43,802 INFO L290 TraceCheckUtils]: 9: Hoare triple {2350#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2350#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:43,803 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2350#(not (= |assume_abort_if_not_#in~cond| 0))} {2320#true} #71#return; {2357#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:43,803 INFO L290 TraceCheckUtils]: 11: Hoare triple {2357#(and (<= 0 main_~x~0) (<= main_~x~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2357#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:43,803 INFO L272 TraceCheckUtils]: 12: Hoare triple {2357#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {2320#true} is VALID [2022-04-28 07:24:43,803 INFO L290 TraceCheckUtils]: 13: Hoare triple {2320#true} ~cond := #in~cond; {2320#true} is VALID [2022-04-28 07:24:43,803 INFO L290 TraceCheckUtils]: 14: Hoare triple {2320#true} assume !(0 == ~cond); {2320#true} is VALID [2022-04-28 07:24:43,804 INFO L290 TraceCheckUtils]: 15: Hoare triple {2320#true} assume true; {2320#true} is VALID [2022-04-28 07:24:43,804 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2320#true} {2357#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #73#return; {2357#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:43,804 INFO L272 TraceCheckUtils]: 17: Hoare triple {2357#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2320#true} is VALID [2022-04-28 07:24:43,804 INFO L290 TraceCheckUtils]: 18: Hoare triple {2320#true} ~cond := #in~cond; {2346#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:24:43,804 INFO L290 TraceCheckUtils]: 19: Hoare triple {2346#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2350#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:43,805 INFO L290 TraceCheckUtils]: 20: Hoare triple {2350#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2350#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:43,805 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2350#(not (= |assume_abort_if_not_#in~cond| 0))} {2357#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #75#return; {2391#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:43,806 INFO L290 TraceCheckUtils]: 22: Hoare triple {2391#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2395#(and (<= 0 main_~a~0) (<= 1 main_~b~0))} is VALID [2022-04-28 07:24:43,806 INFO L290 TraceCheckUtils]: 23: Hoare triple {2395#(and (<= 0 main_~a~0) (<= 1 main_~b~0))} assume !false; {2395#(and (<= 0 main_~a~0) (<= 1 main_~b~0))} is VALID [2022-04-28 07:24:43,806 INFO L272 TraceCheckUtils]: 24: Hoare triple {2395#(and (<= 0 main_~a~0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2320#true} is VALID [2022-04-28 07:24:43,806 INFO L290 TraceCheckUtils]: 25: Hoare triple {2320#true} ~cond := #in~cond; {2320#true} is VALID [2022-04-28 07:24:43,806 INFO L290 TraceCheckUtils]: 26: Hoare triple {2320#true} assume !(0 == ~cond); {2320#true} is VALID [2022-04-28 07:24:43,806 INFO L290 TraceCheckUtils]: 27: Hoare triple {2320#true} assume true; {2320#true} is VALID [2022-04-28 07:24:43,807 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2320#true} {2395#(and (<= 0 main_~a~0) (<= 1 main_~b~0))} #77#return; {2395#(and (<= 0 main_~a~0) (<= 1 main_~b~0))} is VALID [2022-04-28 07:24:43,807 INFO L290 TraceCheckUtils]: 29: Hoare triple {2395#(and (<= 0 main_~a~0) (<= 1 main_~b~0))} assume !(0 != ~a~0 && 0 != ~b~0); {2417#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 07:24:43,807 INFO L272 TraceCheckUtils]: 30: Hoare triple {2417#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {2320#true} is VALID [2022-04-28 07:24:43,807 INFO L290 TraceCheckUtils]: 31: Hoare triple {2320#true} ~cond := #in~cond; {2320#true} is VALID [2022-04-28 07:24:43,807 INFO L290 TraceCheckUtils]: 32: Hoare triple {2320#true} assume !(0 == ~cond); {2320#true} is VALID [2022-04-28 07:24:43,807 INFO L290 TraceCheckUtils]: 33: Hoare triple {2320#true} assume true; {2320#true} is VALID [2022-04-28 07:24:43,808 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {2320#true} {2417#(and (= main_~a~0 0) (<= 1 main_~b~0))} #79#return; {2417#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 07:24:43,808 INFO L272 TraceCheckUtils]: 35: Hoare triple {2417#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {2436#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:24:43,809 INFO L290 TraceCheckUtils]: 36: Hoare triple {2436#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2440#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:24:43,809 INFO L290 TraceCheckUtils]: 37: Hoare triple {2440#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2321#false} is VALID [2022-04-28 07:24:43,809 INFO L290 TraceCheckUtils]: 38: Hoare triple {2321#false} assume !false; {2321#false} is VALID [2022-04-28 07:24:43,809 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 7 proven. 3 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-28 07:24:43,809 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:24:44,027 INFO L290 TraceCheckUtils]: 38: Hoare triple {2321#false} assume !false; {2321#false} is VALID [2022-04-28 07:24:44,028 INFO L290 TraceCheckUtils]: 37: Hoare triple {2440#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2321#false} is VALID [2022-04-28 07:24:44,028 INFO L290 TraceCheckUtils]: 36: Hoare triple {2436#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2440#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:24:44,030 INFO L272 TraceCheckUtils]: 35: Hoare triple {2456#(= (* main_~b~0 main_~a~0) 0)} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {2436#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:24:44,031 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {2320#true} {2456#(= (* main_~b~0 main_~a~0) 0)} #79#return; {2456#(= (* main_~b~0 main_~a~0) 0)} is VALID [2022-04-28 07:24:44,031 INFO L290 TraceCheckUtils]: 33: Hoare triple {2320#true} assume true; {2320#true} is VALID [2022-04-28 07:24:44,031 INFO L290 TraceCheckUtils]: 32: Hoare triple {2320#true} assume !(0 == ~cond); {2320#true} is VALID [2022-04-28 07:24:44,031 INFO L290 TraceCheckUtils]: 31: Hoare triple {2320#true} ~cond := #in~cond; {2320#true} is VALID [2022-04-28 07:24:44,031 INFO L272 TraceCheckUtils]: 30: Hoare triple {2456#(= (* main_~b~0 main_~a~0) 0)} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {2320#true} is VALID [2022-04-28 07:24:44,032 INFO L290 TraceCheckUtils]: 29: Hoare triple {2320#true} assume !(0 != ~a~0 && 0 != ~b~0); {2456#(= (* main_~b~0 main_~a~0) 0)} is VALID [2022-04-28 07:24:44,032 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2320#true} {2320#true} #77#return; {2320#true} is VALID [2022-04-28 07:24:44,032 INFO L290 TraceCheckUtils]: 27: Hoare triple {2320#true} assume true; {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L290 TraceCheckUtils]: 26: Hoare triple {2320#true} assume !(0 == ~cond); {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L290 TraceCheckUtils]: 25: Hoare triple {2320#true} ~cond := #in~cond; {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L272 TraceCheckUtils]: 24: Hoare triple {2320#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L290 TraceCheckUtils]: 23: Hoare triple {2320#true} assume !false; {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L290 TraceCheckUtils]: 22: Hoare triple {2320#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2320#true} {2320#true} #75#return; {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L290 TraceCheckUtils]: 20: Hoare triple {2320#true} assume true; {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L290 TraceCheckUtils]: 19: Hoare triple {2320#true} assume !(0 == ~cond); {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L290 TraceCheckUtils]: 18: Hoare triple {2320#true} ~cond := #in~cond; {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L272 TraceCheckUtils]: 17: Hoare triple {2320#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2320#true} {2320#true} #73#return; {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L290 TraceCheckUtils]: 15: Hoare triple {2320#true} assume true; {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L290 TraceCheckUtils]: 14: Hoare triple {2320#true} assume !(0 == ~cond); {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L290 TraceCheckUtils]: 13: Hoare triple {2320#true} ~cond := #in~cond; {2320#true} is VALID [2022-04-28 07:24:44,033 INFO L272 TraceCheckUtils]: 12: Hoare triple {2320#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L290 TraceCheckUtils]: 11: Hoare triple {2320#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2320#true} {2320#true} #71#return; {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L290 TraceCheckUtils]: 9: Hoare triple {2320#true} assume true; {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L290 TraceCheckUtils]: 8: Hoare triple {2320#true} assume !(0 == ~cond); {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L290 TraceCheckUtils]: 7: Hoare triple {2320#true} ~cond := #in~cond; {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L272 TraceCheckUtils]: 6: Hoare triple {2320#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L290 TraceCheckUtils]: 5: Hoare triple {2320#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L272 TraceCheckUtils]: 4: Hoare triple {2320#true} call #t~ret6 := main(); {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2320#true} {2320#true} #83#return; {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {2320#true} assume true; {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L290 TraceCheckUtils]: 1: Hoare triple {2320#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); {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L272 TraceCheckUtils]: 0: Hoare triple {2320#true} call ULTIMATE.init(); {2320#true} is VALID [2022-04-28 07:24:44,034 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 07:24:44,034 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:24:44,035 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1986955594] [2022-04-28 07:24:44,035 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:24:44,035 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1743496941] [2022-04-28 07:24:44,035 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1743496941] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 07:24:44,035 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 07:24:44,035 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-28 07:24:44,035 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:24:44,035 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [962375968] [2022-04-28 07:24:44,035 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [962375968] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:24:44,035 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:24:44,035 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:24:44,035 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [761050109] [2022-04-28 07:24:44,035 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:24:44,036 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 39 [2022-04-28 07:24:44,036 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:24:44,036 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 07:24:44,059 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:44,060 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 07:24:44,060 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:24:44,060 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 07:24:44,060 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-28 07:24:44,060 INFO L87 Difference]: Start difference. First operand 53 states and 62 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 07:24:44,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:44,413 INFO L93 Difference]: Finished difference Result 59 states and 67 transitions. [2022-04-28 07:24:44,413 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 07:24:44,413 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 39 [2022-04-28 07:24:44,413 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:24:44,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 07:24:44,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-28 07:24:44,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 07:24:44,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-28 07:24:44,415 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 41 transitions. [2022-04-28 07:24:44,449 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:44,450 INFO L225 Difference]: With dead ends: 59 [2022-04-28 07:24:44,450 INFO L226 Difference]: Without dead ends: 47 [2022-04-28 07:24:44,451 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 67 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=26, Invalid=106, Unknown=0, NotChecked=0, Total=132 [2022-04-28 07:24:44,451 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 5 mSDsluCounter, 88 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 125 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 07:24:44,451 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [5 Valid, 125 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 07:24:44,452 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-04-28 07:24:44,513 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 47. [2022-04-28 07:24:44,513 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:24:44,513 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 47 states, 32 states have (on average 1.1875) internal successors, (38), 33 states have internal predecessors, (38), 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:24:44,514 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 47 states, 32 states have (on average 1.1875) internal successors, (38), 33 states have internal predecessors, (38), 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:24:44,514 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 47 states, 32 states have (on average 1.1875) internal successors, (38), 33 states have internal predecessors, (38), 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:24:44,515 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:44,515 INFO L93 Difference]: Finished difference Result 47 states and 54 transitions. [2022-04-28 07:24:44,515 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 54 transitions. [2022-04-28 07:24:44,515 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:24:44,515 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:24:44,515 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 32 states have (on average 1.1875) internal successors, (38), 33 states have internal predecessors, (38), 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 47 states. [2022-04-28 07:24:44,516 INFO L87 Difference]: Start difference. First operand has 47 states, 32 states have (on average 1.1875) internal successors, (38), 33 states have internal predecessors, (38), 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 47 states. [2022-04-28 07:24:44,517 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:44,517 INFO L93 Difference]: Finished difference Result 47 states and 54 transitions. [2022-04-28 07:24:44,517 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 54 transitions. [2022-04-28 07:24:44,517 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:24:44,517 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:24:44,517 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:24:44,517 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:24:44,517 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 32 states have (on average 1.1875) internal successors, (38), 33 states have internal predecessors, (38), 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:24:44,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 54 transitions. [2022-04-28 07:24:44,518 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 54 transitions. Word has length 39 [2022-04-28 07:24:44,518 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:24:44,518 INFO L495 AbstractCegarLoop]: Abstraction has 47 states and 54 transitions. [2022-04-28 07:24:44,519 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 07:24:44,519 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 47 states and 54 transitions. [2022-04-28 07:24:44,593 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:44,594 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 54 transitions. [2022-04-28 07:24:44,594 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-28 07:24:44,594 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:24:44,594 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, 1] [2022-04-28 07:24:44,610 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-28 07:24:44,797 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:24:44,798 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:24:44,798 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:24:44,798 INFO L85 PathProgramCache]: Analyzing trace with hash 844519116, now seen corresponding path program 1 times [2022-04-28 07:24:44,798 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:24:44,798 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2122615046] [2022-04-28 07:24:44,798 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:24:44,799 INFO L85 PathProgramCache]: Analyzing trace with hash 844519116, now seen corresponding path program 2 times [2022-04-28 07:24:44,799 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:24:44,799 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [592433480] [2022-04-28 07:24:44,799 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:24:44,799 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:24:44,813 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:24:44,814 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [644846251] [2022-04-28 07:24:44,814 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:24:44,814 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:24:44,814 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:24:44,814 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:24:44,815 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:24:44,848 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:24:44,849 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:24:44,849 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 36 conjunts are in the unsatisfiable core [2022-04-28 07:24:44,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:24:44,860 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:24:45,746 INFO L272 TraceCheckUtils]: 0: Hoare triple {2872#true} call ULTIMATE.init(); {2872#true} is VALID [2022-04-28 07:24:45,746 INFO L290 TraceCheckUtils]: 1: Hoare triple {2872#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); {2872#true} is VALID [2022-04-28 07:24:45,746 INFO L290 TraceCheckUtils]: 2: Hoare triple {2872#true} assume true; {2872#true} is VALID [2022-04-28 07:24:45,746 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2872#true} {2872#true} #83#return; {2872#true} is VALID [2022-04-28 07:24:45,746 INFO L272 TraceCheckUtils]: 4: Hoare triple {2872#true} call #t~ret6 := main(); {2872#true} is VALID [2022-04-28 07:24:45,746 INFO L290 TraceCheckUtils]: 5: Hoare triple {2872#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2872#true} is VALID [2022-04-28 07:24:45,746 INFO L272 TraceCheckUtils]: 6: Hoare triple {2872#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {2872#true} is VALID [2022-04-28 07:24:45,747 INFO L290 TraceCheckUtils]: 7: Hoare triple {2872#true} ~cond := #in~cond; {2898#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:24:45,748 INFO L290 TraceCheckUtils]: 8: Hoare triple {2898#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2902#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:45,748 INFO L290 TraceCheckUtils]: 9: Hoare triple {2902#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2902#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:45,749 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2902#(not (= |assume_abort_if_not_#in~cond| 0))} {2872#true} #71#return; {2909#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:45,749 INFO L290 TraceCheckUtils]: 11: Hoare triple {2909#(and (<= 0 main_~x~0) (<= main_~x~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2909#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:45,749 INFO L272 TraceCheckUtils]: 12: Hoare triple {2909#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {2872#true} is VALID [2022-04-28 07:24:45,754 INFO L290 TraceCheckUtils]: 13: Hoare triple {2872#true} ~cond := #in~cond; {2898#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:24:45,754 INFO L290 TraceCheckUtils]: 14: Hoare triple {2898#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2902#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:45,754 INFO L290 TraceCheckUtils]: 15: Hoare triple {2902#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2902#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:24:45,755 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2902#(not (= |assume_abort_if_not_#in~cond| 0))} {2909#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #73#return; {2928#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:45,756 INFO L272 TraceCheckUtils]: 17: Hoare triple {2928#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2872#true} is VALID [2022-04-28 07:24:45,756 INFO L290 TraceCheckUtils]: 18: Hoare triple {2872#true} ~cond := #in~cond; {2872#true} is VALID [2022-04-28 07:24:45,756 INFO L290 TraceCheckUtils]: 19: Hoare triple {2872#true} assume !(0 == ~cond); {2872#true} is VALID [2022-04-28 07:24:45,756 INFO L290 TraceCheckUtils]: 20: Hoare triple {2872#true} assume true; {2872#true} is VALID [2022-04-28 07:24:45,757 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2872#true} {2928#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (<= main_~x~0 2))} #75#return; {2928#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-28 07:24:45,757 INFO L290 TraceCheckUtils]: 22: Hoare triple {2928#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (<= main_~x~0 2))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2947#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:45,757 INFO L290 TraceCheckUtils]: 23: Hoare triple {2947#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !false; {2947#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:45,758 INFO L272 TraceCheckUtils]: 24: Hoare triple {2947#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2872#true} is VALID [2022-04-28 07:24:45,758 INFO L290 TraceCheckUtils]: 25: Hoare triple {2872#true} ~cond := #in~cond; {2957#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:24:45,759 INFO L290 TraceCheckUtils]: 26: Hoare triple {2957#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2961#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:24:45,760 INFO L290 TraceCheckUtils]: 27: Hoare triple {2961#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2961#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:24:45,761 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2961#(not (= |__VERIFIER_assert_#in~cond| 0))} {2947#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} #77#return; {2947#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:45,761 INFO L290 TraceCheckUtils]: 29: Hoare triple {2947#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {2971#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (not (= main_~a~0 0)) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:45,762 INFO L290 TraceCheckUtils]: 30: Hoare triple {2971#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (not (= main_~a~0 0)) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {2971#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (not (= main_~a~0 0)) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:45,762 INFO L290 TraceCheckUtils]: 31: Hoare triple {2971#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (not (= main_~a~0 0)) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {2971#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (not (= main_~a~0 0)) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:45,773 INFO L290 TraceCheckUtils]: 32: Hoare triple {2971#(and (<= 0 main_~y~0) (<= main_~y~0 2) (<= 0 main_~x~0) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (not (= main_~a~0 0)) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~b~0 := ~b~0 - 1;~q~0 := ~q~0 + ~a~0 * ~p~0; {2981#(and (<= 0 main_~y~0) (<= 1 (mod main_~y~0 2)) (<= (mod main_~a~0 2) 0) (<= main_~y~0 2) (<= 0 main_~x~0) (= (* main_~a~0 main_~p~0) main_~q~0) (not (= main_~a~0 0)) (= (+ main_~b~0 1) main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:45,774 INFO L290 TraceCheckUtils]: 33: Hoare triple {2981#(and (<= 0 main_~y~0) (<= 1 (mod main_~y~0 2)) (<= (mod main_~a~0 2) 0) (<= main_~y~0 2) (<= 0 main_~x~0) (= (* main_~a~0 main_~p~0) main_~q~0) (not (= main_~a~0 0)) (= (+ main_~b~0 1) main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} assume !false; {2981#(and (<= 0 main_~y~0) (<= 1 (mod main_~y~0 2)) (<= (mod main_~a~0 2) 0) (<= main_~y~0 2) (<= 0 main_~x~0) (= (* main_~a~0 main_~p~0) main_~q~0) (not (= main_~a~0 0)) (= (+ main_~b~0 1) main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} is VALID [2022-04-28 07:24:45,776 INFO L272 TraceCheckUtils]: 34: Hoare triple {2981#(and (<= 0 main_~y~0) (<= 1 (mod main_~y~0 2)) (<= (mod main_~a~0 2) 0) (<= main_~y~0 2) (<= 0 main_~x~0) (= (* main_~a~0 main_~p~0) main_~q~0) (not (= main_~a~0 0)) (= (+ main_~b~0 1) main_~y~0) (= main_~a~0 main_~x~0) (<= main_~x~0 2) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2988#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:24:45,776 INFO L290 TraceCheckUtils]: 35: Hoare triple {2988#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2992#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:24:45,776 INFO L290 TraceCheckUtils]: 36: Hoare triple {2992#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2873#false} is VALID [2022-04-28 07:24:45,777 INFO L290 TraceCheckUtils]: 37: Hoare triple {2873#false} assume !false; {2873#false} is VALID [2022-04-28 07:24:45,777 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 1 proven. 9 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 07:24:45,777 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:24:54,705 INFO L290 TraceCheckUtils]: 37: Hoare triple {2873#false} assume !false; {2873#false} is VALID [2022-04-28 07:24:54,705 INFO L290 TraceCheckUtils]: 36: Hoare triple {2992#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2873#false} is VALID [2022-04-28 07:24:54,705 INFO L290 TraceCheckUtils]: 35: Hoare triple {2988#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2992#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:24:54,706 INFO L272 TraceCheckUtils]: 34: Hoare triple {3008#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2988#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:24:54,707 INFO L290 TraceCheckUtils]: 33: Hoare triple {3008#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !false; {3008#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:24:54,721 INFO L290 TraceCheckUtils]: 32: Hoare triple {3015#(or (not (<= 1 (mod main_~b~0 2))) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))) (and (not (< main_~a~0 0)) (not (<= (mod main_~a~0 2) 0))) (< main_~b~0 0))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~b~0 := ~b~0 - 1;~q~0 := ~q~0 + ~a~0 * ~p~0; {3008#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:24:54,722 INFO L290 TraceCheckUtils]: 31: Hoare triple {3015#(or (not (<= 1 (mod main_~b~0 2))) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))) (and (not (< main_~a~0 0)) (not (<= (mod main_~a~0 2) 0))) (< main_~b~0 0))} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3015#(or (not (<= 1 (mod main_~b~0 2))) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))) (and (not (< main_~a~0 0)) (not (<= (mod main_~a~0 2) 0))) (< main_~b~0 0))} is VALID [2022-04-28 07:24:54,723 INFO L290 TraceCheckUtils]: 30: Hoare triple {3015#(or (not (<= 1 (mod main_~b~0 2))) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))) (and (not (< main_~a~0 0)) (not (<= (mod main_~a~0 2) 0))) (< main_~b~0 0))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3015#(or (not (<= 1 (mod main_~b~0 2))) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))) (and (not (< main_~a~0 0)) (not (<= (mod main_~a~0 2) 0))) (< main_~b~0 0))} is VALID [2022-04-28 07:24:54,723 INFO L290 TraceCheckUtils]: 29: Hoare triple {3025#(or (= main_~a~0 0) (< (mod main_~b~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (and (not (< main_~a~0 0)) (not (<= (mod main_~a~0 2) 0))) (< main_~b~0 0))} assume !!(0 != ~a~0 && 0 != ~b~0); {3015#(or (not (<= 1 (mod main_~b~0 2))) (= (* main_~y~0 main_~x~0) (+ (* main_~a~0 main_~p~0) main_~q~0 (* main_~a~0 main_~p~0 (+ (- 1) main_~b~0)))) (and (not (< main_~a~0 0)) (not (<= (mod main_~a~0 2) 0))) (< main_~b~0 0))} is VALID [2022-04-28 07:24:54,724 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2961#(not (= |__VERIFIER_assert_#in~cond| 0))} {2872#true} #77#return; {3025#(or (= main_~a~0 0) (< (mod main_~b~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (and (not (< main_~a~0 0)) (not (<= (mod main_~a~0 2) 0))) (< main_~b~0 0))} is VALID [2022-04-28 07:24:54,724 INFO L290 TraceCheckUtils]: 27: Hoare triple {2961#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2961#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:24:54,725 INFO L290 TraceCheckUtils]: 26: Hoare triple {3038#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2961#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:24:54,725 INFO L290 TraceCheckUtils]: 25: Hoare triple {2872#true} ~cond := #in~cond; {3038#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 07:24:54,725 INFO L272 TraceCheckUtils]: 24: Hoare triple {2872#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2872#true} is VALID [2022-04-28 07:24:54,725 INFO L290 TraceCheckUtils]: 23: Hoare triple {2872#true} assume !false; {2872#true} is VALID [2022-04-28 07:24:54,725 INFO L290 TraceCheckUtils]: 22: Hoare triple {2872#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2872#true} is VALID [2022-04-28 07:24:54,725 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2872#true} {2872#true} #75#return; {2872#true} is VALID [2022-04-28 07:24:54,725 INFO L290 TraceCheckUtils]: 20: Hoare triple {2872#true} assume true; {2872#true} is VALID [2022-04-28 07:24:54,725 INFO L290 TraceCheckUtils]: 19: Hoare triple {2872#true} assume !(0 == ~cond); {2872#true} is VALID [2022-04-28 07:24:54,725 INFO L290 TraceCheckUtils]: 18: Hoare triple {2872#true} ~cond := #in~cond; {2872#true} is VALID [2022-04-28 07:24:54,725 INFO L272 TraceCheckUtils]: 17: Hoare triple {2872#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2872#true} {2872#true} #73#return; {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L290 TraceCheckUtils]: 15: Hoare triple {2872#true} assume true; {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L290 TraceCheckUtils]: 14: Hoare triple {2872#true} assume !(0 == ~cond); {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L290 TraceCheckUtils]: 13: Hoare triple {2872#true} ~cond := #in~cond; {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L272 TraceCheckUtils]: 12: Hoare triple {2872#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L290 TraceCheckUtils]: 11: Hoare triple {2872#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2872#true} {2872#true} #71#return; {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L290 TraceCheckUtils]: 9: Hoare triple {2872#true} assume true; {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L290 TraceCheckUtils]: 8: Hoare triple {2872#true} assume !(0 == ~cond); {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L290 TraceCheckUtils]: 7: Hoare triple {2872#true} ~cond := #in~cond; {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L272 TraceCheckUtils]: 6: Hoare triple {2872#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L290 TraceCheckUtils]: 5: Hoare triple {2872#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L272 TraceCheckUtils]: 4: Hoare triple {2872#true} call #t~ret6 := main(); {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2872#true} {2872#true} #83#return; {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L290 TraceCheckUtils]: 2: Hoare triple {2872#true} assume true; {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L290 TraceCheckUtils]: 1: Hoare triple {2872#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); {2872#true} is VALID [2022-04-28 07:24:54,726 INFO L272 TraceCheckUtils]: 0: Hoare triple {2872#true} call ULTIMATE.init(); {2872#true} is VALID [2022-04-28 07:24:54,727 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 07:24:54,727 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:24:54,727 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [592433480] [2022-04-28 07:24:54,727 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:24:54,727 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [644846251] [2022-04-28 07:24:54,727 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [644846251] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:24:54,727 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:24:54,727 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 17 [2022-04-28 07:24:54,727 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:24:54,727 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2122615046] [2022-04-28 07:24:54,727 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2122615046] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:24:54,727 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:24:54,727 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 07:24:54,728 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1570612786] [2022-04-28 07:24:54,728 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:24:54,728 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.7692307692307692) internal successors, (23), 11 states have internal predecessors, (23), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 38 [2022-04-28 07:24:54,728 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:24:54,728 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 1.7692307692307692) internal successors, (23), 11 states have internal predecessors, (23), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 07:24:54,754 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:54,754 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 07:24:54,754 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:24:54,755 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 07:24:54,755 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=217, Unknown=0, NotChecked=0, Total=272 [2022-04-28 07:24:54,755 INFO L87 Difference]: Start difference. First operand 47 states and 54 transitions. Second operand has 13 states, 13 states have (on average 1.7692307692307692) internal successors, (23), 11 states have internal predecessors, (23), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 07:24:55,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:55,387 INFO L93 Difference]: Finished difference Result 69 states and 83 transitions. [2022-04-28 07:24:55,387 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 07:24:55,387 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.7692307692307692) internal successors, (23), 11 states have internal predecessors, (23), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 38 [2022-04-28 07:24:55,387 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:24:55,387 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.7692307692307692) internal successors, (23), 11 states have internal predecessors, (23), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 07:24:55,388 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 70 transitions. [2022-04-28 07:24:55,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.7692307692307692) internal successors, (23), 11 states have internal predecessors, (23), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 07:24:55,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 70 transitions. [2022-04-28 07:24:55,390 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 70 transitions. [2022-04-28 07:24:55,446 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:55,446 INFO L225 Difference]: With dead ends: 69 [2022-04-28 07:24:55,447 INFO L226 Difference]: Without dead ends: 48 [2022-04-28 07:24:55,447 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 59 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=72, Invalid=308, Unknown=0, NotChecked=0, Total=380 [2022-04-28 07:24:55,447 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 42 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 113 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 07:24:55,447 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [45 Valid, 113 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 179 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 07:24:55,448 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-28 07:24:55,509 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 46. [2022-04-28 07:24:55,509 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:24:55,509 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 46 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 32 states have internal predecessors, (37), 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:24:55,509 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 46 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 32 states have internal predecessors, (37), 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:24:55,509 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 46 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 32 states have internal predecessors, (37), 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:24:55,511 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:55,511 INFO L93 Difference]: Finished difference Result 48 states and 55 transitions. [2022-04-28 07:24:55,511 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 55 transitions. [2022-04-28 07:24:55,511 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:24:55,511 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:24:55,511 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 32 states have internal predecessors, (37), 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 48 states. [2022-04-28 07:24:55,511 INFO L87 Difference]: Start difference. First operand has 46 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 32 states have internal predecessors, (37), 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 48 states. [2022-04-28 07:24:55,512 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:24:55,512 INFO L93 Difference]: Finished difference Result 48 states and 55 transitions. [2022-04-28 07:24:55,513 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 55 transitions. [2022-04-28 07:24:55,513 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:24:55,513 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:24:55,513 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:24:55,513 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:24:55,513 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 32 states have internal predecessors, (37), 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:24:55,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 53 transitions. [2022-04-28 07:24:55,514 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 53 transitions. Word has length 38 [2022-04-28 07:24:55,514 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:24:55,514 INFO L495 AbstractCegarLoop]: Abstraction has 46 states and 53 transitions. [2022-04-28 07:24:55,514 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 1.7692307692307692) internal successors, (23), 11 states have internal predecessors, (23), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 07:24:55,514 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 46 states and 53 transitions. [2022-04-28 07:24:55,586 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:24:55,586 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 53 transitions. [2022-04-28 07:24:55,586 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-28 07:24:55,587 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:24:55,587 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, 1] [2022-04-28 07:24:55,604 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-28 07:24:55,793 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:24:55,793 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:24:55,794 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:24:55,794 INFO L85 PathProgramCache]: Analyzing trace with hash 901777418, now seen corresponding path program 1 times [2022-04-28 07:24:55,794 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:24:55,794 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [677562258] [2022-04-28 07:24:55,794 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:24:55,794 INFO L85 PathProgramCache]: Analyzing trace with hash 901777418, now seen corresponding path program 2 times [2022-04-28 07:24:55,794 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:24:55,794 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [821607340] [2022-04-28 07:24:55,794 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:24:55,794 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:24:55,807 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:24:55,808 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1737807152] [2022-04-28 07:24:55,808 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:24:55,808 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:24:55,808 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:24:55,809 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:24:55,811 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:24:55,844 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:24:55,844 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:24:55,845 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 42 conjunts are in the unsatisfiable core [2022-04-28 07:24:55,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:24:55,866 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:24:57,000 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:24:57,000 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [821607340] [2022-04-28 07:24:57,000 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:24:57,000 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1737807152] [2022-04-28 07:24:57,000 WARN L319 FreeRefinementEngine]: Global settings require throwing the following exception [2022-04-28 07:24:57,019 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:24:57,215 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:24:57,216 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: transformation to positive normal form unsound at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.polynomials.PolynomialRelation.positiveNormalForm(PolynomialRelation.java:434) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.polynomials.PolynomialRelation.solveForSubject(PolynomialRelation.java:477) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DerScout.transduceAtom(DerScout.java:101) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DerScout.transduceAtom(DerScout.java:1) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.CondisTermTransducer.transduceImmediately(CondisTermTransducer.java:67) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.TermTransducer$TermTransducerHelper.convert(TermTransducer.java:76) at de.uni_freiburg.informatik.ultimate.logic.TermTransformer.cacheConvert(TermTransformer.java:131) at de.uni_freiburg.informatik.ultimate.logic.TermTransformer$Convert.walk(TermTransformer.java:79) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:115) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:106) at de.uni_freiburg.informatik.ultimate.logic.TermTransformer.transform(TermTransformer.java:285) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.TermTransducer.transduce(TermTransducer.java:60) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.computeDerApplicabilityScore(QuantifierPusher.java:605) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.selectBestEliminatee(QuantifierPusher.java:589) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushUtilsForSubsetPush.sequentialSubsetPush(QuantifierPushUtilsForSubsetPush.java:135) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToPushOverDualFiniteConnective2(QuantifierPusher.java:389) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToPushOverDualFiniteConnective(QuantifierPusher.java:346) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:175) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:1) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:65) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:61) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:264) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:250) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.PartialQuantifierElimination.eliminate(PartialQuantifierElimination.java:92) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer$QuantifierEliminationPostprocessor.postprocess(IterativePredicateTransformer.java:238) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.applyPostprocessors(IterativePredicateTransformer.java:420) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.computeStrongestPostconditionSequence(IterativePredicateTransformer.java:199) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolantsUsingUnsatCore(TraceCheckSpWp.java:299) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolants(TraceCheckSpWp.java:185) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.(TraceCheckSpWp.java:163) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:108) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:1) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.getOrConstruct(IpTcStrategyModuleBase.java:101) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.isCorrect(IpTcStrategyModuleBase.java:57) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.checkFeasibility(AutomatonFreeRefinementEngine.java:209) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.executeStrategy(AutomatonFreeRefinementEngine.java:121) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.(AutomatonFreeRefinementEngine.java:85) at de.uni_freiburg.informatik.ultimate.lib.acceleratedinterpolation.AcceleratedInterpolationCore.runStrategy(AcceleratedInterpolationCore.java:300) at de.uni_freiburg.informatik.ultimate.lib.acceleratedinterpolation.AcceleratedInterpolationCore.acceleratedInterpolationCoreIsCorrect(AcceleratedInterpolationCore.java:203) at de.uni_freiburg.informatik.ultimate.lib.acceleratedinterpolation.AcceleratedInterpolation.(AcceleratedInterpolation.java:195) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleAcceleratedInterpolation.construct(IpTcStrategyModuleAcceleratedInterpolation.java:80) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.getOrConstruct(IpTcStrategyModuleBase.java:101) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.isCorrect(IpTcStrategyModuleBase.java:57) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.checkFeasibility(AutomatonFreeRefinementEngine.java:209) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.executeStrategy(AutomatonFreeRefinementEngine.java:121) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.(AutomatonFreeRefinementEngine.java:85) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:82) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:248) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:431) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:366) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:348) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:409) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:300) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseSequentialProgram(TraceAbstractionStarter.java:260) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:173) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:152) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-04-28 07:24:57,219 INFO L158 Benchmark]: Toolchain (without parser) took 155974.84ms. Allocated memory was 205.5MB in the beginning and 247.5MB in the end (delta: 41.9MB). Free memory was 154.5MB in the beginning and 126.1MB in the end (delta: 28.3MB). Peak memory consumption was 70.5MB. Max. memory is 8.0GB. [2022-04-28 07:24:57,219 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 205.5MB. Free memory was 170.8MB in the beginning and 170.7MB in the end (delta: 73.1kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 07:24:57,219 INFO L158 Benchmark]: CACSL2BoogieTranslator took 267.78ms. Allocated memory was 205.5MB in the beginning and 247.5MB in the end (delta: 41.9MB). Free memory was 154.2MB in the beginning and 223.0MB in the end (delta: -68.8MB). Peak memory consumption was 11.3MB. Max. memory is 8.0GB. [2022-04-28 07:24:57,219 INFO L158 Benchmark]: Boogie Preprocessor took 28.31ms. Allocated memory is still 247.5MB. Free memory was 223.0MB in the beginning and 221.4MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-28 07:24:57,219 INFO L158 Benchmark]: RCFGBuilder took 298.42ms. Allocated memory is still 247.5MB. Free memory was 221.4MB in the beginning and 208.3MB in the end (delta: 13.0MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-28 07:24:57,220 INFO L158 Benchmark]: TraceAbstraction took 155376.24ms. Allocated memory is still 247.5MB. Free memory was 207.7MB in the beginning and 126.7MB in the end (delta: 81.1MB). Peak memory consumption was 81.3MB. Max. memory is 8.0GB. [2022-04-28 07:24:57,220 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.12ms. Allocated memory is still 205.5MB. Free memory was 170.8MB in the beginning and 170.7MB in the end (delta: 73.1kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 267.78ms. Allocated memory was 205.5MB in the beginning and 247.5MB in the end (delta: 41.9MB). Free memory was 154.2MB in the beginning and 223.0MB in the end (delta: -68.8MB). Peak memory consumption was 11.3MB. Max. memory is 8.0GB. * Boogie Preprocessor took 28.31ms. Allocated memory is still 247.5MB. Free memory was 223.0MB in the beginning and 221.4MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 298.42ms. Allocated memory is still 247.5MB. Free memory was 221.4MB in the beginning and 208.3MB in the end (delta: 13.0MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 155376.24ms. Allocated memory is still 247.5MB. Free memory was 207.7MB in the beginning and 126.7MB in the end (delta: 81.1MB). Peak memory consumption was 81.3MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: transformation to positive normal form unsound de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: transformation to positive normal form unsound: de.uni_freiburg.informatik.ultimate.lib.smtlibutils.polynomials.PolynomialRelation.positiveNormalForm(PolynomialRelation.java:434) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-04-28 07:24:57,261 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...