/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_unwindbound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 07:20:30,536 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 07:20:30,537 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 07:20:30,579 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 07:20:30,579 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 07:20:30,580 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 07:20:30,583 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 07:20:30,588 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 07:20:30,589 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 07:20:30,590 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 07:20:30,590 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 07:20:30,591 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 07:20:30,592 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 07:20:30,592 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 07:20:30,593 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 07:20:30,594 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 07:20:30,595 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 07:20:30,595 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 07:20:30,597 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 07:20:30,598 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 07:20:30,602 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 07:20:30,607 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 07:20:30,609 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 07:20:30,612 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 07:20:30,614 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 07:20:30,619 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 07:20:30,619 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 07:20:30,619 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 07:20:30,620 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 07:20:30,620 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 07:20:30,621 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 07:20:30,621 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 07:20:30,621 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 07:20:30,622 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 07:20:30,622 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 07:20:30,623 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 07:20:30,623 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 07:20:30,624 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 07:20:30,624 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 07:20:30,624 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 07:20:30,625 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 07:20:30,629 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 07:20:30,630 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 07:20:30,643 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 07:20:30,643 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 07:20:30,645 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 07:20:30,645 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 07:20:30,645 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 07:20:30,645 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 07:20:30,645 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 07:20:30,645 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 07:20:30,645 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 07:20:30,646 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 07:20:30,646 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 07:20:30,647 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 07:20:30,647 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 07:20:30,647 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 07:20:30,647 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 07:20:30,647 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 07:20:30,647 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 07:20:30,647 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 07:20:30,647 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 07:20:30,648 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 07:20:30,648 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 07:20:30,648 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 07:20:30,648 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 07:20:30,648 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 07:20:30,648 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 07:20:30,648 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:20:30,896 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 07:20:30,915 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 07:20:30,918 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 07:20:30,919 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 07:20:30,919 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 07:20:30,920 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound50.c [2022-04-28 07:20:30,981 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fa52024a5/e5fe392239a9418cadb6bcb7d2073a76/FLAGa741cd5fa [2022-04-28 07:20:31,315 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 07:20:31,316 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound50.c [2022-04-28 07:20:31,323 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fa52024a5/e5fe392239a9418cadb6bcb7d2073a76/FLAGa741cd5fa [2022-04-28 07:20:31,733 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fa52024a5/e5fe392239a9418cadb6bcb7d2073a76 [2022-04-28 07:20:31,735 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 07:20:31,737 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 07:20:31,739 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 07:20:31,739 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 07:20:31,745 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 07:20:31,756 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 07:20:31" (1/1) ... [2022-04-28 07:20:31,759 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5db88e4f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31, skipping insertion in model container [2022-04-28 07:20:31,759 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 07:20:31" (1/1) ... [2022-04-28 07:20:31,764 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 07:20:31,775 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 07:20:31,928 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_unwindbound50.c[524,537] [2022-04-28 07:20:31,946 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 07:20:31,953 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 07:20:31,962 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_unwindbound50.c[524,537] [2022-04-28 07:20:31,970 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 07:20:31,981 INFO L208 MainTranslator]: Completed translation [2022-04-28 07:20:31,981 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31 WrapperNode [2022-04-28 07:20:31,981 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 07:20:31,982 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 07:20:31,982 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 07:20:31,982 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 07:20:31,993 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31" (1/1) ... [2022-04-28 07:20:31,993 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31" (1/1) ... [2022-04-28 07:20:31,998 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31" (1/1) ... [2022-04-28 07:20:31,998 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31" (1/1) ... [2022-04-28 07:20:32,004 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31" (1/1) ... [2022-04-28 07:20:32,008 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31" (1/1) ... [2022-04-28 07:20:32,009 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31" (1/1) ... [2022-04-28 07:20:32,010 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 07:20:32,011 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 07:20:32,011 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 07:20:32,011 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 07:20:32,012 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31" (1/1) ... [2022-04-28 07:20:32,017 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 07:20:32,027 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:20:32,040 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:20:32,048 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:20:32,077 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 07:20:32,078 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 07:20:32,078 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 07:20:32,078 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 07:20:32,078 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 07:20:32,078 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 07:20:32,079 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 07:20:32,079 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 07:20:32,079 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 07:20:32,079 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 07:20:32,079 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 07:20:32,080 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 07:20:32,081 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 07:20:32,081 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 07:20:32,081 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 07:20:32,081 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 07:20:32,081 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 07:20:32,081 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 07:20:32,081 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 07:20:32,082 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 07:20:32,129 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 07:20:32,130 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 07:20:32,281 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 07:20:32,287 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 07:20:32,287 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 07:20:32,288 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 07:20:32 BoogieIcfgContainer [2022-04-28 07:20:32,289 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 07:20:32,290 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 07:20:32,290 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 07:20:32,293 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 07:20:32,293 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 07:20:31" (1/3) ... [2022-04-28 07:20:32,293 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68cb7039 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 07:20:32, skipping insertion in model container [2022-04-28 07:20:32,294 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:20:31" (2/3) ... [2022-04-28 07:20:32,294 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68cb7039 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 07:20:32, skipping insertion in model container [2022-04-28 07:20:32,294 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 07:20:32" (3/3) ... [2022-04-28 07:20:32,295 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound50.c [2022-04-28 07:20:32,305 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 07:20:32,305 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 07:20:32,356 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 07:20:32,371 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@3ed3912a, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@5b1bd3fa [2022-04-28 07:20:32,371 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 07:20:32,382 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 07:20:32,390 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-28 07:20:32,390 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:20:32,390 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:20:32,391 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:20:32,395 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:20:32,395 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 1 times [2022-04-28 07:20:32,402 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:20:32,402 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1204600214] [2022-04-28 07:20:32,412 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:20:32,412 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 2 times [2022-04-28 07:20:32,414 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:20:32,415 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1220664736] [2022-04-28 07:20:32,415 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:20:32,416 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:20:32,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:20:32,627 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 07:20:32,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:20:32,660 INFO L290 TraceCheckUtils]: 0: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {35#true} is VALID [2022-04-28 07:20:32,661 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-28 07:20:32,661 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-28 07:20:32,662 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 07:20:32,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:20:32,679 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 07:20:32,680 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 07:20:32,680 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 07:20:32,681 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-28 07:20:32,682 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} call ULTIMATE.init(); {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 07:20:32,682 INFO L290 TraceCheckUtils]: 1: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {35#true} is VALID [2022-04-28 07:20:32,683 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-28 07:20:32,683 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-28 07:20:32,683 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} call #t~ret7 := main(); {35#true} is VALID [2022-04-28 07:20:32,684 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {35#true} is VALID [2022-04-28 07:20:32,684 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {35#true} is VALID [2022-04-28 07:20:32,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 07:20:32,685 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 07:20:32,685 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 07:20:32,685 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-28 07:20:32,686 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {36#false} is VALID [2022-04-28 07:20:32,687 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} assume !true; {36#false} is VALID [2022-04-28 07:20:32,687 INFO L272 TraceCheckUtils]: 13: Hoare triple {36#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {36#false} is VALID [2022-04-28 07:20:32,687 INFO L290 TraceCheckUtils]: 14: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-04-28 07:20:32,688 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-04-28 07:20:32,688 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-04-28 07:20:32,688 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 07:20:32,689 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:20:32,689 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1220664736] [2022-04-28 07:20:32,690 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1220664736] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:20:32,690 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:20:32,690 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 07:20:32,693 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:20:32,694 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1204600214] [2022-04-28 07:20:32,694 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1204600214] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:20:32,694 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:20:32,694 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 07:20:32,695 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1677377584] [2022-04-28 07:20:32,695 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:20:32,700 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-28 07:20:32,701 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:20:32,704 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 07:20:32,736 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:20:32,737 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 07:20:32,737 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:20:32,767 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 07:20:32,768 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 07:20:32,771 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 07:20:32,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:20:32,936 INFO L93 Difference]: Finished difference Result 56 states and 77 transitions. [2022-04-28 07:20:32,936 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 07:20:32,937 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-28 07:20:32,937 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:20:32,938 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 07:20:32,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 07:20:32,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 07:20:32,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 07:20:32,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-28 07:20:33,031 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:20:33,041 INFO L225 Difference]: With dead ends: 56 [2022-04-28 07:20:33,041 INFO L226 Difference]: Without dead ends: 28 [2022-04-28 07:20:33,045 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 07:20:33,049 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:20:33,051 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 40 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 07:20:33,078 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-28 07:20:33,097 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-04-28 07:20:33,097 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:20:33,098 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 07:20:33,099 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 07:20:33,099 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 07:20:33,107 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:20:33,107 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-28 07:20:33,108 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-28 07:20:33,108 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:20:33,108 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:20:33,109 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-28 07:20:33,110 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-28 07:20:33,113 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:20:33,113 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-28 07:20:33,113 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-28 07:20:33,114 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:20:33,114 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:20:33,114 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:20:33,114 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:20:33,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 07:20:33,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-28 07:20:33,118 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 17 [2022-04-28 07:20:33,118 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:20:33,118 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-28 07:20:33,119 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 07:20:33,121 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 33 transitions. [2022-04-28 07:20:33,158 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:20:33,159 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-28 07:20:33,160 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-28 07:20:33,160 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:20:33,160 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:20:33,160 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 07:20:33,161 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:20:33,164 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:20:33,164 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 1 times [2022-04-28 07:20:33,164 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:20:33,164 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [844440934] [2022-04-28 07:20:33,165 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:20:33,165 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 2 times [2022-04-28 07:20:33,165 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:20:33,168 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1335044928] [2022-04-28 07:20:33,168 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:20:33,169 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:20:33,196 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:20:33,196 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1864422443] [2022-04-28 07:20:33,196 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:20:33,197 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:20:33,197 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:20:33,204 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:20:33,207 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:20:33,249 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 07:20:33,249 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:20:33,251 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 07:20:33,260 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:20:33,263 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:20:33,443 INFO L272 TraceCheckUtils]: 0: Hoare triple {269#true} call ULTIMATE.init(); {269#true} is VALID [2022-04-28 07:20:33,444 INFO L290 TraceCheckUtils]: 1: Hoare triple {269#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,445 INFO L290 TraceCheckUtils]: 2: Hoare triple {277#(<= ~counter~0 0)} assume true; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,445 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {277#(<= ~counter~0 0)} {269#true} #77#return; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,446 INFO L272 TraceCheckUtils]: 4: Hoare triple {277#(<= ~counter~0 0)} call #t~ret7 := main(); {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,446 INFO L290 TraceCheckUtils]: 5: Hoare triple {277#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,447 INFO L272 TraceCheckUtils]: 6: Hoare triple {277#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,447 INFO L290 TraceCheckUtils]: 7: Hoare triple {277#(<= ~counter~0 0)} ~cond := #in~cond; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,448 INFO L290 TraceCheckUtils]: 8: Hoare triple {277#(<= ~counter~0 0)} assume !(0 == ~cond); {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,448 INFO L290 TraceCheckUtils]: 9: Hoare triple {277#(<= ~counter~0 0)} assume true; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,449 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {277#(<= ~counter~0 0)} {277#(<= ~counter~0 0)} #69#return; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,449 INFO L290 TraceCheckUtils]: 11: Hoare triple {277#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:20:33,450 INFO L290 TraceCheckUtils]: 12: Hoare triple {277#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {311#(<= |main_#t~post6| 0)} is VALID [2022-04-28 07:20:33,451 INFO L290 TraceCheckUtils]: 13: Hoare triple {311#(<= |main_#t~post6| 0)} assume !(#t~post6 < 50);havoc #t~post6; {270#false} is VALID [2022-04-28 07:20:33,451 INFO L272 TraceCheckUtils]: 14: Hoare triple {270#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {270#false} is VALID [2022-04-28 07:20:33,451 INFO L290 TraceCheckUtils]: 15: Hoare triple {270#false} ~cond := #in~cond; {270#false} is VALID [2022-04-28 07:20:33,451 INFO L290 TraceCheckUtils]: 16: Hoare triple {270#false} assume 0 == ~cond; {270#false} is VALID [2022-04-28 07:20:33,451 INFO L290 TraceCheckUtils]: 17: Hoare triple {270#false} assume !false; {270#false} is VALID [2022-04-28 07:20:33,452 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 07:20:33,452 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:20:33,452 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:20:33,453 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1335044928] [2022-04-28 07:20:33,453 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:20:33,453 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1864422443] [2022-04-28 07:20:33,454 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1864422443] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:20:33,454 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:20:33,454 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 07:20:33,455 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:20:33,455 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [844440934] [2022-04-28 07:20:33,455 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [844440934] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:20:33,455 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:20:33,455 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 07:20:33,456 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1104076053] [2022-04-28 07:20:33,456 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:20:33,456 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-28 07:20:33,457 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:20:33,457 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 07:20:33,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:20:33,473 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 07:20:33,473 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:20:33,474 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 07:20:33,474 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 07:20:33,475 INFO L87 Difference]: Start difference. First operand 27 states and 33 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 07:20:33,576 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:20:33,577 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-28 07:20:33,577 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 07:20:33,577 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-28 07:20:33,577 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:20:33,577 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 07:20:33,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-28 07:20:33,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 07:20:33,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-28 07:20:33,581 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-04-28 07:20:33,619 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:20:33,621 INFO L225 Difference]: With dead ends: 37 [2022-04-28 07:20:33,621 INFO L226 Difference]: Without dead ends: 29 [2022-04-28 07:20:33,622 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 07:20:33,624 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 0 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:20:33,628 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 81 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 07:20:33,629 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-28 07:20:33,647 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-28 07:20:33,648 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:20:33,648 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 07:20:33,650 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 07:20:33,650 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 07:20:33,654 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:20:33,654 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-28 07:20:33,654 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 07:20:33,655 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:20:33,655 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:20:33,657 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-28 07:20:33,657 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-28 07:20:33,660 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:20:33,660 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-28 07:20:33,660 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 07:20:33,661 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:20:33,661 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:20:33,661 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:20:33,661 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:20:33,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 07:20:33,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2022-04-28 07:20:33,669 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 35 transitions. Word has length 18 [2022-04-28 07:20:33,669 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:20:33,669 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 35 transitions. [2022-04-28 07:20:33,670 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 07:20:33,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 35 transitions. [2022-04-28 07:20:33,705 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:20:33,708 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 07:20:33,709 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-28 07:20:33,714 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:20:33,715 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:20:33,739 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-28 07:20:33,937 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:20:33,937 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:20:33,938 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:20:33,938 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 1 times [2022-04-28 07:20:33,938 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:20:33,938 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [351732614] [2022-04-28 07:20:33,938 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:20:33,938 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 2 times [2022-04-28 07:20:33,938 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:20:33,939 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1570406777] [2022-04-28 07:20:33,939 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:20:33,939 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:20:33,957 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:20:33,958 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1066634820] [2022-04-28 07:20:33,958 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:20:33,958 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:20:33,958 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:20:33,961 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:20:33,998 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:20:34,011 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 07:20:34,011 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:20:34,012 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 07:20:34,021 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:20:34,021 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:20:34,199 INFO L272 TraceCheckUtils]: 0: Hoare triple {516#true} call ULTIMATE.init(); {516#true} is VALID [2022-04-28 07:20:34,199 INFO L290 TraceCheckUtils]: 1: Hoare triple {516#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {516#true} is VALID [2022-04-28 07:20:34,200 INFO L290 TraceCheckUtils]: 2: Hoare triple {516#true} assume true; {516#true} is VALID [2022-04-28 07:20:34,200 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {516#true} {516#true} #77#return; {516#true} is VALID [2022-04-28 07:20:34,200 INFO L272 TraceCheckUtils]: 4: Hoare triple {516#true} call #t~ret7 := main(); {516#true} is VALID [2022-04-28 07:20:34,200 INFO L290 TraceCheckUtils]: 5: Hoare triple {516#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {516#true} is VALID [2022-04-28 07:20:34,200 INFO L272 TraceCheckUtils]: 6: Hoare triple {516#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {516#true} is VALID [2022-04-28 07:20:34,200 INFO L290 TraceCheckUtils]: 7: Hoare triple {516#true} ~cond := #in~cond; {516#true} is VALID [2022-04-28 07:20:34,201 INFO L290 TraceCheckUtils]: 8: Hoare triple {516#true} assume !(0 == ~cond); {516#true} is VALID [2022-04-28 07:20:34,201 INFO L290 TraceCheckUtils]: 9: Hoare triple {516#true} assume true; {516#true} is VALID [2022-04-28 07:20:34,201 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {516#true} {516#true} #69#return; {516#true} is VALID [2022-04-28 07:20:34,201 INFO L290 TraceCheckUtils]: 11: Hoare triple {516#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:20:34,202 INFO L290 TraceCheckUtils]: 12: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:20:34,203 INFO L290 TraceCheckUtils]: 13: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:20:34,204 INFO L272 TraceCheckUtils]: 14: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {564#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:20:34,204 INFO L290 TraceCheckUtils]: 15: Hoare triple {564#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {568#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:20:34,204 INFO L290 TraceCheckUtils]: 16: Hoare triple {568#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {517#false} is VALID [2022-04-28 07:20:34,205 INFO L290 TraceCheckUtils]: 17: Hoare triple {517#false} assume !false; {517#false} is VALID [2022-04-28 07:20:34,205 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 07:20:34,205 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:20:34,205 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:20:34,205 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1570406777] [2022-04-28 07:20:34,205 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:20:34,205 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1066634820] [2022-04-28 07:20:34,205 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1066634820] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:20:34,205 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:20:34,206 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:20:34,206 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:20:34,206 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [351732614] [2022-04-28 07:20:34,206 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [351732614] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:20:34,206 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:20:34,206 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:20:34,206 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1263424154] [2022-04-28 07:20:34,206 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:20:34,207 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-28 07:20:34,207 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:20:34,207 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 07:20:34,222 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:20:34,222 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 07:20:34,222 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:20:34,222 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 07:20:34,222 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 07:20:34,223 INFO L87 Difference]: Start difference. First operand 29 states and 35 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 07:20:34,410 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:20:34,410 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-04-28 07:20:34,411 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 07:20:34,411 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-28 07:20:34,411 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:20:34,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 07:20:34,413 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 07:20:34,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 07:20:34,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 07:20:34,414 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-28 07:20:34,479 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:20:34,481 INFO L225 Difference]: With dead ends: 42 [2022-04-28 07:20:34,481 INFO L226 Difference]: Without dead ends: 40 [2022-04-28 07:20:34,481 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 07:20:34,482 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 9 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 07:20:34,482 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 83 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 07:20:34,483 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-28 07:20:34,500 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-28 07:20:34,500 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:20:34,500 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 07:20:34,501 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 07:20:34,501 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 07:20:34,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:20:34,503 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-28 07:20:34,503 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-28 07:20:34,504 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:20:34,504 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:20:34,504 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-28 07:20:34,504 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-28 07:20:34,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:20:34,507 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-28 07:20:34,508 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-28 07:20:34,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:20:34,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:20:34,508 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:20:34,508 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:20:34,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 07:20:34,510 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-28 07:20:34,510 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 18 [2022-04-28 07:20:34,510 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:20:34,511 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-28 07:20:34,511 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 07:20:34,511 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 40 transitions. [2022-04-28 07:20:34,547 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:20:34,547 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-28 07:20:34,547 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 07:20:34,547 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:20:34,548 INFO L195 NwaCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:20:34,567 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:20:34,759 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:20:34,760 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:20:34,760 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:20:34,760 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 1 times [2022-04-28 07:20:34,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:20:34,760 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1069171800] [2022-04-28 07:20:34,761 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:20:34,761 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 2 times [2022-04-28 07:20:34,761 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:20:34,761 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2091234178] [2022-04-28 07:20:34,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:20:34,762 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:20:34,785 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:20:34,785 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1322889318] [2022-04-28 07:20:34,785 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:20:34,785 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:20:34,785 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:20:34,790 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:20:34,791 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:20:34,832 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:20:34,833 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:20:34,834 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 07:20:34,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:20:34,847 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:20:44,737 INFO L272 TraceCheckUtils]: 0: Hoare triple {808#true} call ULTIMATE.init(); {808#true} is VALID [2022-04-28 07:20:44,737 INFO L290 TraceCheckUtils]: 1: Hoare triple {808#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {808#true} is VALID [2022-04-28 07:20:44,738 INFO L290 TraceCheckUtils]: 2: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-28 07:20:44,738 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {808#true} {808#true} #77#return; {808#true} is VALID [2022-04-28 07:20:44,738 INFO L272 TraceCheckUtils]: 4: Hoare triple {808#true} call #t~ret7 := main(); {808#true} is VALID [2022-04-28 07:20:44,738 INFO L290 TraceCheckUtils]: 5: Hoare triple {808#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {808#true} is VALID [2022-04-28 07:20:44,738 INFO L272 TraceCheckUtils]: 6: Hoare triple {808#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {808#true} is VALID [2022-04-28 07:20:44,739 INFO L290 TraceCheckUtils]: 7: Hoare triple {808#true} ~cond := #in~cond; {834#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:20:44,739 INFO L290 TraceCheckUtils]: 8: Hoare triple {834#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {838#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:20:44,740 INFO L290 TraceCheckUtils]: 9: Hoare triple {838#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {838#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:20:44,742 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {838#(not (= |assume_abort_if_not_#in~cond| 0))} {808#true} #69#return; {845#(<= 1 main_~y~0)} is VALID [2022-04-28 07:20:44,743 INFO L290 TraceCheckUtils]: 11: Hoare triple {845#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:20:44,743 INFO L290 TraceCheckUtils]: 12: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:20:44,744 INFO L290 TraceCheckUtils]: 13: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:20:44,744 INFO L272 TraceCheckUtils]: 14: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {808#true} is VALID [2022-04-28 07:20:44,744 INFO L290 TraceCheckUtils]: 15: Hoare triple {808#true} ~cond := #in~cond; {862#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:20:44,745 INFO L290 TraceCheckUtils]: 16: Hoare triple {862#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:20:44,745 INFO L290 TraceCheckUtils]: 17: Hoare triple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:20:46,752 WARN L284 TraceCheckUtils]: 18: Hoare quadruple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #71#return; {873#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is UNKNOWN [2022-04-28 07:20:46,753 INFO L290 TraceCheckUtils]: 19: Hoare triple {873#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !(0 != ~a~0 && 0 != ~b~0); {877#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:20:46,754 INFO L272 TraceCheckUtils]: 20: Hoare triple {877#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {881#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:20:46,759 INFO L290 TraceCheckUtils]: 21: Hoare triple {881#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {885#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:20:46,760 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {809#false} is VALID [2022-04-28 07:20:46,760 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#false} assume !false; {809#false} is VALID [2022-04-28 07:20:46,760 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 07:20:46,760 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:21:23,868 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#false} assume !false; {809#false} is VALID [2022-04-28 07:21:23,868 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {809#false} is VALID [2022-04-28 07:21:23,869 INFO L290 TraceCheckUtils]: 21: Hoare triple {881#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {885#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:21:23,869 INFO L272 TraceCheckUtils]: 20: Hoare triple {901#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {881#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:21:23,870 INFO L290 TraceCheckUtils]: 19: Hoare triple {905#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {901#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:21:23,871 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} {808#true} #71#return; {905#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-28 07:21:23,871 INFO L290 TraceCheckUtils]: 17: Hoare triple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:21:23,872 INFO L290 TraceCheckUtils]: 16: Hoare triple {918#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:21:23,872 INFO L290 TraceCheckUtils]: 15: Hoare triple {808#true} ~cond := #in~cond; {918#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 07:21:23,872 INFO L272 TraceCheckUtils]: 14: Hoare triple {808#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {808#true} is VALID [2022-04-28 07:21:23,872 INFO L290 TraceCheckUtils]: 13: Hoare triple {808#true} assume !!(#t~post6 < 50);havoc #t~post6; {808#true} is VALID [2022-04-28 07:21:23,872 INFO L290 TraceCheckUtils]: 12: Hoare triple {808#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {808#true} is VALID [2022-04-28 07:21:23,873 INFO L290 TraceCheckUtils]: 11: Hoare triple {808#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {808#true} is VALID [2022-04-28 07:21:23,873 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {808#true} {808#true} #69#return; {808#true} is VALID [2022-04-28 07:21:23,873 INFO L290 TraceCheckUtils]: 9: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-28 07:21:23,873 INFO L290 TraceCheckUtils]: 8: Hoare triple {808#true} assume !(0 == ~cond); {808#true} is VALID [2022-04-28 07:21:23,873 INFO L290 TraceCheckUtils]: 7: Hoare triple {808#true} ~cond := #in~cond; {808#true} is VALID [2022-04-28 07:21:23,873 INFO L272 TraceCheckUtils]: 6: Hoare triple {808#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {808#true} is VALID [2022-04-28 07:21:23,873 INFO L290 TraceCheckUtils]: 5: Hoare triple {808#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {808#true} is VALID [2022-04-28 07:21:23,873 INFO L272 TraceCheckUtils]: 4: Hoare triple {808#true} call #t~ret7 := main(); {808#true} is VALID [2022-04-28 07:21:23,874 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {808#true} {808#true} #77#return; {808#true} is VALID [2022-04-28 07:21:23,874 INFO L290 TraceCheckUtils]: 2: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-28 07:21:23,874 INFO L290 TraceCheckUtils]: 1: Hoare triple {808#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {808#true} is VALID [2022-04-28 07:21:23,874 INFO L272 TraceCheckUtils]: 0: Hoare triple {808#true} call ULTIMATE.init(); {808#true} is VALID [2022-04-28 07:21:23,874 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 07:21:23,874 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:21:23,874 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2091234178] [2022-04-28 07:21:23,875 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:21:23,875 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1322889318] [2022-04-28 07:21:23,875 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1322889318] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:21:23,875 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:21:23,875 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-28 07:21:23,875 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:21:23,875 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1069171800] [2022-04-28 07:21:23,875 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1069171800] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:21:23,876 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:21:23,876 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 07:21:23,876 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [167478770] [2022-04-28 07:21:23,876 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:21:23,876 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-28 07:21:23,876 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:21:23,877 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:21:25,901 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 23 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:21:25,901 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 07:21:25,901 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:25,902 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 07:21:25,902 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-28 07:21:25,902 INFO L87 Difference]: Start difference. First operand 34 states and 40 transitions. Second operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:21:32,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:32,168 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-28 07:21:32,168 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 07:21:32,169 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-28 07:21:32,169 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:21:32,169 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:21:32,172 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-28 07:21:32,172 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:21:32,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-28 07:21:32,175 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 60 transitions. [2022-04-28 07:21:34,242 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 59 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:21:34,244 INFO L225 Difference]: With dead ends: 50 [2022-04-28 07:21:34,244 INFO L226 Difference]: Without dead ends: 48 [2022-04-28 07:21:34,245 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 33 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=64, Invalid=278, Unknown=0, NotChecked=0, Total=342 [2022-04-28 07:21:34,245 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 36 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 204 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 221 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 204 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.1s IncrementalHoareTripleChecker+Time [2022-04-28 07:21:34,246 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [39 Valid, 130 Invalid, 221 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 204 Invalid, 0 Unknown, 0 Unchecked, 3.1s Time] [2022-04-28 07:21:34,246 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-28 07:21:34,287 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 45. [2022-04-28 07:21:34,287 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:21:34,287 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:21:34,288 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:21:34,288 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:21:34,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:34,291 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-28 07:21:34,291 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-28 07:21:34,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:34,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:34,292 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-28 07:21:34,292 INFO L87 Difference]: Start difference. First operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-28 07:21:34,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:34,294 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-28 07:21:34,295 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-28 07:21:34,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:34,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:34,295 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:21:34,295 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:21:34,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 07:21:34,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 56 transitions. [2022-04-28 07:21:34,297 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 56 transitions. Word has length 24 [2022-04-28 07:21:34,298 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:21:34,298 INFO L495 AbstractCegarLoop]: Abstraction has 45 states and 56 transitions. [2022-04-28 07:21:34,298 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:21:34,298 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 45 states and 56 transitions. [2022-04-28 07:21:36,367 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 55 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:21:36,368 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 56 transitions. [2022-04-28 07:21:36,368 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-28 07:21:36,368 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:21:36,368 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:21:36,384 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-28 07:21:36,571 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:21:36,571 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:21:36,571 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:21:36,572 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 1 times [2022-04-28 07:21:36,572 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:36,572 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1956631447] [2022-04-28 07:21:41,028 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-28 07:21:41,028 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-28 07:21:41,028 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 07:21:41,028 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 2 times [2022-04-28 07:21:41,028 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:21:41,028 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [389594343] [2022-04-28 07:21:41,028 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:21:41,028 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:21:41,050 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:21:41,050 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [677889540] [2022-04-28 07:21:41,050 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:21:41,050 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:21:41,050 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:21:41,052 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:21:41,078 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:21:41,105 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:21:41,105 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:21:41,106 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 07:21:41,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:21:41,123 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:21:41,269 INFO L272 TraceCheckUtils]: 0: Hoare triple {1260#true} call ULTIMATE.init(); {1260#true} is VALID [2022-04-28 07:21:41,270 INFO L290 TraceCheckUtils]: 1: Hoare triple {1260#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,271 INFO L290 TraceCheckUtils]: 2: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,271 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1268#(<= ~counter~0 0)} {1260#true} #77#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,272 INFO L272 TraceCheckUtils]: 4: Hoare triple {1268#(<= ~counter~0 0)} call #t~ret7 := main(); {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,272 INFO L290 TraceCheckUtils]: 5: Hoare triple {1268#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,273 INFO L272 TraceCheckUtils]: 6: Hoare triple {1268#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,273 INFO L290 TraceCheckUtils]: 7: Hoare triple {1268#(<= ~counter~0 0)} ~cond := #in~cond; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,274 INFO L290 TraceCheckUtils]: 8: Hoare triple {1268#(<= ~counter~0 0)} assume !(0 == ~cond); {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,274 INFO L290 TraceCheckUtils]: 9: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,275 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1268#(<= ~counter~0 0)} {1268#(<= ~counter~0 0)} #69#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,275 INFO L290 TraceCheckUtils]: 11: Hoare triple {1268#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:21:41,276 INFO L290 TraceCheckUtils]: 12: Hoare triple {1268#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:21:41,276 INFO L290 TraceCheckUtils]: 13: Hoare triple {1302#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:21:41,277 INFO L272 TraceCheckUtils]: 14: Hoare triple {1302#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:21:41,278 INFO L290 TraceCheckUtils]: 15: Hoare triple {1302#(<= ~counter~0 1)} ~cond := #in~cond; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:21:41,278 INFO L290 TraceCheckUtils]: 16: Hoare triple {1302#(<= ~counter~0 1)} assume !(0 == ~cond); {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:21:41,279 INFO L290 TraceCheckUtils]: 17: Hoare triple {1302#(<= ~counter~0 1)} assume true; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:21:41,280 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1302#(<= ~counter~0 1)} {1302#(<= ~counter~0 1)} #71#return; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:21:41,280 INFO L290 TraceCheckUtils]: 19: Hoare triple {1302#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:21:41,281 INFO L290 TraceCheckUtils]: 20: Hoare triple {1302#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:21:41,281 INFO L290 TraceCheckUtils]: 21: Hoare triple {1302#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1330#(<= |main_#t~post6| 1)} is VALID [2022-04-28 07:21:41,282 INFO L290 TraceCheckUtils]: 22: Hoare triple {1330#(<= |main_#t~post6| 1)} assume !(#t~post6 < 50);havoc #t~post6; {1261#false} is VALID [2022-04-28 07:21:41,282 INFO L272 TraceCheckUtils]: 23: Hoare triple {1261#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1261#false} is VALID [2022-04-28 07:21:41,282 INFO L290 TraceCheckUtils]: 24: Hoare triple {1261#false} ~cond := #in~cond; {1261#false} is VALID [2022-04-28 07:21:41,282 INFO L290 TraceCheckUtils]: 25: Hoare triple {1261#false} assume 0 == ~cond; {1261#false} is VALID [2022-04-28 07:21:41,282 INFO L290 TraceCheckUtils]: 26: Hoare triple {1261#false} assume !false; {1261#false} is VALID [2022-04-28 07:21:41,282 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 07:21:41,283 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:21:41,445 INFO L290 TraceCheckUtils]: 26: Hoare triple {1261#false} assume !false; {1261#false} is VALID [2022-04-28 07:21:41,446 INFO L290 TraceCheckUtils]: 25: Hoare triple {1261#false} assume 0 == ~cond; {1261#false} is VALID [2022-04-28 07:21:41,446 INFO L290 TraceCheckUtils]: 24: Hoare triple {1261#false} ~cond := #in~cond; {1261#false} is VALID [2022-04-28 07:21:41,446 INFO L272 TraceCheckUtils]: 23: Hoare triple {1261#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1261#false} is VALID [2022-04-28 07:21:41,446 INFO L290 TraceCheckUtils]: 22: Hoare triple {1358#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {1261#false} is VALID [2022-04-28 07:21:41,447 INFO L290 TraceCheckUtils]: 21: Hoare triple {1362#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1358#(< |main_#t~post6| 50)} is VALID [2022-04-28 07:21:41,447 INFO L290 TraceCheckUtils]: 20: Hoare triple {1362#(< ~counter~0 50)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1362#(< ~counter~0 50)} is VALID [2022-04-28 07:21:41,448 INFO L290 TraceCheckUtils]: 19: Hoare triple {1362#(< ~counter~0 50)} assume !!(0 != ~a~0 && 0 != ~b~0); {1362#(< ~counter~0 50)} is VALID [2022-04-28 07:21:41,449 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1260#true} {1362#(< ~counter~0 50)} #71#return; {1362#(< ~counter~0 50)} is VALID [2022-04-28 07:21:41,449 INFO L290 TraceCheckUtils]: 17: Hoare triple {1260#true} assume true; {1260#true} is VALID [2022-04-28 07:21:41,449 INFO L290 TraceCheckUtils]: 16: Hoare triple {1260#true} assume !(0 == ~cond); {1260#true} is VALID [2022-04-28 07:21:41,449 INFO L290 TraceCheckUtils]: 15: Hoare triple {1260#true} ~cond := #in~cond; {1260#true} is VALID [2022-04-28 07:21:41,449 INFO L272 TraceCheckUtils]: 14: Hoare triple {1362#(< ~counter~0 50)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1260#true} is VALID [2022-04-28 07:21:41,450 INFO L290 TraceCheckUtils]: 13: Hoare triple {1362#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {1362#(< ~counter~0 50)} is VALID [2022-04-28 07:21:41,450 INFO L290 TraceCheckUtils]: 12: Hoare triple {1390#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1362#(< ~counter~0 50)} is VALID [2022-04-28 07:21:41,451 INFO L290 TraceCheckUtils]: 11: Hoare triple {1390#(< ~counter~0 49)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1390#(< ~counter~0 49)} is VALID [2022-04-28 07:21:41,451 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1260#true} {1390#(< ~counter~0 49)} #69#return; {1390#(< ~counter~0 49)} is VALID [2022-04-28 07:21:41,451 INFO L290 TraceCheckUtils]: 9: Hoare triple {1260#true} assume true; {1260#true} is VALID [2022-04-28 07:21:41,451 INFO L290 TraceCheckUtils]: 8: Hoare triple {1260#true} assume !(0 == ~cond); {1260#true} is VALID [2022-04-28 07:21:41,451 INFO L290 TraceCheckUtils]: 7: Hoare triple {1260#true} ~cond := #in~cond; {1260#true} is VALID [2022-04-28 07:21:41,452 INFO L272 TraceCheckUtils]: 6: Hoare triple {1390#(< ~counter~0 49)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1260#true} is VALID [2022-04-28 07:21:41,452 INFO L290 TraceCheckUtils]: 5: Hoare triple {1390#(< ~counter~0 49)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1390#(< ~counter~0 49)} is VALID [2022-04-28 07:21:41,453 INFO L272 TraceCheckUtils]: 4: Hoare triple {1390#(< ~counter~0 49)} call #t~ret7 := main(); {1390#(< ~counter~0 49)} is VALID [2022-04-28 07:21:41,453 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1390#(< ~counter~0 49)} {1260#true} #77#return; {1390#(< ~counter~0 49)} is VALID [2022-04-28 07:21:41,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {1390#(< ~counter~0 49)} assume true; {1390#(< ~counter~0 49)} is VALID [2022-04-28 07:21:41,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {1260#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1390#(< ~counter~0 49)} is VALID [2022-04-28 07:21:41,455 INFO L272 TraceCheckUtils]: 0: Hoare triple {1260#true} call ULTIMATE.init(); {1260#true} is VALID [2022-04-28 07:21:41,455 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 07:21:41,455 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:21:41,455 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [389594343] [2022-04-28 07:21:41,455 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:21:41,455 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [677889540] [2022-04-28 07:21:41,455 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [677889540] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:21:41,455 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:21:41,456 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-28 07:21:41,456 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:21:41,456 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1956631447] [2022-04-28 07:21:41,456 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1956631447] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:21:41,456 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:21:41,456 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:21:41,456 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1209072123] [2022-04-28 07:21:41,456 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:21:41,457 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 27 [2022-04-28 07:21:41,457 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:21:41,457 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 07:21:41,482 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:21:41,482 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 07:21:41,482 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:41,483 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 07:21:41,483 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-28 07:21:41,483 INFO L87 Difference]: Start difference. First operand 45 states and 56 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 07:21:41,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:41,647 INFO L93 Difference]: Finished difference Result 73 states and 89 transitions. [2022-04-28 07:21:41,647 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 07:21:41,647 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 27 [2022-04-28 07:21:41,647 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:21:41,647 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 07:21:41,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-28 07:21:41,649 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 07:21:41,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-28 07:21:41,651 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 64 transitions. [2022-04-28 07:21:41,707 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:21:41,710 INFO L225 Difference]: With dead ends: 73 [2022-04-28 07:21:41,710 INFO L226 Difference]: Without dead ends: 63 [2022-04-28 07:21:41,710 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-28 07:21:41,711 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 17 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:21:41,711 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 108 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 07:21:41,711 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-28 07:21:41,780 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 61. [2022-04-28 07:21:41,780 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:21:41,781 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:21:41,781 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:21:41,782 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:21:41,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:41,791 INFO L93 Difference]: Finished difference Result 63 states and 77 transitions. [2022-04-28 07:21:41,791 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-28 07:21:41,792 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:41,792 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:41,792 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 63 states. [2022-04-28 07:21:41,794 INFO L87 Difference]: Start difference. First operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 63 states. [2022-04-28 07:21:41,796 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:41,796 INFO L93 Difference]: Finished difference Result 63 states and 77 transitions. [2022-04-28 07:21:41,796 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-28 07:21:41,797 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:41,797 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:41,797 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:21:41,797 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:21:41,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:21:41,799 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 76 transitions. [2022-04-28 07:21:41,799 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 76 transitions. Word has length 27 [2022-04-28 07:21:41,799 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:21:41,800 INFO L495 AbstractCegarLoop]: Abstraction has 61 states and 76 transitions. [2022-04-28 07:21:41,800 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 07:21:41,800 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 61 states and 76 transitions. [2022-04-28 07:21:43,890 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 75 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:21:43,891 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 76 transitions. [2022-04-28 07:21:43,891 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-28 07:21:43,891 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:21:43,891 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:21:43,911 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:21:44,092 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:21:44,092 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:21:44,092 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:21:44,092 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 1 times [2022-04-28 07:21:44,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:44,093 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1134727535] [2022-04-28 07:21:48,330 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-28 07:21:48,330 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-28 07:21:48,331 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 07:21:48,331 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 2 times [2022-04-28 07:21:48,331 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:21:48,331 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [870149685] [2022-04-28 07:21:48,331 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:21:48,331 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:21:48,344 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:21:48,344 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2010251948] [2022-04-28 07:21:48,344 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:21:48,344 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:21:48,344 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:21:48,349 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:21:48,374 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:21:48,404 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:21:48,405 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:21:48,406 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-28 07:21:48,424 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:21:48,427 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:21:48,846 INFO L272 TraceCheckUtils]: 0: Hoare triple {1825#true} call ULTIMATE.init(); {1825#true} is VALID [2022-04-28 07:21:48,846 INFO L290 TraceCheckUtils]: 1: Hoare triple {1825#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1825#true} is VALID [2022-04-28 07:21:48,846 INFO L290 TraceCheckUtils]: 2: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 07:21:48,847 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1825#true} {1825#true} #77#return; {1825#true} is VALID [2022-04-28 07:21:48,847 INFO L272 TraceCheckUtils]: 4: Hoare triple {1825#true} call #t~ret7 := main(); {1825#true} is VALID [2022-04-28 07:21:48,847 INFO L290 TraceCheckUtils]: 5: Hoare triple {1825#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1825#true} is VALID [2022-04-28 07:21:48,847 INFO L272 TraceCheckUtils]: 6: Hoare triple {1825#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1825#true} is VALID [2022-04-28 07:21:48,847 INFO L290 TraceCheckUtils]: 7: Hoare triple {1825#true} ~cond := #in~cond; {1825#true} is VALID [2022-04-28 07:21:48,847 INFO L290 TraceCheckUtils]: 8: Hoare triple {1825#true} assume !(0 == ~cond); {1825#true} is VALID [2022-04-28 07:21:48,847 INFO L290 TraceCheckUtils]: 9: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 07:21:48,847 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1825#true} {1825#true} #69#return; {1825#true} is VALID [2022-04-28 07:21:48,848 INFO L290 TraceCheckUtils]: 11: Hoare triple {1825#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:21:48,849 INFO L290 TraceCheckUtils]: 12: Hoare triple {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:21:48,849 INFO L290 TraceCheckUtils]: 13: Hoare triple {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:21:48,849 INFO L272 TraceCheckUtils]: 14: Hoare triple {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1825#true} is VALID [2022-04-28 07:21:48,850 INFO L290 TraceCheckUtils]: 15: Hoare triple {1825#true} ~cond := #in~cond; {1876#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:21:48,850 INFO L290 TraceCheckUtils]: 16: Hoare triple {1876#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:21:48,850 INFO L290 TraceCheckUtils]: 17: Hoare triple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:21:48,852 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #71#return; {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:21:48,852 INFO L290 TraceCheckUtils]: 19: Hoare triple {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:21:48,854 INFO L290 TraceCheckUtils]: 20: Hoare triple {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 07:21:48,854 INFO L290 TraceCheckUtils]: 21: Hoare triple {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 07:21:48,855 INFO L290 TraceCheckUtils]: 22: Hoare triple {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} assume !!(#t~post6 < 50);havoc #t~post6; {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-28 07:21:48,859 INFO L272 TraceCheckUtils]: 23: Hoare triple {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:21:48,860 INFO L290 TraceCheckUtils]: 24: Hoare triple {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1908#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:21:48,860 INFO L290 TraceCheckUtils]: 25: Hoare triple {1908#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1826#false} is VALID [2022-04-28 07:21:48,860 INFO L290 TraceCheckUtils]: 26: Hoare triple {1826#false} assume !false; {1826#false} is VALID [2022-04-28 07:21:48,861 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 07:21:48,861 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:22:42,284 INFO L290 TraceCheckUtils]: 26: Hoare triple {1826#false} assume !false; {1826#false} is VALID [2022-04-28 07:22:42,285 INFO L290 TraceCheckUtils]: 25: Hoare triple {1908#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1826#false} is VALID [2022-04-28 07:22:42,285 INFO L290 TraceCheckUtils]: 24: Hoare triple {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1908#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:22:42,286 INFO L272 TraceCheckUtils]: 23: Hoare triple {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:22:42,287 INFO L290 TraceCheckUtils]: 22: Hoare triple {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:22:42,287 INFO L290 TraceCheckUtils]: 21: Hoare triple {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:22:42,294 INFO L290 TraceCheckUtils]: 20: Hoare triple {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:22:42,295 INFO L290 TraceCheckUtils]: 19: Hoare triple {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} assume !!(0 != ~a~0 && 0 != ~b~0); {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} is VALID [2022-04-28 07:22:42,301 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} {1825#true} #71#return; {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} is VALID [2022-04-28 07:22:42,302 INFO L290 TraceCheckUtils]: 17: Hoare triple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:22:42,306 INFO L290 TraceCheckUtils]: 16: Hoare triple {1950#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:22:42,306 INFO L290 TraceCheckUtils]: 15: Hoare triple {1825#true} ~cond := #in~cond; {1950#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 07:22:42,307 INFO L272 TraceCheckUtils]: 14: Hoare triple {1825#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1825#true} is VALID [2022-04-28 07:22:42,307 INFO L290 TraceCheckUtils]: 13: Hoare triple {1825#true} assume !!(#t~post6 < 50);havoc #t~post6; {1825#true} is VALID [2022-04-28 07:22:42,307 INFO L290 TraceCheckUtils]: 12: Hoare triple {1825#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1825#true} is VALID [2022-04-28 07:22:42,307 INFO L290 TraceCheckUtils]: 11: Hoare triple {1825#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1825#true} is VALID [2022-04-28 07:22:42,307 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1825#true} {1825#true} #69#return; {1825#true} is VALID [2022-04-28 07:22:42,307 INFO L290 TraceCheckUtils]: 9: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 07:22:42,307 INFO L290 TraceCheckUtils]: 8: Hoare triple {1825#true} assume !(0 == ~cond); {1825#true} is VALID [2022-04-28 07:22:42,307 INFO L290 TraceCheckUtils]: 7: Hoare triple {1825#true} ~cond := #in~cond; {1825#true} is VALID [2022-04-28 07:22:42,308 INFO L272 TraceCheckUtils]: 6: Hoare triple {1825#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1825#true} is VALID [2022-04-28 07:22:42,308 INFO L290 TraceCheckUtils]: 5: Hoare triple {1825#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1825#true} is VALID [2022-04-28 07:22:42,308 INFO L272 TraceCheckUtils]: 4: Hoare triple {1825#true} call #t~ret7 := main(); {1825#true} is VALID [2022-04-28 07:22:42,308 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1825#true} {1825#true} #77#return; {1825#true} is VALID [2022-04-28 07:22:42,308 INFO L290 TraceCheckUtils]: 2: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 07:22:42,308 INFO L290 TraceCheckUtils]: 1: Hoare triple {1825#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1825#true} is VALID [2022-04-28 07:22:42,308 INFO L272 TraceCheckUtils]: 0: Hoare triple {1825#true} call ULTIMATE.init(); {1825#true} is VALID [2022-04-28 07:22:42,308 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 07:22:42,309 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:22:42,309 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [870149685] [2022-04-28 07:22:42,309 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:22:42,309 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2010251948] [2022-04-28 07:22:42,309 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2010251948] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:22:42,309 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:22:42,309 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-28 07:22:42,310 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:22:42,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1134727535] [2022-04-28 07:22:42,310 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1134727535] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:22:42,310 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:22:42,310 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 07:22:42,310 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [737913413] [2022-04-28 07:22:42,310 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:22:42,310 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-28 07:22:42,311 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:22:42,311 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:22:42,337 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:22:42,338 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 07:22:42,338 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:22:42,338 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 07:22:42,338 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=101, Unknown=0, NotChecked=0, Total=132 [2022-04-28 07:22:42,338 INFO L87 Difference]: Start difference. First operand 61 states and 76 transitions. Second operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:22:43,023 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:43,023 INFO L93 Difference]: Finished difference Result 76 states and 96 transitions. [2022-04-28 07:22:43,023 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 07:22:43,023 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-28 07:22:43,024 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:22:43,024 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:22:43,025 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-28 07:22:43,025 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:22:43,027 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-28 07:22:43,027 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 68 transitions. [2022-04-28 07:22:43,087 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:22:43,089 INFO L225 Difference]: With dead ends: 76 [2022-04-28 07:22:43,089 INFO L226 Difference]: Without dead ends: 74 [2022-04-28 07:22:43,089 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 42 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=138, Unknown=0, NotChecked=0, Total=182 [2022-04-28 07:22:43,090 INFO L413 NwaCegarLoop]: 25 mSDtfsCounter, 24 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 197 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 202 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 197 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 07:22:43,090 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [27 Valid, 126 Invalid, 202 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 197 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 07:22:43,091 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-28 07:22:43,159 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 68. [2022-04-28 07:22:43,160 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:22:43,160 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:22:43,160 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:22:43,161 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:22:43,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:43,168 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-28 07:22:43,168 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-28 07:22:43,168 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:22:43,169 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:22:43,170 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-28 07:22:43,171 INFO L87 Difference]: Start difference. First operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-28 07:22:43,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:43,175 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-28 07:22:43,175 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-28 07:22:43,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:22:43,175 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:22:43,175 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:22:43,175 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:22:43,176 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:22:43,179 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 83 transitions. [2022-04-28 07:22:43,179 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 83 transitions. Word has length 27 [2022-04-28 07:22:43,179 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:22:43,180 INFO L495 AbstractCegarLoop]: Abstraction has 68 states and 83 transitions. [2022-04-28 07:22:43,180 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:22:43,180 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 83 transitions. [2022-04-28 07:22:45,282 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 82 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:22:45,282 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 83 transitions. [2022-04-28 07:22:45,282 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 07:22:45,282 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:22:45,282 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:22:45,305 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 07:22:45,483 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:22:45,483 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:22:45,484 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:22:45,484 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 1 times [2022-04-28 07:22:45,484 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:22:45,484 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1113763865] [2022-04-28 07:22:45,484 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:22:45,485 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 2 times [2022-04-28 07:22:45,485 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:22:45,485 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1666682162] [2022-04-28 07:22:45,485 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:22:45,485 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:22:45,495 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:22:45,496 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1303376403] [2022-04-28 07:22:45,496 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:22:45,496 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:22:45,496 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:22:45,498 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:22:45,499 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:22:45,555 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:22:45,555 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:22:45,556 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 07:22:45,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:22:45,568 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:22:45,737 INFO L272 TraceCheckUtils]: 0: Hoare triple {2438#true} call ULTIMATE.init(); {2438#true} is VALID [2022-04-28 07:22:45,738 INFO L290 TraceCheckUtils]: 1: Hoare triple {2438#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2438#true} is VALID [2022-04-28 07:22:45,738 INFO L290 TraceCheckUtils]: 2: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-28 07:22:45,738 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2438#true} {2438#true} #77#return; {2438#true} is VALID [2022-04-28 07:22:45,738 INFO L272 TraceCheckUtils]: 4: Hoare triple {2438#true} call #t~ret7 := main(); {2438#true} is VALID [2022-04-28 07:22:45,738 INFO L290 TraceCheckUtils]: 5: Hoare triple {2438#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2438#true} is VALID [2022-04-28 07:22:45,738 INFO L272 TraceCheckUtils]: 6: Hoare triple {2438#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2438#true} is VALID [2022-04-28 07:22:45,739 INFO L290 TraceCheckUtils]: 7: Hoare triple {2438#true} ~cond := #in~cond; {2464#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:22:45,740 INFO L290 TraceCheckUtils]: 8: Hoare triple {2464#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:22:45,740 INFO L290 TraceCheckUtils]: 9: Hoare triple {2468#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:22:45,741 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2468#(not (= |assume_abort_if_not_#in~cond| 0))} {2438#true} #69#return; {2475#(<= 1 main_~y~0)} is VALID [2022-04-28 07:22:45,741 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2479#(<= 1 main_~b~0)} is VALID [2022-04-28 07:22:45,741 INFO L290 TraceCheckUtils]: 12: Hoare triple {2479#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2479#(<= 1 main_~b~0)} is VALID [2022-04-28 07:22:45,742 INFO L290 TraceCheckUtils]: 13: Hoare triple {2479#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2479#(<= 1 main_~b~0)} is VALID [2022-04-28 07:22:45,742 INFO L272 TraceCheckUtils]: 14: Hoare triple {2479#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2438#true} is VALID [2022-04-28 07:22:45,742 INFO L290 TraceCheckUtils]: 15: Hoare triple {2438#true} ~cond := #in~cond; {2438#true} is VALID [2022-04-28 07:22:45,742 INFO L290 TraceCheckUtils]: 16: Hoare triple {2438#true} assume !(0 == ~cond); {2438#true} is VALID [2022-04-28 07:22:45,742 INFO L290 TraceCheckUtils]: 17: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-28 07:22:45,743 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2438#true} {2479#(<= 1 main_~b~0)} #71#return; {2479#(<= 1 main_~b~0)} is VALID [2022-04-28 07:22:45,743 INFO L290 TraceCheckUtils]: 19: Hoare triple {2479#(<= 1 main_~b~0)} assume !(0 != ~a~0 && 0 != ~b~0); {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 07:22:45,744 INFO L272 TraceCheckUtils]: 20: Hoare triple {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {2438#true} is VALID [2022-04-28 07:22:45,744 INFO L290 TraceCheckUtils]: 21: Hoare triple {2438#true} ~cond := #in~cond; {2438#true} is VALID [2022-04-28 07:22:45,744 INFO L290 TraceCheckUtils]: 22: Hoare triple {2438#true} assume !(0 == ~cond); {2438#true} is VALID [2022-04-28 07:22:45,744 INFO L290 TraceCheckUtils]: 23: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-28 07:22:45,745 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2438#true} {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} #73#return; {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 07:22:45,745 INFO L272 TraceCheckUtils]: 25: Hoare triple {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {2523#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:22:45,746 INFO L290 TraceCheckUtils]: 26: Hoare triple {2523#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2527#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:22:45,746 INFO L290 TraceCheckUtils]: 27: Hoare triple {2527#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2439#false} is VALID [2022-04-28 07:22:45,746 INFO L290 TraceCheckUtils]: 28: Hoare triple {2439#false} assume !false; {2439#false} is VALID [2022-04-28 07:22:45,746 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 07:22:45,746 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:22:45,746 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:22:45,747 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1666682162] [2022-04-28 07:22:45,747 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:22:45,747 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1303376403] [2022-04-28 07:22:45,747 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1303376403] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:22:45,747 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:22:45,747 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 07:22:45,747 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:22:45,747 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1113763865] [2022-04-28 07:22:45,747 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1113763865] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:22:45,747 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:22:45,748 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 07:22:45,748 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1763465478] [2022-04-28 07:22:45,748 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:22:45,748 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-28 07:22:45,748 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:22:45,748 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:22:45,770 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:22:45,770 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 07:22:45,770 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:22:45,770 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 07:22:45,770 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-28 07:22:45,770 INFO L87 Difference]: Start difference. First operand 68 states and 83 transitions. Second operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:22:46,178 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:46,179 INFO L93 Difference]: Finished difference Result 85 states and 107 transitions. [2022-04-28 07:22:46,179 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 07:22:46,179 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-28 07:22:46,179 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:22:46,179 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:22:46,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-28 07:22:46,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:22:46,182 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-28 07:22:46,182 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 57 transitions. [2022-04-28 07:22:46,244 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:22:46,245 INFO L225 Difference]: With dead ends: 85 [2022-04-28 07:22:46,245 INFO L226 Difference]: Without dead ends: 65 [2022-04-28 07:22:46,246 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-28 07:22:46,246 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 33 mSDsluCounter, 131 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 131 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 07:22:46,247 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 157 Invalid, 131 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 07:22:46,247 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-28 07:22:46,316 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 62. [2022-04-28 07:22:46,317 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:22:46,317 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:22:46,317 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:22:46,317 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:22:46,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:46,320 INFO L93 Difference]: Finished difference Result 65 states and 85 transitions. [2022-04-28 07:22:46,320 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 85 transitions. [2022-04-28 07:22:46,320 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:22:46,320 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:22:46,321 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-28 07:22:46,321 INFO L87 Difference]: Start difference. First operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-28 07:22:46,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:22:46,323 INFO L93 Difference]: Finished difference Result 65 states and 85 transitions. [2022-04-28 07:22:46,323 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 85 transitions. [2022-04-28 07:22:46,323 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:22:46,323 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:22:46,323 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:22:46,323 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:22:46,324 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:22:46,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 80 transitions. [2022-04-28 07:22:46,326 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 80 transitions. Word has length 29 [2022-04-28 07:22:46,326 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:22:46,326 INFO L495 AbstractCegarLoop]: Abstraction has 62 states and 80 transitions. [2022-04-28 07:22:46,326 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:22:46,326 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 62 states and 80 transitions. [2022-04-28 07:22:48,420 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 79 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:22:48,420 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 80 transitions. [2022-04-28 07:22:48,421 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 07:22:48,421 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:22:48,421 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:22:48,441 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 07:22:48,623 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:22:48,623 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:22:48,624 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:22:48,624 INFO L85 PathProgramCache]: Analyzing trace with hash -1357155568, now seen corresponding path program 1 times [2022-04-28 07:22:48,624 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:22:48,624 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1097566320] [2022-04-28 07:22:53,026 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:22:53,088 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:22:53,142 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:22:57,503 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:22:57,577 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:23:02,540 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:23:02,541 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 07:23:02,545 INFO L85 PathProgramCache]: Analyzing trace with hash 1724905837, now seen corresponding path program 1 times [2022-04-28 07:23:02,545 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:23:02,545 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [917095104] [2022-04-28 07:23:02,545 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:23:02,545 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:23:02,572 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:23:02,572 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1532094762] [2022-04-28 07:23:02,572 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:23:02,573 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:23:02,573 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:23:02,575 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:23:02,576 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:23:02,682 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:23:02,684 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 47 conjunts are in the unsatisfiable core [2022-04-28 07:23:02,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:23:02,710 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:23:04,727 INFO L272 TraceCheckUtils]: 0: Hoare triple {2965#true} call ULTIMATE.init(); {2965#true} is VALID [2022-04-28 07:23:04,728 INFO L290 TraceCheckUtils]: 1: Hoare triple {2965#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:23:04,731 INFO L290 TraceCheckUtils]: 2: Hoare triple {2973#(= ~counter~0 0)} assume true; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:23:04,732 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2973#(= ~counter~0 0)} {2965#true} #77#return; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:23:04,732 INFO L272 TraceCheckUtils]: 4: Hoare triple {2973#(= ~counter~0 0)} call #t~ret7 := main(); {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:23:04,733 INFO L290 TraceCheckUtils]: 5: Hoare triple {2973#(= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:23:04,733 INFO L272 TraceCheckUtils]: 6: Hoare triple {2973#(= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:23:04,734 INFO L290 TraceCheckUtils]: 7: Hoare triple {2973#(= ~counter~0 0)} ~cond := #in~cond; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:23:04,734 INFO L290 TraceCheckUtils]: 8: Hoare triple {2973#(= ~counter~0 0)} assume !(0 == ~cond); {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:23:04,734 INFO L290 TraceCheckUtils]: 9: Hoare triple {2973#(= ~counter~0 0)} assume true; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:23:04,735 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2973#(= ~counter~0 0)} {2973#(= ~counter~0 0)} #69#return; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:23:04,736 INFO L290 TraceCheckUtils]: 11: Hoare triple {2973#(= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,736 INFO L290 TraceCheckUtils]: 12: Hoare triple {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [81] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_17| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_17|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,737 INFO L290 TraceCheckUtils]: 13: Hoare triple {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [82] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,737 INFO L290 TraceCheckUtils]: 14: Hoare triple {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [83] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_20| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_20|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,738 INFO L290 TraceCheckUtils]: 15: Hoare triple {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [84] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,739 INFO L290 TraceCheckUtils]: 16: Hoare triple {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [85] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_23| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_23|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,739 INFO L290 TraceCheckUtils]: 17: Hoare triple {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [86] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,741 INFO L290 TraceCheckUtils]: 18: Hoare triple {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [87] L46-2-->L33-1_primed: Formula: (let ((.cse0 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse1 (= v_~counter~0_29 v_~counter~0_28)) (.cse2 (= |v_main_#t~post6_26| |v_main_#t~post6_15|)) (.cse3 (= v_main_~a~0_38 v_main_~a~0_37)) (.cse6 (< v_~counter~0_29 50)) (.cse5 (= 0 v_main_~b~0_37)) (.cse4 (= (mod v_main_~b~0_37 2) 0)) (.cse8 (= (* v_main_~x~0_22 v_main_~y~0_26) (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (.cse7 (<= 0 v_main_~a~0_38))) (or (and .cse0 (= v_main_~p~0_29 v_main_~p~0_29) (= v_main_~b~0_37 v_main_~b~0_37) .cse1 .cse2 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse3) (and .cse0 (or (not .cse4) .cse5 (not .cse6) (not .cse7) (not (= (mod v_main_~a~0_38 2) 1)) (not .cse8)) .cse1 .cse2 .cse3) (and .cse6 (not .cse5) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_~counter~0_29 v_main_~b~0_37)) (+ v_main_~q~0_28 (* v_main_~p~0_29 v_~counter~0_28 v_main_~b~0_37))) .cse4 (< v_~counter~0_29 v_~counter~0_28) .cse8 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) (<= (div (+ v_~counter~0_29 (* (- 1) v_main_~a~0_38) (* (- 1) v_~counter~0_28)) (- 2)) (+ (div (+ (- 1) v_main_~a~0_38) 2) 1)) .cse7))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_26|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3026#(and (or (and (<= (div (+ (* ~counter~0 (- 1)) (* (- 1) main_~x~0)) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1)) (= (+ ~counter~0 main_~a~0) main_~x~0) (<= 0 main_~x~0) (= (* ~counter~0 main_~b~0 main_~p~0) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (= (mod main_~b~0 2) 0) (< 0 ~counter~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,742 INFO L290 TraceCheckUtils]: 19: Hoare triple {3026#(and (or (and (<= (div (+ (* ~counter~0 (- 1)) (* (- 1) main_~x~0)) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1)) (= (+ ~counter~0 main_~a~0) main_~x~0) (<= 0 main_~x~0) (= (* ~counter~0 main_~b~0 main_~p~0) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (= (mod main_~b~0 2) 0) (< 0 ~counter~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [88] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3026#(and (or (and (<= (div (+ (* ~counter~0 (- 1)) (* (- 1) main_~x~0)) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1)) (= (+ ~counter~0 main_~a~0) main_~x~0) (<= 0 main_~x~0) (= (* ~counter~0 main_~b~0 main_~p~0) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (= (mod main_~b~0 2) 0) (< 0 ~counter~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,743 INFO L290 TraceCheckUtils]: 20: Hoare triple {3026#(and (or (and (<= (div (+ (* ~counter~0 (- 1)) (* (- 1) main_~x~0)) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1)) (= (+ ~counter~0 main_~a~0) main_~x~0) (<= 0 main_~x~0) (= (* ~counter~0 main_~b~0 main_~p~0) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (= (mod main_~b~0 2) 0) (< 0 ~counter~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [89] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_29| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_29|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3026#(and (or (and (<= (div (+ (* ~counter~0 (- 1)) (* (- 1) main_~x~0)) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1)) (= (+ ~counter~0 main_~a~0) main_~x~0) (<= 0 main_~x~0) (= (* ~counter~0 main_~b~0 main_~p~0) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (= (mod main_~b~0 2) 0) (< 0 ~counter~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,744 INFO L290 TraceCheckUtils]: 21: Hoare triple {3026#(and (or (and (<= (div (+ (* ~counter~0 (- 1)) (* (- 1) main_~x~0)) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1)) (= (+ ~counter~0 main_~a~0) main_~x~0) (<= 0 main_~x~0) (= (* ~counter~0 main_~b~0 main_~p~0) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (= (mod main_~b~0 2) 0) (< 0 ~counter~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [90] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3026#(and (or (and (<= (div (+ (* ~counter~0 (- 1)) (* (- 1) main_~x~0)) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1)) (= (+ ~counter~0 main_~a~0) main_~x~0) (<= 0 main_~x~0) (= (* ~counter~0 main_~b~0 main_~p~0) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (= (mod main_~b~0 2) 0) (< 0 ~counter~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,755 INFO L290 TraceCheckUtils]: 22: Hoare triple {3026#(and (or (and (<= (div (+ (* ~counter~0 (- 1)) (* (- 1) main_~x~0)) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1)) (= (+ ~counter~0 main_~a~0) main_~x~0) (<= 0 main_~x~0) (= (* ~counter~0 main_~b~0 main_~p~0) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (= (mod main_~b~0 2) 0) (< 0 ~counter~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [91] L46-2-->L33-1_primed: Formula: (let ((.cse0 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse1 (= |v_main_#t~post6_32| |v_main_#t~post6_15|)) (.cse2 (= v_~counter~0_29 v_~counter~0_28)) (.cse3 (= v_main_~a~0_38 v_main_~a~0_37)) (.cse6 (< v_~counter~0_29 50)) (.cse5 (= 0 v_main_~b~0_37)) (.cse4 (= (mod v_main_~b~0_37 2) 0)) (.cse8 (= (* v_main_~x~0_22 v_main_~y~0_26) (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (.cse7 (<= 0 v_main_~a~0_38))) (or (and .cse0 (= v_main_~p~0_29 v_main_~p~0_29) .cse1 (= v_main_~b~0_37 v_main_~b~0_37) .cse2 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse3) (and .cse0 .cse1 (or (not .cse4) .cse5 (not .cse6) (not .cse7) (not (= (mod v_main_~a~0_38 2) 1)) (not .cse8)) .cse2 .cse3) (and .cse6 (not .cse5) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_~counter~0_29 v_main_~b~0_37)) (+ v_main_~q~0_28 (* v_main_~p~0_29 v_~counter~0_28 v_main_~b~0_37))) .cse4 (< v_~counter~0_29 v_~counter~0_28) .cse8 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) (<= (div (+ v_~counter~0_29 (* (- 1) v_main_~a~0_38) (* (- 1) v_~counter~0_28)) (- 2)) (+ (div (+ (- 1) v_main_~a~0_38) 2) 1)) .cse7))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_32|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3039#(and (or (and (<= (+ (div main_~a~0 (- 2)) main_~x~0) (+ (div (+ (- 1) main_~x~0) 2) 1)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (= main_~q~0 (+ (* main_~b~0 main_~p~0 main_~x~0) (* (- 1) main_~b~0 main_~a~0 main_~p~0)))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,756 INFO L290 TraceCheckUtils]: 23: Hoare triple {3039#(and (or (and (<= (+ (div main_~a~0 (- 2)) main_~x~0) (+ (div (+ (- 1) main_~x~0) 2) 1)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (= main_~q~0 (+ (* main_~b~0 main_~p~0 main_~x~0) (* (- 1) main_~b~0 main_~a~0 main_~p~0)))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [80] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3039#(and (or (and (<= (+ (div main_~a~0 (- 2)) main_~x~0) (+ (div (+ (- 1) main_~x~0) 2) 1)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (= main_~q~0 (+ (* main_~b~0 main_~p~0 main_~x~0) (* (- 1) main_~b~0 main_~a~0 main_~p~0)))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,757 INFO L290 TraceCheckUtils]: 24: Hoare triple {3039#(and (or (and (<= (+ (div main_~a~0 (- 2)) main_~x~0) (+ (div (+ (- 1) main_~x~0) 2) 1)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (= main_~q~0 (+ (* main_~b~0 main_~p~0 main_~x~0) (* (- 1) main_~b~0 main_~a~0 main_~p~0)))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {3039#(and (or (and (<= (+ (div main_~a~0 (- 2)) main_~x~0) (+ (div (+ (- 1) main_~x~0) 2) 1)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (= main_~q~0 (+ (* main_~b~0 main_~p~0 main_~x~0) (* (- 1) main_~b~0 main_~a~0 main_~p~0)))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-28 07:23:04,759 INFO L272 TraceCheckUtils]: 25: Hoare triple {3039#(and (or (and (<= (+ (div main_~a~0 (- 2)) main_~x~0) (+ (div (+ (- 1) main_~x~0) 2) 1)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (= main_~q~0 (+ (* main_~b~0 main_~p~0 main_~x~0) (* (- 1) main_~b~0 main_~a~0 main_~p~0)))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~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)); {3049#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:23:04,759 INFO L290 TraceCheckUtils]: 26: Hoare triple {3049#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3053#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:23:04,759 INFO L290 TraceCheckUtils]: 27: Hoare triple {3053#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2966#false} is VALID [2022-04-28 07:23:04,759 INFO L290 TraceCheckUtils]: 28: Hoare triple {2966#false} assume !false; {2966#false} is VALID [2022-04-28 07:23:04,760 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 19 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-28 07:23:04,760 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:23:17,347 INFO L290 TraceCheckUtils]: 28: Hoare triple {2966#false} assume !false; {2966#false} is VALID [2022-04-28 07:23:17,348 INFO L290 TraceCheckUtils]: 27: Hoare triple {3053#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2966#false} is VALID [2022-04-28 07:23:17,349 INFO L290 TraceCheckUtils]: 26: Hoare triple {3049#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3053#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:23:17,350 INFO L272 TraceCheckUtils]: 25: Hoare triple {3069#(= (+ 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)); {3049#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:23:17,350 INFO L290 TraceCheckUtils]: 24: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,351 INFO L290 TraceCheckUtils]: 23: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [80] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,370 INFO L290 TraceCheckUtils]: 22: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [91] L46-2-->L33-1_primed: Formula: (let ((.cse0 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse1 (= |v_main_#t~post6_32| |v_main_#t~post6_15|)) (.cse2 (= v_~counter~0_29 v_~counter~0_28)) (.cse3 (= v_main_~a~0_38 v_main_~a~0_37)) (.cse6 (< v_~counter~0_29 50)) (.cse5 (= 0 v_main_~b~0_37)) (.cse4 (= (mod v_main_~b~0_37 2) 0)) (.cse8 (= (* v_main_~x~0_22 v_main_~y~0_26) (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (.cse7 (<= 0 v_main_~a~0_38))) (or (and .cse0 (= v_main_~p~0_29 v_main_~p~0_29) .cse1 (= v_main_~b~0_37 v_main_~b~0_37) .cse2 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse3) (and .cse0 .cse1 (or (not .cse4) .cse5 (not .cse6) (not .cse7) (not (= (mod v_main_~a~0_38 2) 1)) (not .cse8)) .cse2 .cse3) (and .cse6 (not .cse5) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_~counter~0_29 v_main_~b~0_37)) (+ v_main_~q~0_28 (* v_main_~p~0_29 v_~counter~0_28 v_main_~b~0_37))) .cse4 (< v_~counter~0_29 v_~counter~0_28) .cse8 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) (<= (div (+ v_~counter~0_29 (* (- 1) v_main_~a~0_38) (* (- 1) v_~counter~0_28)) (- 2)) (+ (div (+ (- 1) v_main_~a~0_38) 2) 1)) .cse7))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_32|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,371 INFO L290 TraceCheckUtils]: 21: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [90] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,371 INFO L290 TraceCheckUtils]: 20: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [89] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_29| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_29|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,372 INFO L290 TraceCheckUtils]: 19: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [88] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,387 INFO L290 TraceCheckUtils]: 18: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [87] L46-2-->L33-1_primed: Formula: (let ((.cse0 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse1 (= v_~counter~0_29 v_~counter~0_28)) (.cse2 (= |v_main_#t~post6_26| |v_main_#t~post6_15|)) (.cse3 (= v_main_~a~0_38 v_main_~a~0_37)) (.cse6 (< v_~counter~0_29 50)) (.cse5 (= 0 v_main_~b~0_37)) (.cse4 (= (mod v_main_~b~0_37 2) 0)) (.cse8 (= (* v_main_~x~0_22 v_main_~y~0_26) (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (.cse7 (<= 0 v_main_~a~0_38))) (or (and .cse0 (= v_main_~p~0_29 v_main_~p~0_29) (= v_main_~b~0_37 v_main_~b~0_37) .cse1 .cse2 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse3) (and .cse0 (or (not .cse4) .cse5 (not .cse6) (not .cse7) (not (= (mod v_main_~a~0_38 2) 1)) (not .cse8)) .cse1 .cse2 .cse3) (and .cse6 (not .cse5) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_~counter~0_29 v_main_~b~0_37)) (+ v_main_~q~0_28 (* v_main_~p~0_29 v_~counter~0_28 v_main_~b~0_37))) .cse4 (< v_~counter~0_29 v_~counter~0_28) .cse8 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) (<= (div (+ v_~counter~0_29 (* (- 1) v_main_~a~0_38) (* (- 1) v_~counter~0_28)) (- 2)) (+ (div (+ (- 1) v_main_~a~0_38) 2) 1)) .cse7))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_26|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,387 INFO L290 TraceCheckUtils]: 17: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [86] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,388 INFO L290 TraceCheckUtils]: 16: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [85] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_23| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_23|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,388 INFO L290 TraceCheckUtils]: 15: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [84] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,389 INFO L290 TraceCheckUtils]: 14: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [83] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_20| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_20|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,389 INFO L290 TraceCheckUtils]: 13: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [82] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,390 INFO L290 TraceCheckUtils]: 12: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [81] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_17| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_17|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,390 INFO L290 TraceCheckUtils]: 11: Hoare triple {2965#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:23:17,391 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2965#true} {2965#true} #69#return; {2965#true} is VALID [2022-04-28 07:23:17,391 INFO L290 TraceCheckUtils]: 9: Hoare triple {2965#true} assume true; {2965#true} is VALID [2022-04-28 07:23:17,391 INFO L290 TraceCheckUtils]: 8: Hoare triple {2965#true} assume !(0 == ~cond); {2965#true} is VALID [2022-04-28 07:23:17,391 INFO L290 TraceCheckUtils]: 7: Hoare triple {2965#true} ~cond := #in~cond; {2965#true} is VALID [2022-04-28 07:23:17,391 INFO L272 TraceCheckUtils]: 6: Hoare triple {2965#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2965#true} is VALID [2022-04-28 07:23:17,391 INFO L290 TraceCheckUtils]: 5: Hoare triple {2965#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2965#true} is VALID [2022-04-28 07:23:17,391 INFO L272 TraceCheckUtils]: 4: Hoare triple {2965#true} call #t~ret7 := main(); {2965#true} is VALID [2022-04-28 07:23:17,391 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2965#true} {2965#true} #77#return; {2965#true} is VALID [2022-04-28 07:23:17,391 INFO L290 TraceCheckUtils]: 2: Hoare triple {2965#true} assume true; {2965#true} is VALID [2022-04-28 07:23:17,392 INFO L290 TraceCheckUtils]: 1: Hoare triple {2965#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2965#true} is VALID [2022-04-28 07:23:17,392 INFO L272 TraceCheckUtils]: 0: Hoare triple {2965#true} call ULTIMATE.init(); {2965#true} is VALID [2022-04-28 07:23:17,392 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-28 07:23:17,392 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:23:17,392 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [917095104] [2022-04-28 07:23:17,392 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:23:17,392 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1532094762] [2022-04-28 07:23:17,392 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1532094762] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 07:23:17,392 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 07:23:17,393 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-28 07:23:17,926 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:23:17,926 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1097566320] [2022-04-28 07:23:17,927 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1097566320] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:23:17,927 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:23:17,927 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 07:23:17,927 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1530464388] [2022-04-28 07:23:17,927 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:23:17,927 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-28 07:23:17,928 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:23:17,928 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:23:17,962 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:23:17,962 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 07:23:17,962 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:23:17,963 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 07:23:17,963 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=189, Unknown=0, NotChecked=0, Total=240 [2022-04-28 07:23:17,963 INFO L87 Difference]: Start difference. First operand 62 states and 80 transitions. Second operand has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:23:19,027 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:23:19,027 INFO L93 Difference]: Finished difference Result 73 states and 91 transitions. [2022-04-28 07:23:19,027 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 07:23:19,028 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-28 07:23:19,028 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:23:19,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:23:19,029 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 44 transitions. [2022-04-28 07:23:19,029 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:23:19,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 44 transitions. [2022-04-28 07:23:19,030 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 44 transitions. [2022-04-28 07:23:19,097 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:23:19,099 INFO L225 Difference]: With dead ends: 73 [2022-04-28 07:23:19,099 INFO L226 Difference]: Without dead ends: 71 [2022-04-28 07:23:19,099 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 52 SyntacticMatches, 4 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 72 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=51, Invalid=189, Unknown=0, NotChecked=0, Total=240 [2022-04-28 07:23:19,100 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 12 mSDsluCounter, 86 mSDsCounter, 0 mSdLazyCounter, 163 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 173 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 163 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 07:23:19,100 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 108 Invalid, 173 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 163 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 07:23:19,100 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-28 07:23:19,203 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 66. [2022-04-28 07:23:19,204 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:23:19,204 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:23:19,204 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:23:19,204 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:23:19,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:23:19,207 INFO L93 Difference]: Finished difference Result 71 states and 89 transitions. [2022-04-28 07:23:19,207 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-28 07:23:19,207 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:23:19,207 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:23:19,207 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 71 states. [2022-04-28 07:23:19,215 INFO L87 Difference]: Start difference. First operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 71 states. [2022-04-28 07:23:19,217 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:23:19,217 INFO L93 Difference]: Finished difference Result 71 states and 89 transitions. [2022-04-28 07:23:19,217 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-28 07:23:19,217 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:23:19,218 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:23:19,218 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:23:19,218 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:23:19,218 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:23:19,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 83 transitions. [2022-04-28 07:23:19,220 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 83 transitions. Word has length 28 [2022-04-28 07:23:19,220 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:23:19,220 INFO L495 AbstractCegarLoop]: Abstraction has 66 states and 83 transitions. [2022-04-28 07:23:19,220 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 07:23:19,220 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 66 states and 83 transitions. [2022-04-28 07:23:21,418 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 82 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:23:21,418 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 83 transitions. [2022-04-28 07:23:21,419 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 07:23:21,419 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:23:21,419 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:23:21,435 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-28 07:23:21,619 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:23:21,620 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:23:21,620 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:23:21,620 INFO L85 PathProgramCache]: Analyzing trace with hash 1680888588, now seen corresponding path program 1 times [2022-04-28 07:23:21,620 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:23:21,620 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1158783790] [2022-04-28 07:23:27,687 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-28 07:23:27,688 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-28 07:23:27,688 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 07:23:27,688 INFO L85 PathProgramCache]: Analyzing trace with hash 1680888588, now seen corresponding path program 2 times [2022-04-28 07:23:27,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:23:27,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1694017706] [2022-04-28 07:23:27,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:23:27,688 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:23:27,713 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:23:27,713 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2011467117] [2022-04-28 07:23:27,713 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:23:27,713 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:23:27,713 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:23:27,720 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 07:23:27,745 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 07:23:27,775 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:23:27,775 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:23:27,776 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 07:23:27,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:23:27,795 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:23:28,159 INFO L272 TraceCheckUtils]: 0: Hoare triple {3574#true} call ULTIMATE.init(); {3574#true} is VALID [2022-04-28 07:23:28,159 INFO L290 TraceCheckUtils]: 1: Hoare triple {3574#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3574#true} is VALID [2022-04-28 07:23:28,159 INFO L290 TraceCheckUtils]: 2: Hoare triple {3574#true} assume true; {3574#true} is VALID [2022-04-28 07:23:28,159 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3574#true} {3574#true} #77#return; {3574#true} is VALID [2022-04-28 07:23:28,159 INFO L272 TraceCheckUtils]: 4: Hoare triple {3574#true} call #t~ret7 := main(); {3574#true} is VALID [2022-04-28 07:23:28,159 INFO L290 TraceCheckUtils]: 5: Hoare triple {3574#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3574#true} is VALID [2022-04-28 07:23:28,159 INFO L272 TraceCheckUtils]: 6: Hoare triple {3574#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3574#true} is VALID [2022-04-28 07:23:28,166 INFO L290 TraceCheckUtils]: 7: Hoare triple {3574#true} ~cond := #in~cond; {3600#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:23:28,167 INFO L290 TraceCheckUtils]: 8: Hoare triple {3600#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3604#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:23:28,167 INFO L290 TraceCheckUtils]: 9: Hoare triple {3604#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3604#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:23:28,167 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3604#(not (= |assume_abort_if_not_#in~cond| 0))} {3574#true} #69#return; {3611#(<= 1 main_~y~0)} is VALID [2022-04-28 07:23:28,168 INFO L290 TraceCheckUtils]: 11: Hoare triple {3611#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3615#(<= 1 main_~b~0)} is VALID [2022-04-28 07:23:28,168 INFO L290 TraceCheckUtils]: 12: Hoare triple {3615#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3615#(<= 1 main_~b~0)} is VALID [2022-04-28 07:23:28,168 INFO L290 TraceCheckUtils]: 13: Hoare triple {3615#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {3615#(<= 1 main_~b~0)} is VALID [2022-04-28 07:23:28,169 INFO L272 TraceCheckUtils]: 14: Hoare triple {3615#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3574#true} is VALID [2022-04-28 07:23:28,169 INFO L290 TraceCheckUtils]: 15: Hoare triple {3574#true} ~cond := #in~cond; {3574#true} is VALID [2022-04-28 07:23:28,169 INFO L290 TraceCheckUtils]: 16: Hoare triple {3574#true} assume !(0 == ~cond); {3574#true} is VALID [2022-04-28 07:23:28,169 INFO L290 TraceCheckUtils]: 17: Hoare triple {3574#true} assume true; {3574#true} is VALID [2022-04-28 07:23:28,171 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3574#true} {3615#(<= 1 main_~b~0)} #71#return; {3615#(<= 1 main_~b~0)} is VALID [2022-04-28 07:23:28,171 INFO L290 TraceCheckUtils]: 19: Hoare triple {3615#(<= 1 main_~b~0)} assume !!(0 != ~a~0 && 0 != ~b~0); {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 07:23:28,172 INFO L290 TraceCheckUtils]: 20: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 07:23:28,173 INFO L290 TraceCheckUtils]: 21: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 07:23:28,173 INFO L290 TraceCheckUtils]: 22: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume !!(#t~post6 < 50);havoc #t~post6; {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 07:23:28,173 INFO L272 TraceCheckUtils]: 23: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3574#true} is VALID [2022-04-28 07:23:28,173 INFO L290 TraceCheckUtils]: 24: Hoare triple {3574#true} ~cond := #in~cond; {3574#true} is VALID [2022-04-28 07:23:28,173 INFO L290 TraceCheckUtils]: 25: Hoare triple {3574#true} assume !(0 == ~cond); {3574#true} is VALID [2022-04-28 07:23:28,173 INFO L290 TraceCheckUtils]: 26: Hoare triple {3574#true} assume true; {3574#true} is VALID [2022-04-28 07:23:28,174 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {3574#true} {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} #71#return; {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 07:23:28,174 INFO L290 TraceCheckUtils]: 28: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume !(0 != ~a~0 && 0 != ~b~0); {3575#false} is VALID [2022-04-28 07:23:28,174 INFO L272 TraceCheckUtils]: 29: Hoare triple {3575#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {3575#false} is VALID [2022-04-28 07:23:28,174 INFO L290 TraceCheckUtils]: 30: Hoare triple {3575#false} ~cond := #in~cond; {3575#false} is VALID [2022-04-28 07:23:28,175 INFO L290 TraceCheckUtils]: 31: Hoare triple {3575#false} assume 0 == ~cond; {3575#false} is VALID [2022-04-28 07:23:28,175 INFO L290 TraceCheckUtils]: 32: Hoare triple {3575#false} assume !false; {3575#false} is VALID [2022-04-28 07:23:28,175 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 07:23:28,175 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:23:28,175 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:23:28,175 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1694017706] [2022-04-28 07:23:28,175 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:23:28,175 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2011467117] [2022-04-28 07:23:28,175 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2011467117] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:23:28,175 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:23:28,175 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 07:23:28,176 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:23:28,176 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1158783790] [2022-04-28 07:23:28,176 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1158783790] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:23:28,176 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:23:28,176 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 07:23:28,176 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1127514532] [2022-04-28 07:23:28,176 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:23:28,177 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 33 [2022-04-28 07:23:28,177 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:23:28,177 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:23:28,199 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:23:28,199 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 07:23:28,200 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:23:28,200 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 07:23:28,200 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-04-28 07:23:28,200 INFO L87 Difference]: Start difference. First operand 66 states and 83 transitions. Second operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:23:28,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:23:28,579 INFO L93 Difference]: Finished difference Result 82 states and 104 transitions. [2022-04-28 07:23:28,579 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 07:23:28,579 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 33 [2022-04-28 07:23:28,580 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:23:28,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:23:28,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-28 07:23:28,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:23:28,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-28 07:23:28,583 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 65 transitions. [2022-04-28 07:23:28,634 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:23:28,636 INFO L225 Difference]: With dead ends: 82 [2022-04-28 07:23:28,636 INFO L226 Difference]: Without dead ends: 75 [2022-04-28 07:23:28,636 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 26 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-04-28 07:23:28,637 INFO L413 NwaCegarLoop]: 30 mSDtfsCounter, 28 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 90 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 102 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 90 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 07:23:28,637 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [30 Valid, 122 Invalid, 102 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 90 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 07:23:28,637 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2022-04-28 07:23:28,721 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 70. [2022-04-28 07:23:28,722 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:23:28,722 INFO L82 GeneralOperation]: Start isEquivalent. First operand 75 states. Second operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:23:28,722 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:23:28,722 INFO L87 Difference]: Start difference. First operand 75 states. Second operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:23:28,725 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:23:28,725 INFO L93 Difference]: Finished difference Result 75 states and 97 transitions. [2022-04-28 07:23:28,725 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 97 transitions. [2022-04-28 07:23:28,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:23:28,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:23:28,726 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 75 states. [2022-04-28 07:23:28,726 INFO L87 Difference]: Start difference. First operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 75 states. [2022-04-28 07:23:28,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:23:28,728 INFO L93 Difference]: Finished difference Result 75 states and 97 transitions. [2022-04-28 07:23:28,728 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 97 transitions. [2022-04-28 07:23:28,728 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:23:28,729 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:23:28,729 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:23:28,729 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:23:28,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:23:28,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 89 transitions. [2022-04-28 07:23:28,732 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 89 transitions. Word has length 33 [2022-04-28 07:23:28,732 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:23:28,732 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 89 transitions. [2022-04-28 07:23:28,732 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:23:28,732 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 89 transitions. [2022-04-28 07:23:30,927 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 88 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 07:23:30,927 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 89 transitions. [2022-04-28 07:23:30,927 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-28 07:23:30,927 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:23:30,928 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:23:30,946 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 07:23:31,131 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-28 07:23:31,132 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:23:31,133 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:23:31,133 INFO L85 PathProgramCache]: Analyzing trace with hash 368374993, now seen corresponding path program 1 times [2022-04-28 07:23:31,133 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:23:31,134 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [986867417] [2022-04-28 07:23:37,276 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:23:42,171 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:23:42,231 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:23:43,513 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:23:43,575 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:23:43,640 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 07:23:43,640 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 07:23:43,643 INFO L85 PathProgramCache]: Analyzing trace with hash -1745517901, now seen corresponding path program 1 times [2022-04-28 07:23:43,643 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:23:43,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2034804642] [2022-04-28 07:23:43,643 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:23:43,643 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:23:43,654 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:23:43,654 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [217689034] [2022-04-28 07:23:43,654 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:23:43,654 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:23:43,654 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:23:43,660 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 07:23:43,673 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 07:23:43,720 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:23:43,721 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-28 07:23:43,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:23:43,742 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:23:56,629 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 07:23:57,403 INFO L272 TraceCheckUtils]: 0: Hoare triple {4139#true} call ULTIMATE.init(); {4139#true} is VALID [2022-04-28 07:23:57,403 INFO L290 TraceCheckUtils]: 1: Hoare triple {4139#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4139#true} is VALID [2022-04-28 07:23:57,403 INFO L290 TraceCheckUtils]: 2: Hoare triple {4139#true} assume true; {4139#true} is VALID [2022-04-28 07:23:57,403 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4139#true} {4139#true} #77#return; {4139#true} is VALID [2022-04-28 07:23:57,403 INFO L272 TraceCheckUtils]: 4: Hoare triple {4139#true} call #t~ret7 := main(); {4139#true} is VALID [2022-04-28 07:23:57,403 INFO L290 TraceCheckUtils]: 5: Hoare triple {4139#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4139#true} is VALID [2022-04-28 07:23:57,403 INFO L272 TraceCheckUtils]: 6: Hoare triple {4139#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4139#true} is VALID [2022-04-28 07:23:57,404 INFO L290 TraceCheckUtils]: 7: Hoare triple {4139#true} ~cond := #in~cond; {4165#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:23:57,404 INFO L290 TraceCheckUtils]: 8: Hoare triple {4165#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4169#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:23:57,404 INFO L290 TraceCheckUtils]: 9: Hoare triple {4169#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4169#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:23:57,405 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4169#(not (= |assume_abort_if_not_#in~cond| 0))} {4139#true} #69#return; {4176#(<= 1 main_~y~0)} is VALID [2022-04-28 07:23:57,405 INFO L290 TraceCheckUtils]: 11: Hoare triple {4176#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4180#(and (<= 1 main_~p~0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,406 INFO L290 TraceCheckUtils]: 12: Hoare triple {4180#(and (<= 1 main_~p~0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [93] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_53| |v_main_#t~post6_51|) (= v_~counter~0_72 v_~counter~0_71) (= v_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_53|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4180#(and (<= 1 main_~p~0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,406 INFO L290 TraceCheckUtils]: 13: Hoare triple {4180#(and (<= 1 main_~p~0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [94] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4180#(and (<= 1 main_~p~0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,741 INFO L290 TraceCheckUtils]: 14: Hoare triple {4180#(and (<= 1 main_~p~0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [95] L46-2-->L33-1_primed: Formula: (let ((.cse0 (= v_~counter~0_72 v_~counter~0_71)) (.cse1 (= v_main_~b~0_54 v_main_~b~0_53)) (.cse2 (= v_main_~q~0_72 v_main_~q~0_71)) (.cse8 (= |v_main_#t~post6_56| |v_main_#t~post6_51|)) (.cse3 (= (+ v_main_~q~0_72 (* v_main_~p~0_44 v_main_~a~0_83 v_main_~b~0_54)) (* v_main_~x~0_35 v_main_~y~0_39))) (.cse5 (= 0 (mod v_main_~a~0_83 2))) (.cse6 (<= 0 v_main_~b~0_54)) (.cse7 (< v_~counter~0_72 50)) (.cse4 (= 0 v_main_~a~0_83))) (or (and .cse0 .cse1 .cse2 (or (not .cse3) .cse4 (not (= (mod v_main_~b~0_54 2) 1)) (not .cse5) (not .cse6) (not .cse7)) .cse8) (and (= v_main_~a~0_83 v_main_~a~0_83) (= v_main_~y~0_39 v_main_~y~0_39) .cse0 .cse1 .cse2 (= v_main_~p~0_44 v_main_~p~0_44) .cse8 (= v_main_~x~0_35 v_main_~x~0_35)) (and .cse3 .cse5 .cse6 (< v_~counter~0_72 v_~counter~0_71) (= (+ v_~counter~0_72 v_main_~b~0_54) (+ v_~counter~0_71 v_main_~b~0_53)) .cse7 (not .cse4) (<= (div (+ (* (- 1) v_main_~b~0_54) v_~counter~0_72 (* (- 1) v_~counter~0_71)) (- 2)) (+ (div (+ (- 1) v_main_~b~0_54) 2) 1)) (= (+ v_main_~q~0_72 (* v_main_~p~0_44 v_~counter~0_71 v_main_~a~0_83)) (+ v_main_~q~0_71 (* v_main_~p~0_44 v_~counter~0_72 v_main_~a~0_83)))))) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~x~0=v_main_~x~0_35, main_~y~0=v_main_~y~0_39, main_~b~0=v_main_~b~0_54, main_~p~0=v_main_~p~0_44, main_#t~post6=|v_main_#t~post6_56|, main_~a~0=v_main_~a~0_83} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~x~0=v_main_~x~0_35, main_~y~0=v_main_~y~0_39, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_44, main_#t~post6=|v_main_#t~post6_51|, main_~a~0=v_main_~a~0_83} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4190#(and (<= 1 main_~p~0) (or (<= main_~y~0 main_~b~0) (and (= (mod main_~a~0 2) 0) (exists ((aux_mod_v_main_~b~0_74_32 Int) (aux_div_v_main_~b~0_74_32 Int)) (and (<= main_~y~0 (+ aux_mod_v_main_~b~0_74_32 (* 2 aux_div_v_main_~b~0_74_32) 1)) (<= 0 aux_mod_v_main_~b~0_74_32) (<= (div (+ (- 2) (* (- 2) aux_mod_v_main_~b~0_74_32) main_~b~0 (* (- 4) aux_div_v_main_~b~0_74_32)) (- 2)) (+ aux_div_v_main_~b~0_74_32 1)))) (not (= main_~a~0 0)))) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,743 INFO L290 TraceCheckUtils]: 15: Hoare triple {4190#(and (<= 1 main_~p~0) (or (<= main_~y~0 main_~b~0) (and (= (mod main_~a~0 2) 0) (exists ((aux_mod_v_main_~b~0_74_32 Int) (aux_div_v_main_~b~0_74_32 Int)) (and (<= main_~y~0 (+ aux_mod_v_main_~b~0_74_32 (* 2 aux_div_v_main_~b~0_74_32) 1)) (<= 0 aux_mod_v_main_~b~0_74_32) (<= (div (+ (- 2) (* (- 2) aux_mod_v_main_~b~0_74_32) main_~b~0 (* (- 4) aux_div_v_main_~b~0_74_32)) (- 2)) (+ aux_div_v_main_~b~0_74_32 1)))) (not (= main_~a~0 0)))) (<= 1 main_~y~0))} [96] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4190#(and (<= 1 main_~p~0) (or (<= main_~y~0 main_~b~0) (and (= (mod main_~a~0 2) 0) (exists ((aux_mod_v_main_~b~0_74_32 Int) (aux_div_v_main_~b~0_74_32 Int)) (and (<= main_~y~0 (+ aux_mod_v_main_~b~0_74_32 (* 2 aux_div_v_main_~b~0_74_32) 1)) (<= 0 aux_mod_v_main_~b~0_74_32) (<= (div (+ (- 2) (* (- 2) aux_mod_v_main_~b~0_74_32) main_~b~0 (* (- 4) aux_div_v_main_~b~0_74_32)) (- 2)) (+ aux_div_v_main_~b~0_74_32 1)))) (not (= main_~a~0 0)))) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,744 INFO L290 TraceCheckUtils]: 16: Hoare triple {4190#(and (<= 1 main_~p~0) (or (<= main_~y~0 main_~b~0) (and (= (mod main_~a~0 2) 0) (exists ((aux_mod_v_main_~b~0_74_32 Int) (aux_div_v_main_~b~0_74_32 Int)) (and (<= main_~y~0 (+ aux_mod_v_main_~b~0_74_32 (* 2 aux_div_v_main_~b~0_74_32) 1)) (<= 0 aux_mod_v_main_~b~0_74_32) (<= (div (+ (- 2) (* (- 2) aux_mod_v_main_~b~0_74_32) main_~b~0 (* (- 4) aux_div_v_main_~b~0_74_32)) (- 2)) (+ aux_div_v_main_~b~0_74_32 1)))) (not (= main_~a~0 0)))) (<= 1 main_~y~0))} [97] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_59| |v_main_#t~post6_51|) (= v_~counter~0_72 v_~counter~0_71) (= v_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_59|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,745 INFO L290 TraceCheckUtils]: 17: Hoare triple {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} [98] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,747 INFO L290 TraceCheckUtils]: 18: Hoare triple {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} [99] L46-2-->L33-1_primed: Formula: (let ((.cse10 (+ v_main_~q~0_72 (* v_main_~p~0_44 v_main_~a~0_83 v_main_~b~0_54)))) (let ((.cse0 (= v_~counter~0_72 v_~counter~0_71)) (.cse1 (= |v_main_#t~post6_62| |v_main_#t~post6_51|)) (.cse2 (= v_main_~b~0_54 v_main_~b~0_53)) (.cse3 (= v_main_~q~0_72 v_main_~q~0_71)) (.cse4 (= .cse10 (* v_main_~x~0_35 v_main_~y~0_39))) (.cse7 (= 0 (mod v_main_~a~0_83 2))) (.cse6 (= (mod v_main_~b~0_54 2) 1)) (.cse8 (<= 0 v_main_~b~0_54)) (.cse9 (< v_~counter~0_72 50)) (.cse5 (= 0 v_main_~a~0_83))) (or (and (= v_main_~a~0_83 v_main_~a~0_83) (= v_main_~y~0_39 v_main_~y~0_39) .cse0 .cse1 .cse2 .cse3 (= v_main_~p~0_44 v_main_~p~0_44) (= v_main_~x~0_35 v_main_~x~0_35)) (and .cse0 .cse1 .cse2 .cse3 (or (not .cse4) .cse5 (not .cse6) (not .cse7) (not .cse8) (not .cse9))) (and .cse4 .cse7 .cse6 (= .cse10 (+ (* v_main_~p~0_44 v_main_~a~0_83 v_main_~b~0_53) v_main_~q~0_71)) (<= (+ (div v_main_~b~0_53 (- 2)) v_main_~b~0_54) (+ (div v_main_~b~0_54 2) 1)) .cse8 (= (+ v_~counter~0_72 v_main_~b~0_54) (+ v_~counter~0_71 v_main_~b~0_53)) .cse9 (not .cse5) (< v_main_~b~0_53 v_main_~b~0_54))))) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~x~0=v_main_~x~0_35, main_~y~0=v_main_~y~0_39, main_~b~0=v_main_~b~0_54, main_~p~0=v_main_~p~0_44, main_#t~post6=|v_main_#t~post6_62|, main_~a~0=v_main_~a~0_83} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~x~0=v_main_~x~0_35, main_~y~0=v_main_~y~0_39, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_44, main_#t~post6=|v_main_#t~post6_51|, main_~a~0=v_main_~a~0_83} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,748 INFO L290 TraceCheckUtils]: 19: Hoare triple {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} [100] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,748 INFO L290 TraceCheckUtils]: 20: Hoare triple {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} [101] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_65| |v_main_#t~post6_51|) (= v_~counter~0_72 v_~counter~0_71) (= v_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_65|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,749 INFO L290 TraceCheckUtils]: 21: Hoare triple {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} [102] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,750 INFO L290 TraceCheckUtils]: 22: Hoare triple {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} [103] L46-2-->L33-1_primed: Formula: (and (= v_~counter~0_72 v_~counter~0_71) (= |v_main_#t~post6_68| |v_main_#t~post6_51|) (= v_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_68|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,751 INFO L290 TraceCheckUtils]: 23: Hoare triple {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} [92] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,751 INFO L290 TraceCheckUtils]: 24: Hoare triple {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:57,751 INFO L272 TraceCheckUtils]: 25: Hoare triple {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4139#true} is VALID [2022-04-28 07:23:57,752 INFO L290 TraceCheckUtils]: 26: Hoare triple {4139#true} ~cond := #in~cond; {4228#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:23:57,752 INFO L290 TraceCheckUtils]: 27: Hoare triple {4228#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:23:57,753 INFO L290 TraceCheckUtils]: 28: Hoare triple {4232#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:23:59,755 WARN L284 TraceCheckUtils]: 29: Hoare quadruple {4232#(not (= |__VERIFIER_assert_#in~cond| 0))} {4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0))} #71#return; {4239#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (or (and (= main_~a~0 0) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (and (= main_~b~0 0) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (<= 1 (div (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0))) (not (= main_~b~0 0)) (not (= main_~a~0 0)))) (<= 1 main_~y~0))} is UNKNOWN [2022-04-28 07:23:59,757 INFO L290 TraceCheckUtils]: 30: Hoare triple {4239#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (or (and (= main_~a~0 0) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (and (= main_~b~0 0) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (<= 1 (div (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0))) (not (= main_~b~0 0)) (not (= main_~a~0 0)))) (<= 1 main_~y~0))} assume !(0 != ~a~0 && 0 != ~b~0); {4243#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:23:59,757 INFO L272 TraceCheckUtils]: 31: Hoare triple {4243#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4247#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:23:59,762 INFO L290 TraceCheckUtils]: 32: Hoare triple {4247#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4251#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:23:59,762 INFO L290 TraceCheckUtils]: 33: Hoare triple {4251#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4140#false} is VALID [2022-04-28 07:23:59,763 INFO L290 TraceCheckUtils]: 34: Hoare triple {4140#false} assume !false; {4140#false} is VALID [2022-04-28 07:23:59,763 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 1 proven. 14 refuted. 7 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-28 07:23:59,763 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:24:30,804 INFO L290 TraceCheckUtils]: 34: Hoare triple {4140#false} assume !false; {4140#false} is VALID [2022-04-28 07:24:30,805 INFO L290 TraceCheckUtils]: 33: Hoare triple {4251#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4140#false} is VALID [2022-04-28 07:24:30,805 INFO L290 TraceCheckUtils]: 32: Hoare triple {4247#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4251#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:24:30,806 INFO L272 TraceCheckUtils]: 31: Hoare triple {4267#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4247#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:24:30,808 INFO L290 TraceCheckUtils]: 30: Hoare triple {4271#(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); {4267#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:24:30,809 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {4232#(not (= |__VERIFIER_assert_#in~cond| 0))} {4139#true} #71#return; {4271#(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:24:30,810 INFO L290 TraceCheckUtils]: 28: Hoare triple {4232#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:24:30,811 INFO L290 TraceCheckUtils]: 27: Hoare triple {4284#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {4232#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:24:30,812 INFO L290 TraceCheckUtils]: 26: Hoare triple {4139#true} ~cond := #in~cond; {4284#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 07:24:30,812 INFO L272 TraceCheckUtils]: 25: Hoare triple {4139#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4139#true} is VALID [2022-04-28 07:24:30,812 INFO L290 TraceCheckUtils]: 24: Hoare triple {4139#true} assume !!(#t~post6 < 50);havoc #t~post6; {4139#true} is VALID [2022-04-28 07:24:30,812 INFO L290 TraceCheckUtils]: 23: Hoare triple {4139#true} [92] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4139#true} is VALID [2022-04-28 07:24:30,812 INFO L290 TraceCheckUtils]: 22: Hoare triple {4139#true} [103] L46-2-->L33-1_primed: Formula: (and (= v_~counter~0_72 v_~counter~0_71) (= |v_main_#t~post6_68| |v_main_#t~post6_51|) (= v_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_68|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-28 07:24:30,812 INFO L290 TraceCheckUtils]: 21: Hoare triple {4139#true} [102] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4139#true} is VALID [2022-04-28 07:24:30,813 INFO L290 TraceCheckUtils]: 20: Hoare triple {4139#true} [101] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_65| |v_main_#t~post6_51|) (= v_~counter~0_72 v_~counter~0_71) (= v_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_65|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-28 07:24:30,813 INFO L290 TraceCheckUtils]: 19: Hoare triple {4139#true} [100] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4139#true} is VALID [2022-04-28 07:24:30,813 INFO L290 TraceCheckUtils]: 18: Hoare triple {4139#true} [99] L46-2-->L33-1_primed: Formula: (let ((.cse10 (+ v_main_~q~0_72 (* v_main_~p~0_44 v_main_~a~0_83 v_main_~b~0_54)))) (let ((.cse0 (= v_~counter~0_72 v_~counter~0_71)) (.cse1 (= |v_main_#t~post6_62| |v_main_#t~post6_51|)) (.cse2 (= v_main_~b~0_54 v_main_~b~0_53)) (.cse3 (= v_main_~q~0_72 v_main_~q~0_71)) (.cse4 (= .cse10 (* v_main_~x~0_35 v_main_~y~0_39))) (.cse7 (= 0 (mod v_main_~a~0_83 2))) (.cse6 (= (mod v_main_~b~0_54 2) 1)) (.cse8 (<= 0 v_main_~b~0_54)) (.cse9 (< v_~counter~0_72 50)) (.cse5 (= 0 v_main_~a~0_83))) (or (and (= v_main_~a~0_83 v_main_~a~0_83) (= v_main_~y~0_39 v_main_~y~0_39) .cse0 .cse1 .cse2 .cse3 (= v_main_~p~0_44 v_main_~p~0_44) (= v_main_~x~0_35 v_main_~x~0_35)) (and .cse0 .cse1 .cse2 .cse3 (or (not .cse4) .cse5 (not .cse6) (not .cse7) (not .cse8) (not .cse9))) (and .cse4 .cse7 .cse6 (= .cse10 (+ (* v_main_~p~0_44 v_main_~a~0_83 v_main_~b~0_53) v_main_~q~0_71)) (<= (+ (div v_main_~b~0_53 (- 2)) v_main_~b~0_54) (+ (div v_main_~b~0_54 2) 1)) .cse8 (= (+ v_~counter~0_72 v_main_~b~0_54) (+ v_~counter~0_71 v_main_~b~0_53)) .cse9 (not .cse5) (< v_main_~b~0_53 v_main_~b~0_54))))) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~x~0=v_main_~x~0_35, main_~y~0=v_main_~y~0_39, main_~b~0=v_main_~b~0_54, main_~p~0=v_main_~p~0_44, main_#t~post6=|v_main_#t~post6_62|, main_~a~0=v_main_~a~0_83} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~x~0=v_main_~x~0_35, main_~y~0=v_main_~y~0_39, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_44, main_#t~post6=|v_main_#t~post6_51|, main_~a~0=v_main_~a~0_83} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-28 07:24:30,813 INFO L290 TraceCheckUtils]: 17: Hoare triple {4139#true} [98] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4139#true} is VALID [2022-04-28 07:24:30,813 INFO L290 TraceCheckUtils]: 16: Hoare triple {4139#true} [97] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_59| |v_main_#t~post6_51|) (= v_~counter~0_72 v_~counter~0_71) (= v_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_59|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-28 07:24:30,813 INFO L290 TraceCheckUtils]: 15: Hoare triple {4139#true} [96] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4139#true} is VALID [2022-04-28 07:24:30,814 INFO L290 TraceCheckUtils]: 14: Hoare triple {4139#true} [95] L46-2-->L33-1_primed: Formula: (let ((.cse0 (= v_~counter~0_72 v_~counter~0_71)) (.cse1 (= v_main_~b~0_54 v_main_~b~0_53)) (.cse2 (= v_main_~q~0_72 v_main_~q~0_71)) (.cse8 (= |v_main_#t~post6_56| |v_main_#t~post6_51|)) (.cse3 (= (+ v_main_~q~0_72 (* v_main_~p~0_44 v_main_~a~0_83 v_main_~b~0_54)) (* v_main_~x~0_35 v_main_~y~0_39))) (.cse5 (= 0 (mod v_main_~a~0_83 2))) (.cse6 (<= 0 v_main_~b~0_54)) (.cse7 (< v_~counter~0_72 50)) (.cse4 (= 0 v_main_~a~0_83))) (or (and .cse0 .cse1 .cse2 (or (not .cse3) .cse4 (not (= (mod v_main_~b~0_54 2) 1)) (not .cse5) (not .cse6) (not .cse7)) .cse8) (and (= v_main_~a~0_83 v_main_~a~0_83) (= v_main_~y~0_39 v_main_~y~0_39) .cse0 .cse1 .cse2 (= v_main_~p~0_44 v_main_~p~0_44) .cse8 (= v_main_~x~0_35 v_main_~x~0_35)) (and .cse3 .cse5 .cse6 (< v_~counter~0_72 v_~counter~0_71) (= (+ v_~counter~0_72 v_main_~b~0_54) (+ v_~counter~0_71 v_main_~b~0_53)) .cse7 (not .cse4) (<= (div (+ (* (- 1) v_main_~b~0_54) v_~counter~0_72 (* (- 1) v_~counter~0_71)) (- 2)) (+ (div (+ (- 1) v_main_~b~0_54) 2) 1)) (= (+ v_main_~q~0_72 (* v_main_~p~0_44 v_~counter~0_71 v_main_~a~0_83)) (+ v_main_~q~0_71 (* v_main_~p~0_44 v_~counter~0_72 v_main_~a~0_83)))))) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~x~0=v_main_~x~0_35, main_~y~0=v_main_~y~0_39, main_~b~0=v_main_~b~0_54, main_~p~0=v_main_~p~0_44, main_#t~post6=|v_main_#t~post6_56|, main_~a~0=v_main_~a~0_83} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~x~0=v_main_~x~0_35, main_~y~0=v_main_~y~0_39, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_44, main_#t~post6=|v_main_#t~post6_51|, main_~a~0=v_main_~a~0_83} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-28 07:24:30,814 INFO L290 TraceCheckUtils]: 13: Hoare triple {4139#true} [94] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4139#true} is VALID [2022-04-28 07:24:30,814 INFO L290 TraceCheckUtils]: 12: Hoare triple {4139#true} [93] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_53| |v_main_#t~post6_51|) (= v_~counter~0_72 v_~counter~0_71) (= v_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_72, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_53|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_71, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-28 07:24:30,814 INFO L290 TraceCheckUtils]: 11: Hoare triple {4139#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4139#true} is VALID [2022-04-28 07:24:30,814 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4139#true} {4139#true} #69#return; {4139#true} is VALID [2022-04-28 07:24:30,814 INFO L290 TraceCheckUtils]: 9: Hoare triple {4139#true} assume true; {4139#true} is VALID [2022-04-28 07:24:30,814 INFO L290 TraceCheckUtils]: 8: Hoare triple {4139#true} assume !(0 == ~cond); {4139#true} is VALID [2022-04-28 07:24:30,815 INFO L290 TraceCheckUtils]: 7: Hoare triple {4139#true} ~cond := #in~cond; {4139#true} is VALID [2022-04-28 07:24:30,816 INFO L272 TraceCheckUtils]: 6: Hoare triple {4139#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4139#true} is VALID [2022-04-28 07:24:30,816 INFO L290 TraceCheckUtils]: 5: Hoare triple {4139#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4139#true} is VALID [2022-04-28 07:24:30,816 INFO L272 TraceCheckUtils]: 4: Hoare triple {4139#true} call #t~ret7 := main(); {4139#true} is VALID [2022-04-28 07:24:30,817 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4139#true} {4139#true} #77#return; {4139#true} is VALID [2022-04-28 07:24:30,817 INFO L290 TraceCheckUtils]: 2: Hoare triple {4139#true} assume true; {4139#true} is VALID [2022-04-28 07:24:30,817 INFO L290 TraceCheckUtils]: 1: Hoare triple {4139#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4139#true} is VALID [2022-04-28 07:24:30,817 INFO L272 TraceCheckUtils]: 0: Hoare triple {4139#true} call ULTIMATE.init(); {4139#true} is VALID [2022-04-28 07:24:30,819 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-28 07:24:30,819 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:24:30,819 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2034804642] [2022-04-28 07:24:30,819 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:24:30,820 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [217689034] [2022-04-28 07:24:30,820 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [217689034] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:24:30,820 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:24:30,820 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 8] total 17 [2022-04-28 07:24:35,623 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:24:35,623 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [986867417] [2022-04-28 07:24:35,624 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [986867417] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:24:35,624 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:24:35,624 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-28 07:24:35,624 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [313711251] [2022-04-28 07:24:35,624 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:24:35,624 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 18 states have internal predecessors, (25), 4 states have call successors, (6), 3 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 35 [2022-04-28 07:24:35,624 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:24:35,625 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 18 states have internal predecessors, (25), 4 states have call successors, (6), 3 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 07:24:35,629 WARN L143 InductivityCheck]: Transition 4372#(and (= (mod (+ main_~b~0 1) 2) 1) (= (mod main_~a~0 2) 0) (<= 0 (+ main_~b~0 1)) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (< ~counter~0 51) (not (= main_~a~0 0))) ( _ , #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; , 4197#(and (or (and (<= main_~y~0 (+ (* 2 (div (+ (- 2) main_~b~0) 2)) 3)) (= (mod main_~a~0 2) 0) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~p~0) (<= 1 main_~y~0)) ) not inductive [2022-04-28 07:24:35,645 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 07:24:35,829 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 07:24:35,830 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: inductivity failed at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.evaluateResult(InductivityCheck.java:145) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.checkInductivity(InductivityCheck.java:103) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.(InductivityCheck.java:75) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.constructInterpolantAutomaton(BasicCegarLoop.java:335) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.constructRefinementAutomaton(AbstractCegarLoop.java:564) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:437) 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:35,834 INFO L158 Benchmark]: Toolchain (without parser) took 244096.22ms. Allocated memory was 197.1MB in the beginning and 246.4MB in the end (delta: 49.3MB). Free memory was 143.0MB in the beginning and 163.6MB in the end (delta: -20.6MB). Peak memory consumption was 29.2MB. Max. memory is 8.0GB. [2022-04-28 07:24:35,834 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 197.1MB. Free memory is still 159.7MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 07:24:35,834 INFO L158 Benchmark]: CACSL2BoogieTranslator took 242.97ms. Allocated memory is still 197.1MB. Free memory was 142.8MB in the beginning and 167.4MB in the end (delta: -24.7MB). Peak memory consumption was 6.0MB. Max. memory is 8.0GB. [2022-04-28 07:24:35,834 INFO L158 Benchmark]: Boogie Preprocessor took 28.30ms. Allocated memory is still 197.1MB. Free memory was 167.4MB in the beginning and 165.7MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-28 07:24:35,834 INFO L158 Benchmark]: RCFGBuilder took 277.68ms. Allocated memory is still 197.1MB. Free memory was 165.7MB in the beginning and 153.1MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-28 07:24:35,835 INFO L158 Benchmark]: TraceAbstraction took 243542.75ms. Allocated memory was 197.1MB in the beginning and 246.4MB in the end (delta: 49.3MB). Free memory was 152.6MB in the beginning and 163.6MB in the end (delta: -11.0MB). Peak memory consumption was 39.9MB. Max. memory is 8.0GB. [2022-04-28 07:24:35,836 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.10ms. Allocated memory is still 197.1MB. Free memory is still 159.7MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 242.97ms. Allocated memory is still 197.1MB. Free memory was 142.8MB in the beginning and 167.4MB in the end (delta: -24.7MB). Peak memory consumption was 6.0MB. Max. memory is 8.0GB. * Boogie Preprocessor took 28.30ms. Allocated memory is still 197.1MB. Free memory was 167.4MB in the beginning and 165.7MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 277.68ms. Allocated memory is still 197.1MB. Free memory was 165.7MB in the beginning and 153.1MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 243542.75ms. Allocated memory was 197.1MB in the beginning and 246.4MB in the end (delta: 49.3MB). Free memory was 152.6MB in the beginning and 163.6MB in the end (delta: -11.0MB). Peak memory consumption was 39.9MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: inductivity failed de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: inductivity failed: de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.evaluateResult(InductivityCheck.java:145) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-04-28 07:24:35,880 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...