/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_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 07:18:47,095 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 07:18:47,096 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 07:18:47,121 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 07:18:47,121 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 07:18:47,122 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 07:18:47,123 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 07:18:47,130 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 07:18:47,132 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 07:18:47,134 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 07:18:47,135 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 07:18:47,135 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 07:18:47,136 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 07:18:47,136 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 07:18:47,137 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 07:18:47,137 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 07:18:47,138 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 07:18:47,138 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 07:18:47,139 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 07:18:47,140 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 07:18:47,140 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 07:18:47,143 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 07:18:47,144 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 07:18:47,146 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 07:18:47,147 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 07:18:47,155 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 07:18:47,155 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 07:18:47,155 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 07:18:47,155 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 07:18:47,156 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 07:18:47,156 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 07:18:47,156 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 07:18:47,157 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 07:18:47,157 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 07:18:47,157 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 07:18:47,158 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 07:18:47,158 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 07:18:47,158 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 07:18:47,158 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 07:18:47,158 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 07:18:47,159 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 07:18:47,162 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 07:18:47,163 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:18:47,169 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 07:18:47,170 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 07:18:47,170 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 07:18:47,171 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 07:18:47,171 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 07:18:47,171 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 07:18:47,171 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 07:18:47,171 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 07:18:47,171 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 07:18:47,172 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 07:18:47,172 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 07:18:47,172 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 07:18:47,172 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 07:18:47,172 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 07:18:47,172 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 07:18:47,172 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 07:18:47,172 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 07:18:47,172 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 07:18:47,172 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 07:18:47,172 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 07:18:47,173 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 07:18:47,173 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 07:18:47,173 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 07:18:47,173 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 07:18:47,173 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 07:18:47,173 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:18:47,361 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 07:18:47,377 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 07:18:47,378 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 07:18:47,379 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 07:18:47,380 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 07:18:47,381 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c [2022-04-28 07:18:47,425 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a8033d11/c705c4f325ca4ab297eb40cdec58aa0d/FLAG3547c03d8 [2022-04-28 07:18:47,773 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 07:18:47,774 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c [2022-04-28 07:18:47,779 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a8033d11/c705c4f325ca4ab297eb40cdec58aa0d/FLAG3547c03d8 [2022-04-28 07:18:47,789 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a8033d11/c705c4f325ca4ab297eb40cdec58aa0d [2022-04-28 07:18:47,791 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 07:18:47,793 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 07:18:47,795 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 07:18:47,795 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 07:18:47,797 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 07:18:47,800 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 07:18:47" (1/1) ... [2022-04-28 07:18:47,801 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4590c915 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:47, skipping insertion in model container [2022-04-28 07:18:47,801 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 07:18:47" (1/1) ... [2022-04-28 07:18:47,805 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 07:18:47,815 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 07:18:47,970 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_unwindbound20.c[524,537] [2022-04-28 07:18:47,999 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 07:18:48,007 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 07:18:48,016 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_unwindbound20.c[524,537] [2022-04-28 07:18:48,035 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 07:18:48,043 INFO L208 MainTranslator]: Completed translation [2022-04-28 07:18:48,043 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:48 WrapperNode [2022-04-28 07:18:48,043 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 07:18:48,044 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 07:18:48,044 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 07:18:48,044 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 07:18:48,051 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:48" (1/1) ... [2022-04-28 07:18:48,051 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:48" (1/1) ... [2022-04-28 07:18:48,059 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:48" (1/1) ... [2022-04-28 07:18:48,059 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:48" (1/1) ... [2022-04-28 07:18:48,069 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:48" (1/1) ... [2022-04-28 07:18:48,072 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:48" (1/1) ... [2022-04-28 07:18:48,073 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:48" (1/1) ... [2022-04-28 07:18:48,074 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 07:18:48,074 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 07:18:48,074 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 07:18:48,074 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 07:18:48,075 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:48" (1/1) ... [2022-04-28 07:18:48,085 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 07:18:48,092 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:18:48,101 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:18:48,120 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:18:48,138 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 07:18:48,139 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 07:18:48,139 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 07:18:48,139 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 07:18:48,139 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 07:18:48,139 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 07:18:48,140 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 07:18:48,140 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 07:18:48,140 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 07:18:48,140 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 07:18:48,140 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 07:18:48,141 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 07:18:48,142 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 07:18:48,142 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 07:18:48,142 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 07:18:48,142 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 07:18:48,142 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 07:18:48,142 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 07:18:48,142 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 07:18:48,142 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 07:18:48,188 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 07:18:48,189 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 07:18:48,326 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 07:18:48,330 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 07:18:48,330 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 07:18:48,331 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 07:18:48 BoogieIcfgContainer [2022-04-28 07:18:48,331 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 07:18:48,332 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 07:18:48,332 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 07:18:48,340 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 07:18:48,341 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 07:18:47" (1/3) ... [2022-04-28 07:18:48,341 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@92c86d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 07:18:48, skipping insertion in model container [2022-04-28 07:18:48,341 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:18:48" (2/3) ... [2022-04-28 07:18:48,341 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@92c86d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 07:18:48, skipping insertion in model container [2022-04-28 07:18:48,342 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 07:18:48" (3/3) ... [2022-04-28 07:18:48,342 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound20.c [2022-04-28 07:18:48,351 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 07:18:48,351 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 07:18:48,389 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 07:18:48,393 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@48203a6a, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@3f7767a3 [2022-04-28 07:18:48,393 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 07:18:48,402 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:18:48,410 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-28 07:18:48,410 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:18:48,410 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:18:48,410 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:18:48,419 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:18:48,420 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 1 times [2022-04-28 07:18:48,424 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:18:48,425 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1768959] [2022-04-28 07:18:48,431 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:18:48,432 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 2 times [2022-04-28 07:18:48,434 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:18:48,434 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1292143302] [2022-04-28 07:18:48,434 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:18:48,434 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:18:48,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:18:48,530 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 07:18:48,533 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:18:48,543 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:18:48,543 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-28 07:18:48,543 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-28 07:18:48,544 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 07:18:48,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:18:48,549 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 07:18:48,550 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 07:18:48,550 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 07:18:48,550 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-28 07:18:48,551 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:18:48,551 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:18:48,551 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-28 07:18:48,551 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-28 07:18:48,552 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} call #t~ret7 := main(); {35#true} is VALID [2022-04-28 07:18:48,552 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:18:48,552 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:18:48,552 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 07:18:48,552 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 07:18:48,553 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 07:18:48,553 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-28 07:18:48,553 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:18:48,553 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} assume !true; {36#false} is VALID [2022-04-28 07:18:48,553 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:18:48,553 INFO L290 TraceCheckUtils]: 14: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-04-28 07:18:48,554 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-04-28 07:18:48,554 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-04-28 07:18:48,554 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:18:48,554 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:18:48,555 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1292143302] [2022-04-28 07:18:48,555 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1292143302] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:18:48,555 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:18:48,555 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 07:18:48,557 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:18:48,557 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1768959] [2022-04-28 07:18:48,557 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1768959] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:18:48,557 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:18:48,557 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 07:18:48,557 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [278620767] [2022-04-28 07:18:48,558 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:18:48,561 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:18:48,562 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:18:48,564 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:18:48,579 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:18:48,579 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 07:18:48,580 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:18:48,592 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 07:18:48,592 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 07:18:48,594 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:18:48,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:18:48,690 INFO L93 Difference]: Finished difference Result 56 states and 77 transitions. [2022-04-28 07:18:48,690 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 07:18:48,690 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:18:48,691 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:18:48,691 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:18:48,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 07:18:48,697 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:18:48,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-28 07:18:48,700 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-28 07:18:48,766 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:18:48,771 INFO L225 Difference]: With dead ends: 56 [2022-04-28 07:18:48,772 INFO L226 Difference]: Without dead ends: 28 [2022-04-28 07:18:48,773 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:18:48,775 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:18:48,776 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:18:48,786 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-28 07:18:48,795 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-04-28 07:18:48,795 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:18:48,796 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:18:48,796 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:18:48,796 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:18:48,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:18:48,799 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-28 07:18:48,799 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-28 07:18:48,799 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:18:48,799 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:18:48,800 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:18:48,800 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:18:48,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:18:48,802 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-28 07:18:48,802 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-28 07:18:48,802 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:18:48,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:18:48,802 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:18:48,802 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:18:48,803 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:18:48,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-28 07:18:48,805 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 17 [2022-04-28 07:18:48,805 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:18:48,805 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-28 07:18:48,805 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:18:48,805 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 33 transitions. [2022-04-28 07:18:48,860 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:18:48,860 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-28 07:18:48,861 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-28 07:18:48,861 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:18:48,861 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:18:48,861 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 07:18:48,861 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:18:48,864 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:18:48,864 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 1 times [2022-04-28 07:18:48,864 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:18:48,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1509629433] [2022-04-28 07:18:48,866 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:18:48,866 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 2 times [2022-04-28 07:18:48,866 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:18:48,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [68342488] [2022-04-28 07:18:48,869 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:18:48,869 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:18:48,906 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:18:48,906 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1889203379] [2022-04-28 07:18:48,906 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:18:48,906 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:18:48,907 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:18:48,912 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:18:48,921 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:18:48,966 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 07:18:48,966 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:18:48,967 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 07:18:48,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:18:48,979 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:18:49,092 INFO L272 TraceCheckUtils]: 0: Hoare triple {269#true} call ULTIMATE.init(); {269#true} is VALID [2022-04-28 07:18:49,093 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:18:49,094 INFO L290 TraceCheckUtils]: 2: Hoare triple {277#(<= ~counter~0 0)} assume true; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:18:49,094 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {277#(<= ~counter~0 0)} {269#true} #77#return; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:18:49,095 INFO L272 TraceCheckUtils]: 4: Hoare triple {277#(<= ~counter~0 0)} call #t~ret7 := main(); {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:18:49,095 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:18:49,096 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:18:49,096 INFO L290 TraceCheckUtils]: 7: Hoare triple {277#(<= ~counter~0 0)} ~cond := #in~cond; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:18:49,096 INFO L290 TraceCheckUtils]: 8: Hoare triple {277#(<= ~counter~0 0)} assume !(0 == ~cond); {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:18:49,097 INFO L290 TraceCheckUtils]: 9: Hoare triple {277#(<= ~counter~0 0)} assume true; {277#(<= ~counter~0 0)} is VALID [2022-04-28 07:18:49,097 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:18:49,097 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:18:49,098 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:18:49,098 INFO L290 TraceCheckUtils]: 13: Hoare triple {311#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {270#false} is VALID [2022-04-28 07:18:49,098 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:18:49,099 INFO L290 TraceCheckUtils]: 15: Hoare triple {270#false} ~cond := #in~cond; {270#false} is VALID [2022-04-28 07:18:49,099 INFO L290 TraceCheckUtils]: 16: Hoare triple {270#false} assume 0 == ~cond; {270#false} is VALID [2022-04-28 07:18:49,099 INFO L290 TraceCheckUtils]: 17: Hoare triple {270#false} assume !false; {270#false} is VALID [2022-04-28 07:18:49,099 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:18:49,099 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:18:49,100 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:18:49,100 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [68342488] [2022-04-28 07:18:49,100 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:18:49,100 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1889203379] [2022-04-28 07:18:49,101 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1889203379] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:18:49,101 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:18:49,101 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 07:18:49,102 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:18:49,102 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1509629433] [2022-04-28 07:18:49,102 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1509629433] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:18:49,102 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:18:49,102 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 07:18:49,102 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2120959588] [2022-04-28 07:18:49,102 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:18:49,103 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:18:49,103 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:18:49,103 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:18:49,115 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:18:49,115 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 07:18:49,115 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:18:49,116 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 07:18:49,116 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 07:18:49,116 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:18:49,190 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:18:49,191 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-28 07:18:49,191 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 07:18:49,191 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:18:49,191 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:18:49,191 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:18:49,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-28 07:18:49,195 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:18:49,197 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-28 07:18:49,197 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-04-28 07:18:49,223 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:18:49,225 INFO L225 Difference]: With dead ends: 37 [2022-04-28 07:18:49,225 INFO L226 Difference]: Without dead ends: 29 [2022-04-28 07:18:49,226 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:18:49,227 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:18:49,230 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:18:49,231 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-28 07:18:49,244 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-28 07:18:49,244 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:18:49,244 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:18:49,245 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:18:49,246 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:18:49,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:18:49,248 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-28 07:18:49,248 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 07:18:49,249 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:18:49,249 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:18:49,251 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:18:49,251 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:18:49,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:18:49,254 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-28 07:18:49,254 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 07:18:49,254 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:18:49,254 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:18:49,255 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:18:49,255 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:18:49,255 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:18:49,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2022-04-28 07:18:49,256 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 35 transitions. Word has length 18 [2022-04-28 07:18:49,256 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:18:49,256 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 35 transitions. [2022-04-28 07:18:49,256 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:18:49,256 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 35 transitions. [2022-04-28 07:18:49,284 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:18:49,287 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-28 07:18:49,288 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-28 07:18:49,293 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:18:49,293 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:18:49,312 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 07:18:49,499 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:18:49,499 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:18:49,500 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:18:49,500 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 1 times [2022-04-28 07:18:49,500 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:18:49,500 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1447843268] [2022-04-28 07:18:49,501 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:18:49,501 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 2 times [2022-04-28 07:18:49,501 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:18:49,501 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2043426192] [2022-04-28 07:18:49,501 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:18:49,501 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:18:49,515 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:18:49,515 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [752795905] [2022-04-28 07:18:49,515 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:18:49,515 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:18:49,515 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:18:49,522 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:18:49,523 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:18:49,556 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 07:18:49,556 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:18:49,557 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 07:18:49,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:18:49,565 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:18:49,696 INFO L272 TraceCheckUtils]: 0: Hoare triple {516#true} call ULTIMATE.init(); {516#true} is VALID [2022-04-28 07:18:49,697 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:18:49,697 INFO L290 TraceCheckUtils]: 2: Hoare triple {516#true} assume true; {516#true} is VALID [2022-04-28 07:18:49,698 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {516#true} {516#true} #77#return; {516#true} is VALID [2022-04-28 07:18:49,698 INFO L272 TraceCheckUtils]: 4: Hoare triple {516#true} call #t~ret7 := main(); {516#true} is VALID [2022-04-28 07:18:49,698 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:18:49,698 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:18:49,701 INFO L290 TraceCheckUtils]: 7: Hoare triple {516#true} ~cond := #in~cond; {516#true} is VALID [2022-04-28 07:18:49,702 INFO L290 TraceCheckUtils]: 8: Hoare triple {516#true} assume !(0 == ~cond); {516#true} is VALID [2022-04-28 07:18:49,702 INFO L290 TraceCheckUtils]: 9: Hoare triple {516#true} assume true; {516#true} is VALID [2022-04-28 07:18:49,703 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {516#true} {516#true} #69#return; {516#true} is VALID [2022-04-28 07:18:49,703 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:18:49,704 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:18:49,706 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 < 20);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:18:49,707 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:18:49,707 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:18:49,708 INFO L290 TraceCheckUtils]: 16: Hoare triple {568#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {517#false} is VALID [2022-04-28 07:18:49,708 INFO L290 TraceCheckUtils]: 17: Hoare triple {517#false} assume !false; {517#false} is VALID [2022-04-28 07:18:49,708 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:18:49,708 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:18:49,709 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:18:49,709 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2043426192] [2022-04-28 07:18:49,709 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:18:49,709 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [752795905] [2022-04-28 07:18:49,709 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [752795905] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:18:49,709 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:18:49,709 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:18:49,710 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:18:49,710 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1447843268] [2022-04-28 07:18:49,710 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1447843268] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:18:49,710 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:18:49,710 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:18:49,710 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1010008222] [2022-04-28 07:18:49,710 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:18:49,711 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:18:49,712 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:18:49,712 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:18:49,730 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:18:49,730 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 07:18:49,730 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:18:49,731 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 07:18:49,731 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 07:18:49,731 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:18:49,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:18:49,884 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-04-28 07:18:49,884 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 07:18:49,884 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:18:49,884 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:18:49,885 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:18:49,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 07:18:49,886 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:18:49,887 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-28 07:18:49,887 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-28 07:18:49,937 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:18:49,938 INFO L225 Difference]: With dead ends: 42 [2022-04-28 07:18:49,938 INFO L226 Difference]: Without dead ends: 40 [2022-04-28 07:18:49,939 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:18:49,939 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 9 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s 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.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:18:49,939 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.0s Time] [2022-04-28 07:18:49,940 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-28 07:18:49,954 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-28 07:18:49,955 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:18:49,955 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:18:49,955 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:18:49,955 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:18:49,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:18:49,957 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-28 07:18:49,957 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-28 07:18:49,957 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:18:49,957 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:18:49,958 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:18:49,958 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:18:49,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:18:49,959 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-28 07:18:49,959 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-28 07:18:49,960 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:18:49,960 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:18:49,960 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:18:49,960 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:18:49,960 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:18:49,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-28 07:18:49,961 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 18 [2022-04-28 07:18:49,962 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:18:49,962 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-28 07:18:49,962 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:18:49,962 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 40 transitions. [2022-04-28 07:18:49,996 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:18:49,996 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-28 07:18:49,996 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 07:18:49,997 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:18:49,997 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:18:50,015 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:18:50,199 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:18:50,200 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:18:50,200 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:18:50,200 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 1 times [2022-04-28 07:18:50,200 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:18:50,200 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [998800165] [2022-04-28 07:18:50,201 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:18:50,201 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 2 times [2022-04-28 07:18:50,201 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:18:50,201 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1078556468] [2022-04-28 07:18:50,201 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:18:50,201 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:18:50,211 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:18:50,211 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [207205471] [2022-04-28 07:18:50,211 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:18:50,211 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:18:50,211 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:18:50,212 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:18:50,213 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:18:50,242 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:18:50,243 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:18:50,243 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 07:18:50,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:18:50,251 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:19:00,674 INFO L272 TraceCheckUtils]: 0: Hoare triple {808#true} call ULTIMATE.init(); {808#true} is VALID [2022-04-28 07:19:00,675 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:19:00,675 INFO L290 TraceCheckUtils]: 2: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-28 07:19:00,675 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {808#true} {808#true} #77#return; {808#true} is VALID [2022-04-28 07:19:00,676 INFO L272 TraceCheckUtils]: 4: Hoare triple {808#true} call #t~ret7 := main(); {808#true} is VALID [2022-04-28 07:19:00,676 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:19:00,676 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:19:00,677 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:19:00,677 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:19:00,677 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:19:00,680 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:19:00,680 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:19:00,681 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:19:00,681 INFO L290 TraceCheckUtils]: 13: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-28 07:19:00,681 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:19:00,682 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:19:00,682 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:19:00,682 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:19:02,688 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:19:02,695 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:19:02,696 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:19:02,696 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:19:02,697 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {809#false} is VALID [2022-04-28 07:19:02,697 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#false} assume !false; {809#false} is VALID [2022-04-28 07:19:02,697 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:19:02,697 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:19:39,721 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#false} assume !false; {809#false} is VALID [2022-04-28 07:19:39,721 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {809#false} is VALID [2022-04-28 07:19:39,722 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:19:39,722 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:19:39,723 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:19:39,724 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:19:39,725 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:19:39,725 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:19:39,726 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:19:39,726 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:19:39,726 INFO L290 TraceCheckUtils]: 13: Hoare triple {808#true} assume !!(#t~post6 < 20);havoc #t~post6; {808#true} is VALID [2022-04-28 07:19:39,726 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:19:39,726 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:19:39,726 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {808#true} {808#true} #69#return; {808#true} is VALID [2022-04-28 07:19:39,726 INFO L290 TraceCheckUtils]: 9: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-28 07:19:39,727 INFO L290 TraceCheckUtils]: 8: Hoare triple {808#true} assume !(0 == ~cond); {808#true} is VALID [2022-04-28 07:19:39,727 INFO L290 TraceCheckUtils]: 7: Hoare triple {808#true} ~cond := #in~cond; {808#true} is VALID [2022-04-28 07:19:39,727 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:19:39,727 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:19:39,727 INFO L272 TraceCheckUtils]: 4: Hoare triple {808#true} call #t~ret7 := main(); {808#true} is VALID [2022-04-28 07:19:39,727 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {808#true} {808#true} #77#return; {808#true} is VALID [2022-04-28 07:19:39,727 INFO L290 TraceCheckUtils]: 2: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-28 07:19:39,728 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:19:39,728 INFO L272 TraceCheckUtils]: 0: Hoare triple {808#true} call ULTIMATE.init(); {808#true} is VALID [2022-04-28 07:19:39,728 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:19:39,728 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:19:39,728 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1078556468] [2022-04-28 07:19:39,728 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:19:39,728 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [207205471] [2022-04-28 07:19:39,729 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [207205471] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:19:39,729 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:19:39,729 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-28 07:19:39,729 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:19:39,729 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [998800165] [2022-04-28 07:19:39,729 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [998800165] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:19:39,729 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:19:39,729 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 07:19:39,729 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [63020235] [2022-04-28 07:19:39,730 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:19:39,730 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:19:39,730 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:19:39,730 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:19:41,761 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:19:41,761 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 07:19:41,761 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:19:41,762 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 07:19:41,762 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-28 07:19:41,762 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:19:43,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:19:43,944 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-28 07:19:43,944 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 07:19:43,944 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:19:43,945 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:19:43,945 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:19:43,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-28 07:19:43,947 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:19:43,956 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-28 07:19:43,956 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 60 transitions. [2022-04-28 07:19:46,005 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:19:46,006 INFO L225 Difference]: With dead ends: 50 [2022-04-28 07:19:46,006 INFO L226 Difference]: Without dead ends: 48 [2022-04-28 07:19:46,007 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:19:46,007 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 36 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 204 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.2s 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, 1.2s IncrementalHoareTripleChecker+Time [2022-04-28 07:19:46,008 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [39 Valid, 130 Invalid, 221 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 204 Invalid, 0 Unknown, 0 Unchecked, 1.2s Time] [2022-04-28 07:19:46,008 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-28 07:19:46,042 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 45. [2022-04-28 07:19:46,042 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:19:46,043 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:19:46,043 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:19:46,043 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:19:46,045 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:19:46,045 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-28 07:19:46,045 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-28 07:19:46,045 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:19:46,045 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:19:46,046 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:19:46,046 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:19:46,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:19:46,047 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-28 07:19:46,047 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-28 07:19:46,051 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:19:46,051 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:19:46,051 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:19:46,051 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:19:46,051 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:19:46,065 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 56 transitions. [2022-04-28 07:19:46,065 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 56 transitions. Word has length 24 [2022-04-28 07:19:46,065 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:19:46,065 INFO L495 AbstractCegarLoop]: Abstraction has 45 states and 56 transitions. [2022-04-28 07:19:46,066 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:19:46,066 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 45 states and 56 transitions. [2022-04-28 07:19:48,117 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:19:48,118 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 56 transitions. [2022-04-28 07:19:48,118 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-28 07:19:48,118 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:19:48,119 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:19:48,135 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 07:19:48,319 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:19:48,321 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:19:48,322 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:19:48,322 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 1 times [2022-04-28 07:19:48,322 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:19:48,322 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1349452479] [2022-04-28 07:19:54,396 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-28 07:19:54,396 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-28 07:19:54,396 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 07:19:54,396 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 2 times [2022-04-28 07:19:54,396 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:19:54,396 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1423999353] [2022-04-28 07:19:54,396 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:19:54,397 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:19:54,407 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:19:54,407 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1753396318] [2022-04-28 07:19:54,407 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:19:54,407 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:19:54,407 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:19:54,408 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:19:54,409 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:19:54,443 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:19:54,444 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:19:54,444 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 07:19:54,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:19:54,457 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:19:54,573 INFO L272 TraceCheckUtils]: 0: Hoare triple {1260#true} call ULTIMATE.init(); {1260#true} is VALID [2022-04-28 07:19:54,574 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:19:54,574 INFO L290 TraceCheckUtils]: 2: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:19:54,575 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1268#(<= ~counter~0 0)} {1260#true} #77#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:19:54,575 INFO L272 TraceCheckUtils]: 4: Hoare triple {1268#(<= ~counter~0 0)} call #t~ret7 := main(); {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:19:54,576 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:19:54,577 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:19:54,577 INFO L290 TraceCheckUtils]: 7: Hoare triple {1268#(<= ~counter~0 0)} ~cond := #in~cond; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:19:54,578 INFO L290 TraceCheckUtils]: 8: Hoare triple {1268#(<= ~counter~0 0)} assume !(0 == ~cond); {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:19:54,579 INFO L290 TraceCheckUtils]: 9: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-28 07:19:54,580 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:19:54,590 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:19:54,591 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:19:54,594 INFO L290 TraceCheckUtils]: 13: Hoare triple {1302#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:19:54,595 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:19:54,595 INFO L290 TraceCheckUtils]: 15: Hoare triple {1302#(<= ~counter~0 1)} ~cond := #in~cond; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:19:54,595 INFO L290 TraceCheckUtils]: 16: Hoare triple {1302#(<= ~counter~0 1)} assume !(0 == ~cond); {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:19:54,596 INFO L290 TraceCheckUtils]: 17: Hoare triple {1302#(<= ~counter~0 1)} assume true; {1302#(<= ~counter~0 1)} is VALID [2022-04-28 07:19:54,597 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:19:54,597 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:19:54,597 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:19:54,598 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:19:54,598 INFO L290 TraceCheckUtils]: 22: Hoare triple {1330#(<= |main_#t~post6| 1)} assume !(#t~post6 < 20);havoc #t~post6; {1261#false} is VALID [2022-04-28 07:19:54,598 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:19:54,598 INFO L290 TraceCheckUtils]: 24: Hoare triple {1261#false} ~cond := #in~cond; {1261#false} is VALID [2022-04-28 07:19:54,599 INFO L290 TraceCheckUtils]: 25: Hoare triple {1261#false} assume 0 == ~cond; {1261#false} is VALID [2022-04-28 07:19:54,599 INFO L290 TraceCheckUtils]: 26: Hoare triple {1261#false} assume !false; {1261#false} is VALID [2022-04-28 07:19:54,599 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:19:54,599 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:19:54,731 INFO L290 TraceCheckUtils]: 26: Hoare triple {1261#false} assume !false; {1261#false} is VALID [2022-04-28 07:19:54,732 INFO L290 TraceCheckUtils]: 25: Hoare triple {1261#false} assume 0 == ~cond; {1261#false} is VALID [2022-04-28 07:19:54,732 INFO L290 TraceCheckUtils]: 24: Hoare triple {1261#false} ~cond := #in~cond; {1261#false} is VALID [2022-04-28 07:19:54,732 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:19:54,732 INFO L290 TraceCheckUtils]: 22: Hoare triple {1358#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {1261#false} is VALID [2022-04-28 07:19:54,733 INFO L290 TraceCheckUtils]: 21: Hoare triple {1362#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1358#(< |main_#t~post6| 20)} is VALID [2022-04-28 07:19:54,733 INFO L290 TraceCheckUtils]: 20: Hoare triple {1362#(< ~counter~0 20)} 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 20)} is VALID [2022-04-28 07:19:54,733 INFO L290 TraceCheckUtils]: 19: Hoare triple {1362#(< ~counter~0 20)} assume !!(0 != ~a~0 && 0 != ~b~0); {1362#(< ~counter~0 20)} is VALID [2022-04-28 07:19:54,734 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1260#true} {1362#(< ~counter~0 20)} #71#return; {1362#(< ~counter~0 20)} is VALID [2022-04-28 07:19:54,734 INFO L290 TraceCheckUtils]: 17: Hoare triple {1260#true} assume true; {1260#true} is VALID [2022-04-28 07:19:54,734 INFO L290 TraceCheckUtils]: 16: Hoare triple {1260#true} assume !(0 == ~cond); {1260#true} is VALID [2022-04-28 07:19:54,735 INFO L290 TraceCheckUtils]: 15: Hoare triple {1260#true} ~cond := #in~cond; {1260#true} is VALID [2022-04-28 07:19:54,735 INFO L272 TraceCheckUtils]: 14: Hoare triple {1362#(< ~counter~0 20)} 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:19:54,735 INFO L290 TraceCheckUtils]: 13: Hoare triple {1362#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {1362#(< ~counter~0 20)} is VALID [2022-04-28 07:19:54,736 INFO L290 TraceCheckUtils]: 12: Hoare triple {1390#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1362#(< ~counter~0 20)} is VALID [2022-04-28 07:19:54,736 INFO L290 TraceCheckUtils]: 11: Hoare triple {1390#(< ~counter~0 19)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1390#(< ~counter~0 19)} is VALID [2022-04-28 07:19:54,736 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1260#true} {1390#(< ~counter~0 19)} #69#return; {1390#(< ~counter~0 19)} is VALID [2022-04-28 07:19:54,737 INFO L290 TraceCheckUtils]: 9: Hoare triple {1260#true} assume true; {1260#true} is VALID [2022-04-28 07:19:54,737 INFO L290 TraceCheckUtils]: 8: Hoare triple {1260#true} assume !(0 == ~cond); {1260#true} is VALID [2022-04-28 07:19:54,737 INFO L290 TraceCheckUtils]: 7: Hoare triple {1260#true} ~cond := #in~cond; {1260#true} is VALID [2022-04-28 07:19:54,737 INFO L272 TraceCheckUtils]: 6: Hoare triple {1390#(< ~counter~0 19)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1260#true} is VALID [2022-04-28 07:19:54,737 INFO L290 TraceCheckUtils]: 5: Hoare triple {1390#(< ~counter~0 19)} 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 19)} is VALID [2022-04-28 07:19:54,738 INFO L272 TraceCheckUtils]: 4: Hoare triple {1390#(< ~counter~0 19)} call #t~ret7 := main(); {1390#(< ~counter~0 19)} is VALID [2022-04-28 07:19:54,738 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1390#(< ~counter~0 19)} {1260#true} #77#return; {1390#(< ~counter~0 19)} is VALID [2022-04-28 07:19:54,738 INFO L290 TraceCheckUtils]: 2: Hoare triple {1390#(< ~counter~0 19)} assume true; {1390#(< ~counter~0 19)} is VALID [2022-04-28 07:19:54,739 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 19)} is VALID [2022-04-28 07:19:54,739 INFO L272 TraceCheckUtils]: 0: Hoare triple {1260#true} call ULTIMATE.init(); {1260#true} is VALID [2022-04-28 07:19:54,739 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:19:54,739 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:19:54,739 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1423999353] [2022-04-28 07:19:54,740 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:19:54,740 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1753396318] [2022-04-28 07:19:54,740 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1753396318] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:19:54,740 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:19:54,740 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-28 07:19:54,740 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:19:54,740 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1349452479] [2022-04-28 07:19:54,740 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1349452479] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:19:54,740 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:19:54,740 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:19:54,740 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2065414146] [2022-04-28 07:19:54,740 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:19:54,741 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:19:54,741 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:19:54,741 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:19:54,760 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:19:54,761 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 07:19:54,761 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:19:54,761 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 07:19:54,761 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-28 07:19:54,761 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:19:54,893 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:19:54,894 INFO L93 Difference]: Finished difference Result 73 states and 89 transitions. [2022-04-28 07:19:54,894 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 07:19:54,894 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:19:54,894 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:19:54,894 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:19:54,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-28 07:19:54,896 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:19:54,897 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-28 07:19:54,897 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 64 transitions. [2022-04-28 07:19:54,944 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:19:54,945 INFO L225 Difference]: With dead ends: 73 [2022-04-28 07:19:54,945 INFO L226 Difference]: Without dead ends: 63 [2022-04-28 07:19:54,946 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:19:54,946 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:19:54,946 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:19:54,947 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-28 07:19:55,001 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 61. [2022-04-28 07:19:55,001 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:19:55,001 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:19:55,001 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:19:55,002 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:19:55,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:19:55,004 INFO L93 Difference]: Finished difference Result 63 states and 77 transitions. [2022-04-28 07:19:55,004 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-28 07:19:55,004 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:19:55,004 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:19:55,004 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:19:55,005 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:19:55,006 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:19:55,006 INFO L93 Difference]: Finished difference Result 63 states and 77 transitions. [2022-04-28 07:19:55,006 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-28 07:19:55,007 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:19:55,007 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:19:55,007 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:19:55,007 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:19:55,007 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:19:55,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 76 transitions. [2022-04-28 07:19:55,009 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 76 transitions. Word has length 27 [2022-04-28 07:19:55,009 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:19:55,009 INFO L495 AbstractCegarLoop]: Abstraction has 61 states and 76 transitions. [2022-04-28 07:19:55,009 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:19:55,009 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 61 states and 76 transitions. [2022-04-28 07:19:57,089 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:19:57,090 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 76 transitions. [2022-04-28 07:19:57,090 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-28 07:19:57,090 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:19:57,090 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:19:57,105 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:19:57,299 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:19:57,299 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:19:57,300 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:19:57,300 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 1 times [2022-04-28 07:19:57,300 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:19:57,300 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1746104045] [2022-04-28 07:20:03,361 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-28 07:20:03,361 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-28 07:20:03,361 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 07:20:03,361 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 2 times [2022-04-28 07:20:03,361 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:20:03,361 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1834989995] [2022-04-28 07:20:03,361 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:20:03,361 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:20:03,370 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:20:03,371 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1000250123] [2022-04-28 07:20:03,371 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:20:03,371 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:20:03,371 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:20:03,372 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:20:03,372 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:20:03,406 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:20:03,406 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:20:03,407 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-28 07:20:03,417 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:20:03,417 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:20:03,751 INFO L272 TraceCheckUtils]: 0: Hoare triple {1825#true} call ULTIMATE.init(); {1825#true} is VALID [2022-04-28 07:20:03,751 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:20:03,751 INFO L290 TraceCheckUtils]: 2: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 07:20:03,751 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1825#true} {1825#true} #77#return; {1825#true} is VALID [2022-04-28 07:20:03,751 INFO L272 TraceCheckUtils]: 4: Hoare triple {1825#true} call #t~ret7 := main(); {1825#true} is VALID [2022-04-28 07:20:03,751 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:20:03,751 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:20:03,752 INFO L290 TraceCheckUtils]: 7: Hoare triple {1825#true} ~cond := #in~cond; {1825#true} is VALID [2022-04-28 07:20:03,752 INFO L290 TraceCheckUtils]: 8: Hoare triple {1825#true} assume !(0 == ~cond); {1825#true} is VALID [2022-04-28 07:20:03,752 INFO L290 TraceCheckUtils]: 9: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 07:20:03,752 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1825#true} {1825#true} #69#return; {1825#true} is VALID [2022-04-28 07:20:03,753 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:20:03,753 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:20:03,754 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 < 20);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:20:03,754 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:20:03,754 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:20:03,754 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:20:03,755 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:20:03,756 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:20:03,756 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:20:03,757 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:20:03,758 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:20:03,758 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 < 20);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:20:03,761 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:20:03,763 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:20:03,763 INFO L290 TraceCheckUtils]: 25: Hoare triple {1908#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1826#false} is VALID [2022-04-28 07:20:03,763 INFO L290 TraceCheckUtils]: 26: Hoare triple {1826#false} assume !false; {1826#false} is VALID [2022-04-28 07:20:03,763 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:20:03,763 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:20:59,346 INFO L290 TraceCheckUtils]: 26: Hoare triple {1826#false} assume !false; {1826#false} is VALID [2022-04-28 07:20:59,347 INFO L290 TraceCheckUtils]: 25: Hoare triple {1908#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1826#false} is VALID [2022-04-28 07:20:59,347 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:20:59,348 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:20:59,348 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 < 20);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:20:59,348 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:20:59,352 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:20:59,352 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:20:59,357 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:20:59,357 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:20:59,357 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:20:59,358 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:20:59,358 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:20:59,358 INFO L290 TraceCheckUtils]: 13: Hoare triple {1825#true} assume !!(#t~post6 < 20);havoc #t~post6; {1825#true} is VALID [2022-04-28 07:20:59,358 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:20:59,358 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:20:59,358 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1825#true} {1825#true} #69#return; {1825#true} is VALID [2022-04-28 07:20:59,358 INFO L290 TraceCheckUtils]: 9: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 07:20:59,358 INFO L290 TraceCheckUtils]: 8: Hoare triple {1825#true} assume !(0 == ~cond); {1825#true} is VALID [2022-04-28 07:20:59,359 INFO L290 TraceCheckUtils]: 7: Hoare triple {1825#true} ~cond := #in~cond; {1825#true} is VALID [2022-04-28 07:20:59,359 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:20:59,359 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:20:59,359 INFO L272 TraceCheckUtils]: 4: Hoare triple {1825#true} call #t~ret7 := main(); {1825#true} is VALID [2022-04-28 07:20:59,359 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1825#true} {1825#true} #77#return; {1825#true} is VALID [2022-04-28 07:20:59,359 INFO L290 TraceCheckUtils]: 2: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-28 07:20:59,359 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:20:59,359 INFO L272 TraceCheckUtils]: 0: Hoare triple {1825#true} call ULTIMATE.init(); {1825#true} is VALID [2022-04-28 07:20:59,359 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:20:59,360 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:20:59,360 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1834989995] [2022-04-28 07:20:59,360 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:20:59,360 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1000250123] [2022-04-28 07:20:59,360 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1000250123] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:20:59,360 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:20:59,360 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-28 07:20:59,360 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:20:59,361 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1746104045] [2022-04-28 07:20:59,361 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1746104045] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:20:59,361 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:20:59,361 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 07:20:59,361 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2021000693] [2022-04-28 07:20:59,361 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:20:59,362 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:20:59,362 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:20:59,362 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:20:59,386 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:20:59,386 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 07:20:59,386 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:20:59,386 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 07:20:59,386 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=101, Unknown=0, NotChecked=0, Total=132 [2022-04-28 07:20:59,387 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:20:59,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:20:59,905 INFO L93 Difference]: Finished difference Result 76 states and 96 transitions. [2022-04-28 07:20:59,905 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 07:20:59,905 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:20:59,906 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:20:59,906 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:20:59,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-28 07:20:59,910 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:20:59,912 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-28 07:20:59,913 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 68 transitions. [2022-04-28 07:20:59,969 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:20:59,970 INFO L225 Difference]: With dead ends: 76 [2022-04-28 07:20:59,970 INFO L226 Difference]: Without dead ends: 74 [2022-04-28 07:20:59,971 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:20:59,971 INFO L413 NwaCegarLoop]: 25 mSDtfsCounter, 24 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 197 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-28 07:20:59,971 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.2s Time] [2022-04-28 07:20:59,972 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-28 07:21:00,024 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 68. [2022-04-28 07:21:00,024 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:21:00,025 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:21:00,025 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:21:00,025 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:21:00,027 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:00,027 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-28 07:21:00,027 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-28 07:21:00,027 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:00,027 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:00,028 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:21:00,028 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:21:00,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:00,030 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-28 07:21:00,030 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-28 07:21:00,030 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:00,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:00,030 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:21:00,030 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:21:00,030 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:21:00,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 83 transitions. [2022-04-28 07:21:00,032 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 83 transitions. Word has length 27 [2022-04-28 07:21:00,032 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:21:00,032 INFO L495 AbstractCegarLoop]: Abstraction has 68 states and 83 transitions. [2022-04-28 07:21:00,032 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:21:00,032 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 83 transitions. [2022-04-28 07:21:02,114 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:21:02,114 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 83 transitions. [2022-04-28 07:21:02,115 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 07:21:02,115 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:21:02,115 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:21:02,130 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:21:02,319 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:21:02,319 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:21:02,320 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:21:02,320 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 1 times [2022-04-28 07:21:02,320 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:02,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1319200998] [2022-04-28 07:21:02,320 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:21:02,320 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 2 times [2022-04-28 07:21:02,320 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:21:02,321 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1637032288] [2022-04-28 07:21:02,321 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:21:02,321 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:21:02,332 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:21:02,333 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1730876664] [2022-04-28 07:21:02,333 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:21:02,333 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:21:02,333 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:21:02,334 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:21:02,335 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:21:02,368 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:21:02,368 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:21:02,369 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 07:21:02,378 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:21:02,379 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:21:02,515 INFO L272 TraceCheckUtils]: 0: Hoare triple {2438#true} call ULTIMATE.init(); {2438#true} is VALID [2022-04-28 07:21:02,515 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:21:02,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-28 07:21:02,515 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2438#true} {2438#true} #77#return; {2438#true} is VALID [2022-04-28 07:21:02,515 INFO L272 TraceCheckUtils]: 4: Hoare triple {2438#true} call #t~ret7 := main(); {2438#true} is VALID [2022-04-28 07:21:02,516 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:21:02,516 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:21:02,516 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:21:02,517 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:21:02,517 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:21:02,517 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:21:02,518 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:21:02,518 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:21:02,518 INFO L290 TraceCheckUtils]: 13: Hoare triple {2479#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2479#(<= 1 main_~b~0)} is VALID [2022-04-28 07:21:02,518 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:21:02,519 INFO L290 TraceCheckUtils]: 15: Hoare triple {2438#true} ~cond := #in~cond; {2438#true} is VALID [2022-04-28 07:21:02,519 INFO L290 TraceCheckUtils]: 16: Hoare triple {2438#true} assume !(0 == ~cond); {2438#true} is VALID [2022-04-28 07:21:02,519 INFO L290 TraceCheckUtils]: 17: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-28 07:21:02,520 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:21:02,520 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:21:02,520 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:21:02,520 INFO L290 TraceCheckUtils]: 21: Hoare triple {2438#true} ~cond := #in~cond; {2438#true} is VALID [2022-04-28 07:21:02,520 INFO L290 TraceCheckUtils]: 22: Hoare triple {2438#true} assume !(0 == ~cond); {2438#true} is VALID [2022-04-28 07:21:02,520 INFO L290 TraceCheckUtils]: 23: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-28 07:21:02,521 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:21:02,521 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:21:02,522 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:21:02,522 INFO L290 TraceCheckUtils]: 27: Hoare triple {2527#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2439#false} is VALID [2022-04-28 07:21:02,522 INFO L290 TraceCheckUtils]: 28: Hoare triple {2439#false} assume !false; {2439#false} is VALID [2022-04-28 07:21:02,522 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:21:02,522 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:21:02,523 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:21:02,523 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1637032288] [2022-04-28 07:21:02,523 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:21:02,523 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1730876664] [2022-04-28 07:21:02,523 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1730876664] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:21:02,523 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:21:02,523 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 07:21:02,523 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:21:02,523 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1319200998] [2022-04-28 07:21:02,523 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1319200998] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:21:02,523 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:21:02,523 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 07:21:02,523 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [884767206] [2022-04-28 07:21:02,524 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:21:02,524 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:21:02,524 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:21:02,524 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:21:02,543 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:21:02,543 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 07:21:02,543 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:02,543 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 07:21:02,544 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-28 07:21:02,544 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:21:02,932 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:02,932 INFO L93 Difference]: Finished difference Result 85 states and 107 transitions. [2022-04-28 07:21:02,933 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 07:21:02,933 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:21:02,933 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:21:02,933 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:21:02,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-28 07:21:02,934 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:21:02,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-28 07:21:02,935 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 57 transitions. [2022-04-28 07:21:02,976 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:21:02,978 INFO L225 Difference]: With dead ends: 85 [2022-04-28 07:21:02,978 INFO L226 Difference]: Without dead ends: 65 [2022-04-28 07:21:02,978 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-28 07:21:02,978 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:21:02,979 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:21:02,979 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-28 07:21:03,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 62. [2022-04-28 07:21:03,049 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:21:03,049 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:21:03,050 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:21:03,050 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:21:03,051 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:03,051 INFO L93 Difference]: Finished difference Result 65 states and 85 transitions. [2022-04-28 07:21:03,052 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 85 transitions. [2022-04-28 07:21:03,052 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:03,052 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:03,052 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:21:03,052 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:21:03,054 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:03,054 INFO L93 Difference]: Finished difference Result 65 states and 85 transitions. [2022-04-28 07:21:03,054 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 85 transitions. [2022-04-28 07:21:03,054 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:03,054 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:03,054 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:21:03,054 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:21:03,054 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:21:03,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 80 transitions. [2022-04-28 07:21:03,056 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 80 transitions. Word has length 29 [2022-04-28 07:21:03,056 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:21:03,056 INFO L495 AbstractCegarLoop]: Abstraction has 62 states and 80 transitions. [2022-04-28 07:21:03,056 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:21:03,056 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 62 states and 80 transitions. [2022-04-28 07:21:05,141 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:21:05,141 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 80 transitions. [2022-04-28 07:21:05,142 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 07:21:05,142 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:21:05,142 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:21:05,158 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-28 07:21:05,342 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:21:05,343 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:21:05,343 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:21:05,343 INFO L85 PathProgramCache]: Analyzing trace with hash -1357155568, now seen corresponding path program 1 times [2022-04-28 07:21:05,343 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:05,343 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1723960552] [2022-04-28 07:21:11,462 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:21:12,900 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:21:14,389 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:21:14,449 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:21:14,504 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:21:14,563 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:21:14,564 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 07:21:14,567 INFO L85 PathProgramCache]: Analyzing trace with hash 1724905837, now seen corresponding path program 1 times [2022-04-28 07:21:14,567 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:21:14,567 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1391148902] [2022-04-28 07:21:14,567 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:21:14,567 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:21:14,585 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:21:14,586 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1446406264] [2022-04-28 07:21:14,586 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:21:14,586 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:21:14,586 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:21:14,592 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:21:14,597 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:21:14,680 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:21:14,682 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 41 conjunts are in the unsatisfiable core [2022-04-28 07:21:14,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:21:14,701 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:21:16,978 INFO L272 TraceCheckUtils]: 0: Hoare triple {2965#true} call ULTIMATE.init(); {2965#true} is VALID [2022-04-28 07:21:16,979 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:21:16,979 INFO L290 TraceCheckUtils]: 2: Hoare triple {2973#(= ~counter~0 0)} assume true; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:21:16,983 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2973#(= ~counter~0 0)} {2965#true} #77#return; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:21:16,983 INFO L272 TraceCheckUtils]: 4: Hoare triple {2973#(= ~counter~0 0)} call #t~ret7 := main(); {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:21:16,984 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:21:16,984 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:21:16,984 INFO L290 TraceCheckUtils]: 7: Hoare triple {2973#(= ~counter~0 0)} ~cond := #in~cond; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:21:16,985 INFO L290 TraceCheckUtils]: 8: Hoare triple {2973#(= ~counter~0 0)} assume !(0 == ~cond); {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:21:16,985 INFO L290 TraceCheckUtils]: 9: Hoare triple {2973#(= ~counter~0 0)} assume true; {2973#(= ~counter~0 0)} is VALID [2022-04-28 07:21:16,986 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:21:16,986 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:21:16,987 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:21:16,987 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:21:16,988 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: (let ((.cse2 (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (let ((.cse7 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse8 (= |v_main_#t~post6_20| |v_main_#t~post6_15|)) (.cse9 (= v_~counter~0_29 v_~counter~0_28)) (.cse1 (= (mod v_main_~b~0_37 2) 0)) (.cse0 (= 0 v_main_~b~0_37)) (.cse5 (<= 0 v_main_~a~0_38)) (.cse3 (= (mod v_main_~a~0_38 2) 1)) (.cse6 (< v_~counter~0_29 20)) (.cse4 (= (* v_main_~x~0_22 v_main_~y~0_26) .cse2)) (.cse10 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and (not .cse0) .cse1 (< v_main_~a~0_37 v_main_~a~0_38) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_main_~a~0_37 v_main_~b~0_37)) .cse2) .cse3 (< v_main_~a~0_38 (+ 2 v_main_~a~0_37)) .cse4 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) .cse5 .cse6) (and .cse7 (= v_main_~p~0_29 v_main_~p~0_29) .cse8 (= v_main_~b~0_37 v_main_~b~0_37) .cse9 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse10) (and .cse7 .cse8 .cse9 (or (not .cse1) .cse0 (not .cse5) (not .cse3) (not .cse6) (not .cse4)) .cse10)))) 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_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_~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] {3014#(and (or (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (= (+ ~counter~0 main_~a~0) main_~x~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~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:21:16,989 INFO L290 TraceCheckUtils]: 15: Hoare triple {3014#(and (or (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (= (+ ~counter~0 main_~a~0) main_~x~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~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))} [84] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3014#(and (or (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (= (+ ~counter~0 main_~a~0) main_~x~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~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:21:17,001 INFO L290 TraceCheckUtils]: 16: Hoare triple {3014#(and (or (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (= (+ ~counter~0 main_~a~0) main_~x~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~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))} [85] L46-2-->L33-1_primed: Formula: (let ((.cse3 (= 0 v_main_~b~0_37)) (.cse2 (= (mod v_main_~b~0_37 2) 0)) (.cse6 (= (* 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))) (.cse4 (<= 0 v_main_~a~0_38)) (.cse5 (< v_~counter~0_29 20)) (.cse0 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse1 (= v_~counter~0_29 v_~counter~0_28)) (.cse7 (= |v_main_#t~post6_23| |v_main_#t~post6_15|)) (.cse8 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and .cse0 .cse1 (or (not .cse2) .cse3 (not .cse4) (not (= (mod v_main_~a~0_38 2) 1)) (not .cse5) (not .cse6)) .cse7 .cse8) (and (not .cse3) (= (+ 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))) .cse2 (< v_~counter~0_29 v_~counter~0_28) .cse6 (= (+ 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)) .cse4 .cse5) (and .cse0 (= v_main_~p~0_29 v_main_~p~0_29) (= v_main_~b~0_37 v_main_~b~0_37) .cse1 .cse7 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse8))) 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_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_~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] {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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:21:17,002 INFO L290 TraceCheckUtils]: 17: Hoare triple {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [86] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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:21:17,003 INFO L290 TraceCheckUtils]: 18: Hoare triple {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [87] 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_26| |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_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_#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] {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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:21:17,004 INFO L290 TraceCheckUtils]: 19: Hoare triple {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (and (= 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[] {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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:21:17,005 INFO L290 TraceCheckUtils]: 20: Hoare triple {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (and (= 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] {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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:21:17,006 INFO L290 TraceCheckUtils]: 21: Hoare triple {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (and (= 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[] {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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:21:17,007 INFO L290 TraceCheckUtils]: 22: Hoare triple {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (and (= 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: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_32| |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_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_#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] {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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:21:17,007 INFO L290 TraceCheckUtils]: 23: Hoare triple {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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] {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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:21:17,008 INFO L290 TraceCheckUtils]: 24: Hoare triple {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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:21:17,011 INFO L272 TraceCheckUtils]: 25: Hoare triple {3021#(and (or (and (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) (+ main_~q~0 (* main_~b~0 main_~p~0 0))) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0)) (<= (div (+ (* (- 2) main_~x~0) main_~a~0) (- 2)) (+ (div (+ (- 1) main_~x~0) 2) 1))) (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:21:17,011 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:21:17,011 INFO L290 TraceCheckUtils]: 27: Hoare triple {3053#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2966#false} is VALID [2022-04-28 07:21:17,011 INFO L290 TraceCheckUtils]: 28: Hoare triple {2966#false} assume !false; {2966#false} is VALID [2022-04-28 07:21:17,012 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-28 07:21:17,012 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:21:17,428 INFO L290 TraceCheckUtils]: 28: Hoare triple {2966#false} assume !false; {2966#false} is VALID [2022-04-28 07:21:17,429 INFO L290 TraceCheckUtils]: 27: Hoare triple {3053#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2966#false} is VALID [2022-04-28 07:21:17,429 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:21:17,430 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:21:17,430 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 < 20);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:21:17,431 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:21:17,431 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: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_32| |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_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_#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:21:17,431 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:21:17,432 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:21:17,432 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:21:17,433 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: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_26| |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_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_#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:21:17,433 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:21:17,451 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: (let ((.cse3 (= 0 v_main_~b~0_37)) (.cse2 (= (mod v_main_~b~0_37 2) 0)) (.cse6 (= (* 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))) (.cse4 (<= 0 v_main_~a~0_38)) (.cse5 (< v_~counter~0_29 20)) (.cse0 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse1 (= v_~counter~0_29 v_~counter~0_28)) (.cse7 (= |v_main_#t~post6_23| |v_main_#t~post6_15|)) (.cse8 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and .cse0 .cse1 (or (not .cse2) .cse3 (not .cse4) (not (= (mod v_main_~a~0_38 2) 1)) (not .cse5) (not .cse6)) .cse7 .cse8) (and (not .cse3) (= (+ 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))) .cse2 (< v_~counter~0_29 v_~counter~0_28) .cse6 (= (+ 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)) .cse4 .cse5) (and .cse0 (= v_main_~p~0_29 v_main_~p~0_29) (= v_main_~b~0_37 v_main_~b~0_37) .cse1 .cse7 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse8))) 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_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_~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:21:17,452 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:21:17,457 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: (let ((.cse2 (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (let ((.cse7 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse8 (= |v_main_#t~post6_20| |v_main_#t~post6_15|)) (.cse9 (= v_~counter~0_29 v_~counter~0_28)) (.cse1 (= (mod v_main_~b~0_37 2) 0)) (.cse0 (= 0 v_main_~b~0_37)) (.cse5 (<= 0 v_main_~a~0_38)) (.cse3 (= (mod v_main_~a~0_38 2) 1)) (.cse6 (< v_~counter~0_29 20)) (.cse4 (= (* v_main_~x~0_22 v_main_~y~0_26) .cse2)) (.cse10 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and (not .cse0) .cse1 (< v_main_~a~0_37 v_main_~a~0_38) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_main_~a~0_37 v_main_~b~0_37)) .cse2) .cse3 (< v_main_~a~0_38 (+ 2 v_main_~a~0_37)) .cse4 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) .cse5 .cse6) (and .cse7 (= v_main_~p~0_29 v_main_~p~0_29) .cse8 (= v_main_~b~0_37 v_main_~b~0_37) .cse9 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse10) (and .cse7 .cse8 .cse9 (or (not .cse1) .cse0 (not .cse5) (not .cse3) (not .cse6) (not .cse4)) .cse10)))) 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_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_~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:21:17,458 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:21:17,459 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:21:17,459 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:21:17,459 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2965#true} {2965#true} #69#return; {2965#true} is VALID [2022-04-28 07:21:17,459 INFO L290 TraceCheckUtils]: 9: Hoare triple {2965#true} assume true; {2965#true} is VALID [2022-04-28 07:21:17,459 INFO L290 TraceCheckUtils]: 8: Hoare triple {2965#true} assume !(0 == ~cond); {2965#true} is VALID [2022-04-28 07:21:17,460 INFO L290 TraceCheckUtils]: 7: Hoare triple {2965#true} ~cond := #in~cond; {2965#true} is VALID [2022-04-28 07:21:17,460 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:21:17,460 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:21:17,460 INFO L272 TraceCheckUtils]: 4: Hoare triple {2965#true} call #t~ret7 := main(); {2965#true} is VALID [2022-04-28 07:21:17,460 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2965#true} {2965#true} #77#return; {2965#true} is VALID [2022-04-28 07:21:17,460 INFO L290 TraceCheckUtils]: 2: Hoare triple {2965#true} assume true; {2965#true} is VALID [2022-04-28 07:21:17,460 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:21:17,460 INFO L272 TraceCheckUtils]: 0: Hoare triple {2965#true} call ULTIMATE.init(); {2965#true} is VALID [2022-04-28 07:21:17,460 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:21:17,460 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:21:17,461 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1391148902] [2022-04-28 07:21:17,461 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:21:17,461 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1446406264] [2022-04-28 07:21:17,461 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1446406264] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 07:21:17,461 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 07:21:17,461 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-28 07:21:18,006 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:21:18,006 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1723960552] [2022-04-28 07:21:18,006 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1723960552] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:21:18,006 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:21:18,006 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 07:21:18,006 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1201244659] [2022-04-28 07:21:18,006 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:21:18,006 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:21:18,007 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:21:18,007 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:21:18,032 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:21:18,032 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 07:21:18,032 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:18,033 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 07:21:18,033 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=189, Unknown=0, NotChecked=0, Total=240 [2022-04-28 07:21:18,033 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:21:19,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:19,200 INFO L93 Difference]: Finished difference Result 73 states and 91 transitions. [2022-04-28 07:21:19,200 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 07:21:19,200 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:21:19,200 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:21:19,200 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:21:19,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 44 transitions. [2022-04-28 07:21:19,201 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:21:19,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 44 transitions. [2022-04-28 07:21:19,202 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 44 transitions. [2022-04-28 07:21:19,262 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:21:19,263 INFO L225 Difference]: With dead ends: 73 [2022-04-28 07:21:19,263 INFO L226 Difference]: Without dead ends: 71 [2022-04-28 07:21:19,263 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 52 SyntacticMatches, 4 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 72 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=51, Invalid=189, Unknown=0, NotChecked=0, Total=240 [2022-04-28 07:21:19,264 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:21:19,264 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:21:19,264 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-28 07:21:19,355 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 66. [2022-04-28 07:21:19,355 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:21:19,356 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:21:19,356 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:21:19,356 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:21:19,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:19,358 INFO L93 Difference]: Finished difference Result 71 states and 89 transitions. [2022-04-28 07:21:19,358 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-28 07:21:19,358 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:19,358 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:19,359 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:21:19,359 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:21:19,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:19,361 INFO L93 Difference]: Finished difference Result 71 states and 89 transitions. [2022-04-28 07:21:19,361 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-28 07:21:19,361 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:19,361 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:19,361 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:21:19,361 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:21:19,361 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:21:19,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 83 transitions. [2022-04-28 07:21:19,363 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 83 transitions. Word has length 28 [2022-04-28 07:21:19,363 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:21:19,363 INFO L495 AbstractCegarLoop]: Abstraction has 66 states and 83 transitions. [2022-04-28 07:21:19,363 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:21:19,363 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 66 states and 83 transitions. [2022-04-28 07:21:21,580 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:21:21,580 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 83 transitions. [2022-04-28 07:21:21,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 07:21:21,581 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:21:21,581 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:21:21,598 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 07:21:21,781 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:21:21,781 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:21:21,782 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:21:21,782 INFO L85 PathProgramCache]: Analyzing trace with hash 1680888588, now seen corresponding path program 1 times [2022-04-28 07:21:21,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:21,782 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1045409288] [2022-04-28 07:21:27,842 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:27,842 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-28 07:21:27,842 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-28 07:21:27,842 INFO L85 PathProgramCache]: Analyzing trace with hash 1680888588, now seen corresponding path program 2 times [2022-04-28 07:21:27,842 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:21:27,842 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [285189572] [2022-04-28 07:21:27,842 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:21:27,843 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:21:27,857 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:21:27,857 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1434759859] [2022-04-28 07:21:27,857 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:21:27,857 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:21:27,857 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:21:27,858 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:21:27,858 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:21:27,892 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:21:27,893 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:21:27,893 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 07:21:27,906 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:21:27,907 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:21:28,222 INFO L272 TraceCheckUtils]: 0: Hoare triple {3574#true} call ULTIMATE.init(); {3574#true} is VALID [2022-04-28 07:21:28,223 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:21:28,223 INFO L290 TraceCheckUtils]: 2: Hoare triple {3574#true} assume true; {3574#true} is VALID [2022-04-28 07:21:28,223 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3574#true} {3574#true} #77#return; {3574#true} is VALID [2022-04-28 07:21:28,223 INFO L272 TraceCheckUtils]: 4: Hoare triple {3574#true} call #t~ret7 := main(); {3574#true} is VALID [2022-04-28 07:21:28,223 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:21:28,223 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:21:28,224 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:21:28,224 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:21:28,224 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:21:28,225 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:21:28,225 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:21:28,226 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:21:28,226 INFO L290 TraceCheckUtils]: 13: Hoare triple {3615#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {3615#(<= 1 main_~b~0)} is VALID [2022-04-28 07:21:28,226 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:21:28,226 INFO L290 TraceCheckUtils]: 15: Hoare triple {3574#true} ~cond := #in~cond; {3574#true} is VALID [2022-04-28 07:21:28,226 INFO L290 TraceCheckUtils]: 16: Hoare triple {3574#true} assume !(0 == ~cond); {3574#true} is VALID [2022-04-28 07:21:28,226 INFO L290 TraceCheckUtils]: 17: Hoare triple {3574#true} assume true; {3574#true} is VALID [2022-04-28 07:21:28,227 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:21:28,227 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:21:28,229 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:21:28,229 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:21:28,230 INFO L290 TraceCheckUtils]: 22: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume !!(#t~post6 < 20);havoc #t~post6; {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-28 07:21:28,230 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:21:28,230 INFO L290 TraceCheckUtils]: 24: Hoare triple {3574#true} ~cond := #in~cond; {3574#true} is VALID [2022-04-28 07:21:28,230 INFO L290 TraceCheckUtils]: 25: Hoare triple {3574#true} assume !(0 == ~cond); {3574#true} is VALID [2022-04-28 07:21:28,230 INFO L290 TraceCheckUtils]: 26: Hoare triple {3574#true} assume true; {3574#true} is VALID [2022-04-28 07:21:28,231 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:21:28,231 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:21:28,231 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:21:28,231 INFO L290 TraceCheckUtils]: 30: Hoare triple {3575#false} ~cond := #in~cond; {3575#false} is VALID [2022-04-28 07:21:28,231 INFO L290 TraceCheckUtils]: 31: Hoare triple {3575#false} assume 0 == ~cond; {3575#false} is VALID [2022-04-28 07:21:28,231 INFO L290 TraceCheckUtils]: 32: Hoare triple {3575#false} assume !false; {3575#false} is VALID [2022-04-28 07:21:28,231 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:21:28,232 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:21:28,232 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:21:28,232 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [285189572] [2022-04-28 07:21:28,232 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:21:28,232 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1434759859] [2022-04-28 07:21:28,232 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1434759859] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:21:28,232 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:21:28,232 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 07:21:28,232 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:21:28,232 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1045409288] [2022-04-28 07:21:28,232 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1045409288] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:21:28,232 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:21:28,233 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 07:21:28,233 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [624610113] [2022-04-28 07:21:28,233 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:21:28,233 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:21:28,233 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:21:28,233 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:21:28,256 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:21:28,257 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 07:21:28,257 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:28,257 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 07:21:28,257 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-04-28 07:21:28,257 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:21:28,612 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:28,612 INFO L93 Difference]: Finished difference Result 82 states and 104 transitions. [2022-04-28 07:21:28,612 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 07:21:28,612 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:21:28,613 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:21:28,613 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:21:28,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-28 07:21:28,620 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:21:28,623 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-28 07:21:28,623 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 65 transitions. [2022-04-28 07:21:28,666 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:21:28,667 INFO L225 Difference]: With dead ends: 82 [2022-04-28 07:21:28,667 INFO L226 Difference]: Without dead ends: 75 [2022-04-28 07:21:28,667 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:21:28,668 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:21:28,668 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:21:28,668 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2022-04-28 07:21:28,743 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 70. [2022-04-28 07:21:28,743 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:21:28,743 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:21:28,744 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:21:28,744 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:21:28,745 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:28,745 INFO L93 Difference]: Finished difference Result 75 states and 97 transitions. [2022-04-28 07:21:28,745 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 97 transitions. [2022-04-28 07:21:28,745 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:28,745 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:28,746 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:21:28,746 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:21:28,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:21:28,747 INFO L93 Difference]: Finished difference Result 75 states and 97 transitions. [2022-04-28 07:21:28,747 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 97 transitions. [2022-04-28 07:21:28,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:21:28,747 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:21:28,747 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:21:28,748 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:21:28,748 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:21:28,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 89 transitions. [2022-04-28 07:21:28,749 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 89 transitions. Word has length 33 [2022-04-28 07:21:28,749 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:21:28,749 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 89 transitions. [2022-04-28 07:21:28,749 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:21:28,749 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 89 transitions. [2022-04-28 07:21:30,945 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:21:30,945 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 89 transitions. [2022-04-28 07:21:30,946 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-28 07:21:30,946 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:21:30,946 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:21:30,962 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:21:31,153 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:21:31,153 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:21:31,154 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:21:31,154 INFO L85 PathProgramCache]: Analyzing trace with hash 368374993, now seen corresponding path program 1 times [2022-04-28 07:21:31,154 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:21:31,154 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [208997647] [2022-04-28 07:21:37,270 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:21:37,331 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:21:38,448 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:21:38,512 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:21:38,559 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:21:39,996 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:21:39,998 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 07:21:40,000 INFO L85 PathProgramCache]: Analyzing trace with hash -1745517901, now seen corresponding path program 1 times [2022-04-28 07:21:40,000 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:21:40,000 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1768714730] [2022-04-28 07:21:40,000 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:21:40,000 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:21:40,012 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:21:40,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1387124056] [2022-04-28 07:21:40,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:21:40,012 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:21:40,012 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:21:40,013 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:21:40,014 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:21:40,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:21:40,061 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-28 07:21:40,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:21:40,080 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:21:49,642 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 07:21:50,432 INFO L272 TraceCheckUtils]: 0: Hoare triple {4139#true} call ULTIMATE.init(); {4139#true} is VALID [2022-04-28 07:21:50,432 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:21:50,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {4139#true} assume true; {4139#true} is VALID [2022-04-28 07:21:50,432 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4139#true} {4139#true} #77#return; {4139#true} is VALID [2022-04-28 07:21:50,432 INFO L272 TraceCheckUtils]: 4: Hoare triple {4139#true} call #t~ret7 := main(); {4139#true} is VALID [2022-04-28 07:21:50,432 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:21:50,432 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:21:50,433 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:21:50,433 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:21:50,433 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:21:50,434 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:21:50,434 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:21:50,435 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_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, 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_68, 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:21:50,435 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:21:50,435 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: (and (= v_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71) (= |v_main_#t~post6_56| |v_main_#t~post6_51|) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_56|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_68, 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:21:50,436 INFO L290 TraceCheckUtils]: 15: Hoare triple {4180#(and (<= 1 main_~p~0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [96] 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:21:50,437 INFO L290 TraceCheckUtils]: 16: Hoare triple {4180#(and (<= 1 main_~p~0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [97] L46-2-->L33-1_primed: Formula: (let ((.cse0 (= |v_main_#t~post6_59| |v_main_#t~post6_51|)) (.cse7 (= v_main_~b~0_54 v_main_~b~0_53)) (.cse8 (= v_main_~q~0_72 v_main_~q~0_71)) (.cse9 (= v_~counter~0_69 v_~counter~0_68)) (.cse1 (= (+ 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))) (.cse3 (= (mod v_main_~b~0_54 2) 1)) (.cse6 (<= 0 v_main_~b~0_54)) (.cse2 (= 0 v_main_~a~0_83)) (.cse4 (< v_~counter~0_69 20))) (or (and .cse0 (or (not .cse1) .cse2 (not .cse3) (not .cse4) (not .cse5) (not .cse6)) .cse7 .cse8 .cse9) (and (= v_main_~a~0_83 v_main_~a~0_83) (= v_main_~y~0_39 v_main_~y~0_39) .cse0 .cse7 .cse8 (= v_main_~p~0_44 v_main_~p~0_44) (= v_main_~x~0_35 v_main_~x~0_35) .cse9) (and .cse1 .cse5 .cse3 (= (+ v_~counter~0_68 v_main_~b~0_53) (+ v_~counter~0_69 v_main_~b~0_54)) .cse6 (= (+ v_main_~q~0_72 (* v_main_~p~0_44 v_~counter~0_68 v_main_~a~0_83)) (+ v_main_~q~0_71 (* v_main_~p~0_44 v_~counter~0_69 v_main_~a~0_83))) (< v_~counter~0_69 v_~counter~0_68) (< v_~counter~0_68 (+ 2 v_~counter~0_69)) (not .cse2) .cse4))) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, 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_59|, main_~a~0=v_main_~a~0_83} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_68, 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] {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:21:50,438 INFO L290 TraceCheckUtils]: 17: Hoare triple {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [98] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:21:50,438 INFO L290 TraceCheckUtils]: 18: Hoare triple {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [99] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_62| |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) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_62|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_68, 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] {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:21:50,439 INFO L290 TraceCheckUtils]: 19: Hoare triple {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [100] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:21:50,440 INFO L290 TraceCheckUtils]: 20: Hoare triple {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [101] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_65| |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) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, 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_68, 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] {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:21:50,440 INFO L290 TraceCheckUtils]: 21: Hoare triple {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [102] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:21:50,442 INFO L290 TraceCheckUtils]: 22: Hoare triple {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [103] L46-2-->L33-1_primed: Formula: (let ((.cse0 (= |v_main_#t~post6_68| |v_main_#t~post6_51|)) (.cse1 (= v_main_~b~0_54 v_main_~b~0_53)) (.cse2 (= v_main_~q~0_72 v_main_~q~0_71)) (.cse3 (= v_~counter~0_69 v_~counter~0_68)) (.cse4 (= (+ 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))) (.cse8 (= 0 (mod v_main_~a~0_83 2))) (.cse6 (= (mod v_main_~b~0_54 2) 1)) (.cse9 (<= 0 v_main_~b~0_54)) (.cse5 (= 0 v_main_~a~0_83)) (.cse7 (< v_~counter~0_69 20))) (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 (= v_main_~p~0_44 v_main_~p~0_44) (= v_main_~x~0_35 v_main_~x~0_35) .cse3) (and (or (not .cse4) .cse5 (not .cse6) (not .cse7) (not .cse8) (not .cse9)) .cse0 .cse1 .cse2 .cse3) (and .cse4 .cse8 .cse6 (= (+ v_~counter~0_68 v_main_~b~0_53) (+ v_~counter~0_69 v_main_~b~0_54)) .cse9 (= (+ v_main_~q~0_72 (* v_main_~p~0_44 v_~counter~0_68 v_main_~a~0_83)) (+ v_main_~q~0_71 (* v_main_~p~0_44 v_~counter~0_69 v_main_~a~0_83))) (< v_~counter~0_69 v_~counter~0_68) (< v_~counter~0_68 (+ 2 v_~counter~0_69)) (not .cse5) .cse7))) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, 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_68|, main_~a~0=v_main_~a~0_83} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_68, 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] {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:21:50,443 INFO L290 TraceCheckUtils]: 23: Hoare triple {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~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] {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:21:50,443 INFO L290 TraceCheckUtils]: 24: Hoare triple {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:21:50,443 INFO L272 TraceCheckUtils]: 25: Hoare triple {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= 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)); {4139#true} is VALID [2022-04-28 07:21:50,444 INFO L290 TraceCheckUtils]: 26: Hoare triple {4139#true} ~cond := #in~cond; {4227#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:21:50,444 INFO L290 TraceCheckUtils]: 27: Hoare triple {4227#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:21:50,444 INFO L290 TraceCheckUtils]: 28: Hoare triple {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:21:52,450 WARN L284 TraceCheckUtils]: 29: Hoare quadruple {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} {4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} #71#return; {4238#(and (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)))) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is UNKNOWN [2022-04-28 07:21:52,451 INFO L290 TraceCheckUtils]: 30: Hoare triple {4238#(and (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)))) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} assume !(0 != ~a~0 && 0 != ~b~0); {4242#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-28 07:21:52,452 INFO L272 TraceCheckUtils]: 31: Hoare triple {4242#(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)); {4246#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:21:52,452 INFO L290 TraceCheckUtils]: 32: Hoare triple {4246#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4250#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:21:52,452 INFO L290 TraceCheckUtils]: 33: Hoare triple {4250#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4140#false} is VALID [2022-04-28 07:21:52,452 INFO L290 TraceCheckUtils]: 34: Hoare triple {4140#false} assume !false; {4140#false} is VALID [2022-04-28 07:21:52,453 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 1 proven. 18 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-28 07:21:52,453 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:22:22,415 INFO L290 TraceCheckUtils]: 34: Hoare triple {4140#false} assume !false; {4140#false} is VALID [2022-04-28 07:22:22,415 INFO L290 TraceCheckUtils]: 33: Hoare triple {4250#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4140#false} is VALID [2022-04-28 07:22:22,416 INFO L290 TraceCheckUtils]: 32: Hoare triple {4246#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4250#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:22:22,416 INFO L272 TraceCheckUtils]: 31: Hoare triple {4266#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4246#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:22:22,417 INFO L290 TraceCheckUtils]: 30: Hoare triple {4270#(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); {4266#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-28 07:22:22,419 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} {4139#true} #71#return; {4270#(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:22:22,419 INFO L290 TraceCheckUtils]: 28: Hoare triple {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:22:22,420 INFO L290 TraceCheckUtils]: 27: Hoare triple {4283#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 07:22:22,420 INFO L290 TraceCheckUtils]: 26: Hoare triple {4139#true} ~cond := #in~cond; {4283#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 07:22:22,420 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:22:22,420 INFO L290 TraceCheckUtils]: 24: Hoare triple {4139#true} assume !!(#t~post6 < 20);havoc #t~post6; {4139#true} is VALID [2022-04-28 07:22:22,420 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:22:22,421 INFO L290 TraceCheckUtils]: 22: Hoare triple {4139#true} [103] L46-2-->L33-1_primed: Formula: (let ((.cse0 (= |v_main_#t~post6_68| |v_main_#t~post6_51|)) (.cse1 (= v_main_~b~0_54 v_main_~b~0_53)) (.cse2 (= v_main_~q~0_72 v_main_~q~0_71)) (.cse3 (= v_~counter~0_69 v_~counter~0_68)) (.cse4 (= (+ 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))) (.cse8 (= 0 (mod v_main_~a~0_83 2))) (.cse6 (= (mod v_main_~b~0_54 2) 1)) (.cse9 (<= 0 v_main_~b~0_54)) (.cse5 (= 0 v_main_~a~0_83)) (.cse7 (< v_~counter~0_69 20))) (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 (= v_main_~p~0_44 v_main_~p~0_44) (= v_main_~x~0_35 v_main_~x~0_35) .cse3) (and (or (not .cse4) .cse5 (not .cse6) (not .cse7) (not .cse8) (not .cse9)) .cse0 .cse1 .cse2 .cse3) (and .cse4 .cse8 .cse6 (= (+ v_~counter~0_68 v_main_~b~0_53) (+ v_~counter~0_69 v_main_~b~0_54)) .cse9 (= (+ v_main_~q~0_72 (* v_main_~p~0_44 v_~counter~0_68 v_main_~a~0_83)) (+ v_main_~q~0_71 (* v_main_~p~0_44 v_~counter~0_69 v_main_~a~0_83))) (< v_~counter~0_69 v_~counter~0_68) (< v_~counter~0_68 (+ 2 v_~counter~0_69)) (not .cse5) .cse7))) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, 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_68|, main_~a~0=v_main_~a~0_83} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_68, 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:22:22,421 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:22:22,421 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_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, 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_68, 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:22:22,421 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:22:22,421 INFO L290 TraceCheckUtils]: 18: Hoare triple {4139#true} [99] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_62| |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) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_62|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_68, 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:22:22,421 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:22:22,421 INFO L290 TraceCheckUtils]: 16: Hoare triple {4139#true} [97] L46-2-->L33-1_primed: Formula: (let ((.cse0 (= |v_main_#t~post6_59| |v_main_#t~post6_51|)) (.cse7 (= v_main_~b~0_54 v_main_~b~0_53)) (.cse8 (= v_main_~q~0_72 v_main_~q~0_71)) (.cse9 (= v_~counter~0_69 v_~counter~0_68)) (.cse1 (= (+ 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))) (.cse3 (= (mod v_main_~b~0_54 2) 1)) (.cse6 (<= 0 v_main_~b~0_54)) (.cse2 (= 0 v_main_~a~0_83)) (.cse4 (< v_~counter~0_69 20))) (or (and .cse0 (or (not .cse1) .cse2 (not .cse3) (not .cse4) (not .cse5) (not .cse6)) .cse7 .cse8 .cse9) (and (= v_main_~a~0_83 v_main_~a~0_83) (= v_main_~y~0_39 v_main_~y~0_39) .cse0 .cse7 .cse8 (= v_main_~p~0_44 v_main_~p~0_44) (= v_main_~x~0_35 v_main_~x~0_35) .cse9) (and .cse1 .cse5 .cse3 (= (+ v_~counter~0_68 v_main_~b~0_53) (+ v_~counter~0_69 v_main_~b~0_54)) .cse6 (= (+ v_main_~q~0_72 (* v_main_~p~0_44 v_~counter~0_68 v_main_~a~0_83)) (+ v_main_~q~0_71 (* v_main_~p~0_44 v_~counter~0_69 v_main_~a~0_83))) (< v_~counter~0_69 v_~counter~0_68) (< v_~counter~0_68 (+ 2 v_~counter~0_69)) (not .cse2) .cse4))) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, 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_59|, main_~a~0=v_main_~a~0_83} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_68, 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:22:22,421 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:22:22,421 INFO L290 TraceCheckUtils]: 14: Hoare triple {4139#true} [95] L46-2-->L33-1_primed: Formula: (and (= v_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71) (= |v_main_#t~post6_56| |v_main_#t~post6_51|) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_54, main_#t~post6=|v_main_#t~post6_56|} OutVars{main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_68, 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:22:22,422 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:22:22,422 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_main_~b~0_54 v_main_~b~0_53) (= v_main_~q~0_72 v_main_~q~0_71) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_72, ~counter~0=v_~counter~0_69, 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_68, 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:22:22,422 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:22:22,422 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4139#true} {4139#true} #69#return; {4139#true} is VALID [2022-04-28 07:22:22,422 INFO L290 TraceCheckUtils]: 9: Hoare triple {4139#true} assume true; {4139#true} is VALID [2022-04-28 07:22:22,422 INFO L290 TraceCheckUtils]: 8: Hoare triple {4139#true} assume !(0 == ~cond); {4139#true} is VALID [2022-04-28 07:22:22,422 INFO L290 TraceCheckUtils]: 7: Hoare triple {4139#true} ~cond := #in~cond; {4139#true} is VALID [2022-04-28 07:22:22,422 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:22:22,422 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:22:22,422 INFO L272 TraceCheckUtils]: 4: Hoare triple {4139#true} call #t~ret7 := main(); {4139#true} is VALID [2022-04-28 07:22:22,422 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4139#true} {4139#true} #77#return; {4139#true} is VALID [2022-04-28 07:22:22,423 INFO L290 TraceCheckUtils]: 2: Hoare triple {4139#true} assume true; {4139#true} is VALID [2022-04-28 07:22:22,423 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:22:22,423 INFO L272 TraceCheckUtils]: 0: Hoare triple {4139#true} call ULTIMATE.init(); {4139#true} is VALID [2022-04-28 07:22:22,423 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:22:22,423 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:22:22,423 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1768714730] [2022-04-28 07:22:22,423 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:22:22,423 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1387124056] [2022-04-28 07:22:22,423 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1387124056] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:22:22,423 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:22:22,423 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 8] total 16 [2022-04-28 07:22:26,918 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:22:26,918 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [208997647] [2022-04-28 07:22:26,918 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [208997647] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:22:26,918 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:22:26,918 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-28 07:22:26,918 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1246969036] [2022-04-28 07:22:26,918 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:22:26,919 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:22:26,919 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:22:26,920 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:22:28,942 WARN L143 InductivityCheck]: Transition 4371#(and (= (mod (+ main_~b~0 1) 2) 1) (= (mod main_~a~0 2) 0) (< ~counter~0 21) (<= 0 (+ main_~b~0 1)) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (not (= main_~a~0 0))) ( _ , #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; , 4196#(and (<= 1 main_~p~0) (or (and (= (mod main_~a~0 2) 0) (not (= main_~a~0 0)) (< (div (+ (* (- 1) main_~y~0) 1) (- 2)) (+ (div main_~b~0 2) 1))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0)) ) not inductive [2022-04-28 07:22:28,957 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-28 07:22:29,142 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:22:29,143 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:22:29,146 INFO L158 Benchmark]: Toolchain (without parser) took 221352.67ms. Allocated memory was 189.8MB in the beginning and 275.8MB in the end (delta: 86.0MB). Free memory was 141.8MB in the beginning and 234.7MB in the end (delta: -92.9MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 07:22:29,146 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 189.8MB. Free memory is still 158.5MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 07:22:29,146 INFO L158 Benchmark]: CACSL2BoogieTranslator took 249.07ms. Allocated memory is still 189.8MB. Free memory was 141.5MB in the beginning and 166.3MB in the end (delta: -24.8MB). Peak memory consumption was 12.2MB. Max. memory is 8.0GB. [2022-04-28 07:22:29,146 INFO L158 Benchmark]: Boogie Preprocessor took 29.76ms. Allocated memory is still 189.8MB. Free memory was 166.3MB in the beginning and 165.1MB in the end (delta: 1.2MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-28 07:22:29,146 INFO L158 Benchmark]: RCFGBuilder took 256.86ms. Allocated memory is still 189.8MB. Free memory was 164.7MB in the beginning and 152.5MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-28 07:22:29,147 INFO L158 Benchmark]: TraceAbstraction took 220812.97ms. Allocated memory was 189.8MB in the beginning and 275.8MB in the end (delta: 86.0MB). Free memory was 151.6MB in the beginning and 234.7MB in the end (delta: -83.0MB). Peak memory consumption was 3.3MB. Max. memory is 8.0GB. [2022-04-28 07:22:29,148 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.08ms. Allocated memory is still 189.8MB. Free memory is still 158.5MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 249.07ms. Allocated memory is still 189.8MB. Free memory was 141.5MB in the beginning and 166.3MB in the end (delta: -24.8MB). Peak memory consumption was 12.2MB. Max. memory is 8.0GB. * Boogie Preprocessor took 29.76ms. Allocated memory is still 189.8MB. Free memory was 166.3MB in the beginning and 165.1MB in the end (delta: 1.2MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 256.86ms. Allocated memory is still 189.8MB. Free memory was 164.7MB in the beginning and 152.5MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 220812.97ms. Allocated memory was 189.8MB in the beginning and 275.8MB in the end (delta: 86.0MB). Free memory was 151.6MB in the beginning and 234.7MB in the end (delta: -83.0MB). Peak memory consumption was 3.3MB. 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:22:29,185 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...