/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/lcm2_valuebound1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 07:06:15,971 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 07:06:15,976 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 07:06:16,022 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 07:06:16,023 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 07:06:16,024 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 07:06:16,024 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 07:06:16,026 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 07:06:16,027 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 07:06:16,028 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 07:06:16,028 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 07:06:16,029 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 07:06:16,030 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 07:06:16,030 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 07:06:16,031 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 07:06:16,032 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 07:06:16,033 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 07:06:16,033 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 07:06:16,035 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 07:06:16,037 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 07:06:16,041 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 07:06:16,044 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 07:06:16,048 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 07:06:16,049 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 07:06:16,051 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 07:06:16,053 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 07:06:16,053 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 07:06:16,054 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 07:06:16,054 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 07:06:16,054 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 07:06:16,055 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 07:06:16,055 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 07:06:16,056 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 07:06:16,056 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 07:06:16,057 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 07:06:16,058 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 07:06:16,058 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 07:06:16,058 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 07:06:16,058 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 07:06:16,059 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 07:06:16,059 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 07:06:16,060 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 07:06:16,061 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:06:16,067 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 07:06:16,067 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 07:06:16,068 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 07:06:16,068 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 07:06:16,068 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 07:06:16,068 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 07:06:16,068 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 07:06:16,068 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 07:06:16,069 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 07:06:16,069 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 07:06:16,069 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 07:06:16,069 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 07:06:16,069 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 07:06:16,069 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 07:06:16,069 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 07:06:16,069 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 07:06:16,069 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 07:06:16,069 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 07:06:16,069 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 07:06:16,069 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 07:06:16,070 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 07:06:16,070 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 07:06:16,070 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 07:06:16,070 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 07:06:16,070 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 07:06:16,070 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:06:16,234 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 07:06:16,262 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 07:06:16,264 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 07:06:16,264 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 07:06:16,265 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 07:06:16,265 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/lcm2_valuebound1.c [2022-04-28 07:06:16,303 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1415e6729/c1b5d0107dd94a0b86659e437545eda1/FLAG6ae828d41 [2022-04-28 07:06:16,707 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 07:06:16,707 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/lcm2_valuebound1.c [2022-04-28 07:06:16,711 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1415e6729/c1b5d0107dd94a0b86659e437545eda1/FLAG6ae828d41 [2022-04-28 07:06:16,719 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1415e6729/c1b5d0107dd94a0b86659e437545eda1 [2022-04-28 07:06:16,721 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 07:06:16,722 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 07:06:16,723 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 07:06:16,723 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 07:06:16,725 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 07:06:16,725 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 07:06:16" (1/1) ... [2022-04-28 07:06:16,726 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@9b91be2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16, skipping insertion in model container [2022-04-28 07:06:16,726 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 07:06:16" (1/1) ... [2022-04-28 07:06:16,730 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 07:06:16,738 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 07:06:16,921 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/lcm2_valuebound1.c[537,550] [2022-04-28 07:06:16,933 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 07:06:16,953 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 07:06:16,965 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/lcm2_valuebound1.c[537,550] [2022-04-28 07:06:16,973 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 07:06:16,984 INFO L208 MainTranslator]: Completed translation [2022-04-28 07:06:16,984 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16 WrapperNode [2022-04-28 07:06:16,984 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 07:06:16,985 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 07:06:16,985 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 07:06:16,985 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 07:06:16,992 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16" (1/1) ... [2022-04-28 07:06:16,992 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16" (1/1) ... [2022-04-28 07:06:16,997 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16" (1/1) ... [2022-04-28 07:06:16,998 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16" (1/1) ... [2022-04-28 07:06:17,007 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16" (1/1) ... [2022-04-28 07:06:17,011 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16" (1/1) ... [2022-04-28 07:06:17,016 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16" (1/1) ... [2022-04-28 07:06:17,018 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 07:06:17,019 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 07:06:17,020 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 07:06:17,020 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 07:06:17,020 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16" (1/1) ... [2022-04-28 07:06:17,025 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 07:06:17,030 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:06:17,051 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:06:17,069 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:06:17,077 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 07:06:17,077 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 07:06:17,077 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 07:06:17,078 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 07:06:17,078 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 07:06:17,078 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 07:06:17,078 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 07:06:17,078 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 07:06:17,078 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 07:06:17,078 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 07:06:17,078 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-28 07:06:17,079 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 07:06:17,079 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 07:06:17,079 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 07:06:17,079 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 07:06:17,080 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 07:06:17,080 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 07:06:17,080 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 07:06:17,080 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 07:06:17,080 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 07:06:17,124 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 07:06:17,125 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 07:06:17,269 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 07:06:17,274 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 07:06:17,274 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 07:06:17,275 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 07:06:17 BoogieIcfgContainer [2022-04-28 07:06:17,275 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 07:06:17,276 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 07:06:17,276 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 07:06:17,279 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 07:06:17,279 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 07:06:16" (1/3) ... [2022-04-28 07:06:17,279 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@332250a1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 07:06:17, skipping insertion in model container [2022-04-28 07:06:17,279 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 07:06:16" (2/3) ... [2022-04-28 07:06:17,280 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@332250a1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 07:06:17, skipping insertion in model container [2022-04-28 07:06:17,280 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 07:06:17" (3/3) ... [2022-04-28 07:06:17,281 INFO L111 eAbstractionObserver]: Analyzing ICFG lcm2_valuebound1.c [2022-04-28 07:06:17,289 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 07:06:17,289 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 07:06:17,338 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 07:06:17,342 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@4ed2786d, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@699be7dc [2022-04-28 07:06:17,342 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 07:06:17,357 INFO L276 IsEmpty]: Start isEmpty. Operand has 34 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 07:06:17,363 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 07:06:17,363 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:06:17,364 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:06:17,364 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:06:17,370 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:06:17,370 INFO L85 PathProgramCache]: Analyzing trace with hash 1830914611, now seen corresponding path program 1 times [2022-04-28 07:06:17,375 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:06:17,376 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [237147908] [2022-04-28 07:06:17,384 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:06:17,384 INFO L85 PathProgramCache]: Analyzing trace with hash 1830914611, now seen corresponding path program 2 times [2022-04-28 07:06:17,386 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:06:17,387 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1093190534] [2022-04-28 07:06:17,387 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:06:17,388 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:06:17,480 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:17,541 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 07:06:17,554 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:17,569 INFO L290 TraceCheckUtils]: 0: Hoare triple {66#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(7, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(109, 2, 2, 1);call write~init~int(50, 2, 3, 1);call write~init~int(46, 2, 4, 1);call write~init~int(99, 2, 5, 1);call write~init~int(0, 2, 6, 1);call #Ultimate.allocInit(12, 3); {37#true} is VALID [2022-04-28 07:06:17,570 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume true; {37#true} is VALID [2022-04-28 07:06:17,570 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {37#true} {37#true} #79#return; {37#true} is VALID [2022-04-28 07:06:17,570 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 07:06:17,574 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:17,582 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,582 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,583 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,583 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {37#true} #63#return; {38#false} is VALID [2022-04-28 07:06:17,583 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 07:06:17,589 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:17,596 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,597 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,597 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,597 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #65#return; {38#false} is VALID [2022-04-28 07:06:17,597 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 07:06:17,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:17,606 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,607 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,607 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,607 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #67#return; {38#false} is VALID [2022-04-28 07:06:17,607 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 07:06:17,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:17,621 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,621 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,622 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,623 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #69#return; {38#false} is VALID [2022-04-28 07:06:17,624 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-28 07:06:17,626 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:17,632 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,632 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,633 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,633 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #71#return; {38#false} is VALID [2022-04-28 07:06:17,633 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 32 [2022-04-28 07:06:17,636 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:17,654 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,654 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,655 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,655 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #73#return; {38#false} is VALID [2022-04-28 07:06:17,656 INFO L272 TraceCheckUtils]: 0: Hoare triple {37#true} call ULTIMATE.init(); {66#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 07:06:17,656 INFO L290 TraceCheckUtils]: 1: Hoare triple {66#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(7, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(109, 2, 2, 1);call write~init~int(50, 2, 3, 1);call write~init~int(46, 2, 4, 1);call write~init~int(99, 2, 5, 1);call write~init~int(0, 2, 6, 1);call #Ultimate.allocInit(12, 3); {37#true} is VALID [2022-04-28 07:06:17,656 INFO L290 TraceCheckUtils]: 2: Hoare triple {37#true} assume true; {37#true} is VALID [2022-04-28 07:06:17,656 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37#true} {37#true} #79#return; {37#true} is VALID [2022-04-28 07:06:17,656 INFO L272 TraceCheckUtils]: 4: Hoare triple {37#true} call #t~ret6 := main(); {37#true} is VALID [2022-04-28 07:06:17,657 INFO L290 TraceCheckUtils]: 5: Hoare triple {37#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~u~0;havoc ~v~0;~a~0 := #t~nondet4;havoc #t~nondet4; {37#true} is VALID [2022-04-28 07:06:17,657 INFO L272 TraceCheckUtils]: 6: Hoare triple {37#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {37#true} is VALID [2022-04-28 07:06:17,657 INFO L290 TraceCheckUtils]: 7: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,658 INFO L290 TraceCheckUtils]: 8: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,658 INFO L290 TraceCheckUtils]: 9: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,660 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38#false} {37#true} #63#return; {38#false} is VALID [2022-04-28 07:06:17,660 INFO L290 TraceCheckUtils]: 11: Hoare triple {38#false} ~b~0 := #t~nondet5;havoc #t~nondet5; {38#false} is VALID [2022-04-28 07:06:17,661 INFO L272 TraceCheckUtils]: 12: Hoare triple {38#false} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {37#true} is VALID [2022-04-28 07:06:17,661 INFO L290 TraceCheckUtils]: 13: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,661 INFO L290 TraceCheckUtils]: 14: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,661 INFO L290 TraceCheckUtils]: 15: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,661 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {38#false} {38#false} #65#return; {38#false} is VALID [2022-04-28 07:06:17,662 INFO L272 TraceCheckUtils]: 17: Hoare triple {38#false} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {37#true} is VALID [2022-04-28 07:06:17,662 INFO L290 TraceCheckUtils]: 18: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,662 INFO L290 TraceCheckUtils]: 19: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,662 INFO L290 TraceCheckUtils]: 20: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,663 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38#false} {38#false} #67#return; {38#false} is VALID [2022-04-28 07:06:17,663 INFO L272 TraceCheckUtils]: 22: Hoare triple {38#false} call assume_abort_if_not((if ~b~0 % 4294967296 >= 1 then 1 else 0)); {37#true} is VALID [2022-04-28 07:06:17,663 INFO L290 TraceCheckUtils]: 23: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,663 INFO L290 TraceCheckUtils]: 24: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,663 INFO L290 TraceCheckUtils]: 25: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,664 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38#false} {38#false} #69#return; {38#false} is VALID [2022-04-28 07:06:17,664 INFO L272 TraceCheckUtils]: 27: Hoare triple {38#false} call assume_abort_if_not((if ~a~0 % 4294967296 <= 65535 then 1 else 0)); {37#true} is VALID [2022-04-28 07:06:17,664 INFO L290 TraceCheckUtils]: 28: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,664 INFO L290 TraceCheckUtils]: 29: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,664 INFO L290 TraceCheckUtils]: 30: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,665 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {38#false} {38#false} #71#return; {38#false} is VALID [2022-04-28 07:06:17,665 INFO L272 TraceCheckUtils]: 32: Hoare triple {38#false} call assume_abort_if_not((if ~b~0 % 4294967296 <= 65535 then 1 else 0)); {37#true} is VALID [2022-04-28 07:06:17,665 INFO L290 TraceCheckUtils]: 33: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-28 07:06:17,665 INFO L290 TraceCheckUtils]: 34: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-28 07:06:17,665 INFO L290 TraceCheckUtils]: 35: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-28 07:06:17,666 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {38#false} {38#false} #73#return; {38#false} is VALID [2022-04-28 07:06:17,666 INFO L290 TraceCheckUtils]: 37: Hoare triple {38#false} ~x~0 := ~a~0;~y~0 := ~b~0;~u~0 := ~b~0;~v~0 := ~a~0; {38#false} is VALID [2022-04-28 07:06:17,666 INFO L290 TraceCheckUtils]: 38: Hoare triple {38#false} assume !true; {38#false} is VALID [2022-04-28 07:06:17,666 INFO L272 TraceCheckUtils]: 39: Hoare triple {38#false} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {38#false} is VALID [2022-04-28 07:06:17,666 INFO L290 TraceCheckUtils]: 40: Hoare triple {38#false} ~cond := #in~cond; {38#false} is VALID [2022-04-28 07:06:17,666 INFO L290 TraceCheckUtils]: 41: Hoare triple {38#false} assume 0 == ~cond; {38#false} is VALID [2022-04-28 07:06:17,667 INFO L290 TraceCheckUtils]: 42: Hoare triple {38#false} assume !false; {38#false} is VALID [2022-04-28 07:06:17,667 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-28 07:06:17,667 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:06:17,668 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1093190534] [2022-04-28 07:06:17,668 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1093190534] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:06:17,668 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:06:17,668 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 07:06:17,670 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:06:17,670 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [237147908] [2022-04-28 07:06:17,671 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [237147908] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:06:17,671 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:06:17,671 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 07:06:17,671 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1947265584] [2022-04-28 07:06:17,671 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:06:17,675 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 43 [2022-04-28 07:06:17,676 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:06:17,678 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 07:06:17,703 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:06:17,703 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 07:06:17,703 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:06:17,715 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 07:06:17,716 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 07:06:17,718 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 07:06:17,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:17,832 INFO L93 Difference]: Finished difference Result 61 states and 90 transitions. [2022-04-28 07:06:17,832 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 07:06:17,833 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 43 [2022-04-28 07:06:17,833 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:06:17,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 07:06:17,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 90 transitions. [2022-04-28 07:06:17,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 07:06:17,846 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 90 transitions. [2022-04-28 07:06:17,846 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 90 transitions. [2022-04-28 07:06:17,929 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:06:17,935 INFO L225 Difference]: With dead ends: 61 [2022-04-28 07:06:17,936 INFO L226 Difference]: Without dead ends: 29 [2022-04-28 07:06:17,937 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 21 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:06:17,940 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 18 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 36 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:06:17,940 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [26 Valid, 36 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 07:06:17,950 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-28 07:06:17,960 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-28 07:06:17,960 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:06:17,961 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:06:17,961 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:06:17,962 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:06:17,965 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:17,965 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2022-04-28 07:06:17,965 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-28 07:06:17,966 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:06:17,966 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:06:17,966 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 29 states. [2022-04-28 07:06:17,967 INFO L87 Difference]: Start difference. First operand has 29 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 29 states. [2022-04-28 07:06:17,969 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:17,969 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2022-04-28 07:06:17,970 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-28 07:06:17,970 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:06:17,970 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:06:17,970 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:06:17,970 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:06:17,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 07:06:17,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 36 transitions. [2022-04-28 07:06:17,974 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 36 transitions. Word has length 43 [2022-04-28 07:06:17,974 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:06:17,974 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 36 transitions. [2022-04-28 07:06:17,974 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 07:06:17,974 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 36 transitions. [2022-04-28 07:06:18,007 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:06:18,007 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-28 07:06:18,008 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 07:06:18,008 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:06:18,009 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:06:18,009 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 07:06:18,009 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:06:18,009 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:06:18,009 INFO L85 PathProgramCache]: Analyzing trace with hash 206107499, now seen corresponding path program 1 times [2022-04-28 07:06:18,010 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:06:18,010 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1063475110] [2022-04-28 07:06:18,010 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:06:18,010 INFO L85 PathProgramCache]: Analyzing trace with hash 206107499, now seen corresponding path program 2 times [2022-04-28 07:06:18,010 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:06:18,011 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [309865829] [2022-04-28 07:06:18,011 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:06:18,011 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:06:18,032 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:06:18,032 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1992237055] [2022-04-28 07:06:18,032 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:06:18,033 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:06:18,033 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:06:18,034 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:06:18,035 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:06:18,082 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 07:06:18,082 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:06:18,084 INFO L263 TraceCheckSpWp]: Trace formula consists of 82 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 07:06:18,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:18,097 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:06:18,468 INFO L272 TraceCheckUtils]: 0: Hoare triple {307#true} call ULTIMATE.init(); {307#true} is VALID [2022-04-28 07:06:18,468 INFO L290 TraceCheckUtils]: 1: Hoare triple {307#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(7, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(109, 2, 2, 1);call write~init~int(50, 2, 3, 1);call write~init~int(46, 2, 4, 1);call write~init~int(99, 2, 5, 1);call write~init~int(0, 2, 6, 1);call #Ultimate.allocInit(12, 3); {307#true} is VALID [2022-04-28 07:06:18,468 INFO L290 TraceCheckUtils]: 2: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-28 07:06:18,468 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {307#true} {307#true} #79#return; {307#true} is VALID [2022-04-28 07:06:18,469 INFO L272 TraceCheckUtils]: 4: Hoare triple {307#true} call #t~ret6 := main(); {307#true} is VALID [2022-04-28 07:06:18,469 INFO L290 TraceCheckUtils]: 5: Hoare triple {307#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~u~0;havoc ~v~0;~a~0 := #t~nondet4;havoc #t~nondet4; {307#true} is VALID [2022-04-28 07:06:18,469 INFO L272 TraceCheckUtils]: 6: Hoare triple {307#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {307#true} is VALID [2022-04-28 07:06:18,469 INFO L290 TraceCheckUtils]: 7: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-28 07:06:18,469 INFO L290 TraceCheckUtils]: 8: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-28 07:06:18,469 INFO L290 TraceCheckUtils]: 9: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-28 07:06:18,469 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {307#true} {307#true} #63#return; {307#true} is VALID [2022-04-28 07:06:18,469 INFO L290 TraceCheckUtils]: 11: Hoare triple {307#true} ~b~0 := #t~nondet5;havoc #t~nondet5; {307#true} is VALID [2022-04-28 07:06:18,470 INFO L272 TraceCheckUtils]: 12: Hoare triple {307#true} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {307#true} is VALID [2022-04-28 07:06:18,470 INFO L290 TraceCheckUtils]: 13: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-28 07:06:18,470 INFO L290 TraceCheckUtils]: 14: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-28 07:06:18,470 INFO L290 TraceCheckUtils]: 15: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-28 07:06:18,470 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {307#true} {307#true} #65#return; {307#true} is VALID [2022-04-28 07:06:18,470 INFO L272 TraceCheckUtils]: 17: Hoare triple {307#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {307#true} is VALID [2022-04-28 07:06:18,470 INFO L290 TraceCheckUtils]: 18: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-28 07:06:18,471 INFO L290 TraceCheckUtils]: 19: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-28 07:06:18,471 INFO L290 TraceCheckUtils]: 20: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-28 07:06:18,471 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {307#true} {307#true} #67#return; {307#true} is VALID [2022-04-28 07:06:18,471 INFO L272 TraceCheckUtils]: 22: Hoare triple {307#true} call assume_abort_if_not((if ~b~0 % 4294967296 >= 1 then 1 else 0)); {307#true} is VALID [2022-04-28 07:06:18,471 INFO L290 TraceCheckUtils]: 23: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-28 07:06:18,471 INFO L290 TraceCheckUtils]: 24: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-28 07:06:18,471 INFO L290 TraceCheckUtils]: 25: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-28 07:06:18,472 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {307#true} {307#true} #69#return; {307#true} is VALID [2022-04-28 07:06:18,472 INFO L272 TraceCheckUtils]: 27: Hoare triple {307#true} call assume_abort_if_not((if ~a~0 % 4294967296 <= 65535 then 1 else 0)); {307#true} is VALID [2022-04-28 07:06:18,472 INFO L290 TraceCheckUtils]: 28: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-28 07:06:18,472 INFO L290 TraceCheckUtils]: 29: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-28 07:06:18,472 INFO L290 TraceCheckUtils]: 30: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-28 07:06:18,472 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {307#true} {307#true} #71#return; {307#true} is VALID [2022-04-28 07:06:18,473 INFO L272 TraceCheckUtils]: 32: Hoare triple {307#true} call assume_abort_if_not((if ~b~0 % 4294967296 <= 65535 then 1 else 0)); {307#true} is VALID [2022-04-28 07:06:18,473 INFO L290 TraceCheckUtils]: 33: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-28 07:06:18,473 INFO L290 TraceCheckUtils]: 34: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-28 07:06:18,473 INFO L290 TraceCheckUtils]: 35: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-28 07:06:18,473 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {307#true} {307#true} #73#return; {307#true} is VALID [2022-04-28 07:06:18,474 INFO L290 TraceCheckUtils]: 37: Hoare triple {307#true} ~x~0 := ~a~0;~y~0 := ~b~0;~u~0 := ~b~0;~v~0 := ~a~0; {423#(and (= main_~a~0 main_~v~0) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:06:18,474 INFO L290 TraceCheckUtils]: 38: Hoare triple {423#(and (= main_~a~0 main_~v~0) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (= main_~a~0 main_~x~0))} assume !false; {423#(and (= main_~a~0 main_~v~0) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 07:06:18,475 INFO L272 TraceCheckUtils]: 39: Hoare triple {423#(and (= main_~a~0 main_~v~0) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {430#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 07:06:18,475 INFO L290 TraceCheckUtils]: 40: Hoare triple {430#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {434#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 07:06:18,476 INFO L290 TraceCheckUtils]: 41: Hoare triple {434#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {308#false} is VALID [2022-04-28 07:06:18,476 INFO L290 TraceCheckUtils]: 42: Hoare triple {308#false} assume !false; {308#false} is VALID [2022-04-28 07:06:18,476 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-28 07:06:18,476 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 07:06:18,476 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:06:18,477 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [309865829] [2022-04-28 07:06:18,477 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:06:18,477 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1992237055] [2022-04-28 07:06:18,477 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1992237055] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:06:18,477 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:06:18,477 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:06:18,478 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:06:18,478 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1063475110] [2022-04-28 07:06:18,478 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1063475110] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:06:18,478 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:06:18,478 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 07:06:18,478 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1090098403] [2022-04-28 07:06:18,478 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:06:18,479 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) Word has length 43 [2022-04-28 07:06:18,479 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:06:18,479 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 07:06:18,500 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:06:18,500 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 07:06:18,500 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:06:18,500 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 07:06:18,501 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 07:06:18,501 INFO L87 Difference]: Start difference. First operand 29 states and 36 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 07:06:18,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:18,643 INFO L93 Difference]: Finished difference Result 40 states and 49 transitions. [2022-04-28 07:06:18,643 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 07:06:18,643 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) Word has length 43 [2022-04-28 07:06:18,644 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:06:18,644 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 07:06:18,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 49 transitions. [2022-04-28 07:06:18,646 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 07:06:18,648 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 49 transitions. [2022-04-28 07:06:18,648 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 49 transitions. [2022-04-28 07:06:18,688 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:06:18,689 INFO L225 Difference]: With dead ends: 40 [2022-04-28 07:06:18,689 INFO L226 Difference]: Without dead ends: 37 [2022-04-28 07:06:18,690 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 39 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:06:18,691 INFO L413 NwaCegarLoop]: 30 mSDtfsCounter, 7 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 105 SdHoareTripleChecker+Invalid, 42 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 07:06:18,691 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 105 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 07:06:18,691 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-28 07:06:18,699 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 36. [2022-04-28 07:06:18,699 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:06:18,700 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 36 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:06:18,700 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 36 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:06:18,700 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 36 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:06:18,702 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:18,702 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-28 07:06:18,703 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 45 transitions. [2022-04-28 07:06:18,703 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:06:18,703 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:06:18,703 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 37 states. [2022-04-28 07:06:18,704 INFO L87 Difference]: Start difference. First operand has 36 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 37 states. [2022-04-28 07:06:18,705 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:18,706 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-28 07:06:18,706 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 45 transitions. [2022-04-28 07:06:18,706 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:06:18,706 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:06:18,706 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:06:18,706 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:06:18,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:06:18,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 43 transitions. [2022-04-28 07:06:18,708 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 43 transitions. Word has length 43 [2022-04-28 07:06:18,708 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:06:18,708 INFO L495 AbstractCegarLoop]: Abstraction has 36 states and 43 transitions. [2022-04-28 07:06:18,709 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 07:06:18,709 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 43 transitions. [2022-04-28 07:06:18,748 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:06:18,748 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 43 transitions. [2022-04-28 07:06:18,749 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-28 07:06:18,749 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:06:18,749 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:06:18,768 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:06:18,965 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:06:18,966 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:06:18,966 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:06:18,966 INFO L85 PathProgramCache]: Analyzing trace with hash 1555618915, now seen corresponding path program 1 times [2022-04-28 07:06:18,966 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:06:18,966 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2116708443] [2022-04-28 07:06:18,967 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:06:18,967 INFO L85 PathProgramCache]: Analyzing trace with hash 1555618915, now seen corresponding path program 2 times [2022-04-28 07:06:18,967 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:06:18,967 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [510752615] [2022-04-28 07:06:18,967 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:06:18,967 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:06:18,985 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:06:18,985 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1198928990] [2022-04-28 07:06:18,985 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:06:18,985 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:06:18,986 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:06:18,996 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:06:18,997 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:06:19,055 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:06:19,056 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:06:19,056 INFO L263 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 07:06:19,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:19,078 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:06:20,259 INFO L272 TraceCheckUtils]: 0: Hoare triple {668#true} call ULTIMATE.init(); {668#true} is VALID [2022-04-28 07:06:20,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {668#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(7, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(109, 2, 2, 1);call write~init~int(50, 2, 3, 1);call write~init~int(46, 2, 4, 1);call write~init~int(99, 2, 5, 1);call write~init~int(0, 2, 6, 1);call #Ultimate.allocInit(12, 3); {668#true} is VALID [2022-04-28 07:06:20,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:20,259 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {668#true} {668#true} #79#return; {668#true} is VALID [2022-04-28 07:06:20,260 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} call #t~ret6 := main(); {668#true} is VALID [2022-04-28 07:06:20,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {668#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~u~0;havoc ~v~0;~a~0 := #t~nondet4;havoc #t~nondet4; {668#true} is VALID [2022-04-28 07:06:20,260 INFO L272 TraceCheckUtils]: 6: Hoare triple {668#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:20,260 INFO L290 TraceCheckUtils]: 7: Hoare triple {668#true} ~cond := #in~cond; {694#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:06:20,261 INFO L290 TraceCheckUtils]: 8: Hoare triple {694#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:20,261 INFO L290 TraceCheckUtils]: 9: Hoare triple {698#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:20,261 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {698#(not (= |assume_abort_if_not_#in~cond| 0))} {668#true} #63#return; {705#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-28 07:06:20,262 INFO L290 TraceCheckUtils]: 11: Hoare triple {705#(<= (mod main_~a~0 4294967296) 1)} ~b~0 := #t~nondet5;havoc #t~nondet5; {705#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-28 07:06:20,262 INFO L272 TraceCheckUtils]: 12: Hoare triple {705#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:20,262 INFO L290 TraceCheckUtils]: 13: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-28 07:06:20,262 INFO L290 TraceCheckUtils]: 14: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-28 07:06:20,262 INFO L290 TraceCheckUtils]: 15: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:20,263 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {668#true} {705#(<= (mod main_~a~0 4294967296) 1)} #65#return; {705#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-28 07:06:20,263 INFO L272 TraceCheckUtils]: 17: Hoare triple {705#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:20,263 INFO L290 TraceCheckUtils]: 18: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-28 07:06:20,263 INFO L290 TraceCheckUtils]: 19: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-28 07:06:20,263 INFO L290 TraceCheckUtils]: 20: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:20,264 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {668#true} {705#(<= (mod main_~a~0 4294967296) 1)} #67#return; {705#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-28 07:06:20,264 INFO L272 TraceCheckUtils]: 22: Hoare triple {705#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~b~0 % 4294967296 >= 1 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:20,264 INFO L290 TraceCheckUtils]: 23: Hoare triple {668#true} ~cond := #in~cond; {694#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:06:20,265 INFO L290 TraceCheckUtils]: 24: Hoare triple {694#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:20,265 INFO L290 TraceCheckUtils]: 25: Hoare triple {698#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:20,265 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {698#(not (= |assume_abort_if_not_#in~cond| 0))} {705#(<= (mod main_~a~0 4294967296) 1)} #69#return; {754#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} is VALID [2022-04-28 07:06:20,266 INFO L272 TraceCheckUtils]: 27: Hoare triple {754#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} call assume_abort_if_not((if ~a~0 % 4294967296 <= 65535 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:20,266 INFO L290 TraceCheckUtils]: 28: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-28 07:06:20,266 INFO L290 TraceCheckUtils]: 29: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-28 07:06:20,266 INFO L290 TraceCheckUtils]: 30: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:20,266 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {668#true} {754#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} #71#return; {754#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} is VALID [2022-04-28 07:06:20,267 INFO L272 TraceCheckUtils]: 32: Hoare triple {754#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} call assume_abort_if_not((if ~b~0 % 4294967296 <= 65535 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:20,267 INFO L290 TraceCheckUtils]: 33: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-28 07:06:20,267 INFO L290 TraceCheckUtils]: 34: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-28 07:06:20,267 INFO L290 TraceCheckUtils]: 35: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:20,267 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {668#true} {754#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} #73#return; {754#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} is VALID [2022-04-28 07:06:20,268 INFO L290 TraceCheckUtils]: 37: Hoare triple {754#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} ~x~0 := ~a~0;~y~0 := ~b~0;~u~0 := ~b~0;~v~0 := ~a~0; {788#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} is VALID [2022-04-28 07:06:20,268 INFO L290 TraceCheckUtils]: 38: Hoare triple {788#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} assume !false; {788#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} is VALID [2022-04-28 07:06:20,268 INFO L272 TraceCheckUtils]: 39: Hoare triple {788#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:20,268 INFO L290 TraceCheckUtils]: 40: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-28 07:06:20,269 INFO L290 TraceCheckUtils]: 41: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-28 07:06:20,269 INFO L290 TraceCheckUtils]: 42: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:20,269 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {668#true} {788#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} #75#return; {788#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} is VALID [2022-04-28 07:06:20,270 INFO L290 TraceCheckUtils]: 44: Hoare triple {788#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} assume !!(~x~0 % 4294967296 != ~y~0 % 4294967296); {788#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} is VALID [2022-04-28 07:06:20,270 INFO L290 TraceCheckUtils]: 45: Hoare triple {788#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} assume ~x~0 % 4294967296 > ~y~0 % 4294967296;~x~0 := ~x~0 - ~y~0;~v~0 := ~v~0 + ~u~0; {669#false} is VALID [2022-04-28 07:06:20,271 INFO L290 TraceCheckUtils]: 46: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-28 07:06:20,271 INFO L272 TraceCheckUtils]: 47: Hoare triple {669#false} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {669#false} is VALID [2022-04-28 07:06:20,271 INFO L290 TraceCheckUtils]: 48: Hoare triple {669#false} ~cond := #in~cond; {669#false} is VALID [2022-04-28 07:06:20,271 INFO L290 TraceCheckUtils]: 49: Hoare triple {669#false} assume 0 == ~cond; {669#false} is VALID [2022-04-28 07:06:20,271 INFO L290 TraceCheckUtils]: 50: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-28 07:06:20,271 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 10 proven. 18 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 07:06:20,271 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:06:21,404 INFO L290 TraceCheckUtils]: 50: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-28 07:06:21,404 INFO L290 TraceCheckUtils]: 49: Hoare triple {669#false} assume 0 == ~cond; {669#false} is VALID [2022-04-28 07:06:21,404 INFO L290 TraceCheckUtils]: 48: Hoare triple {669#false} ~cond := #in~cond; {669#false} is VALID [2022-04-28 07:06:21,404 INFO L272 TraceCheckUtils]: 47: Hoare triple {669#false} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {669#false} is VALID [2022-04-28 07:06:21,404 INFO L290 TraceCheckUtils]: 46: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-28 07:06:21,405 INFO L290 TraceCheckUtils]: 45: Hoare triple {843#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} assume ~x~0 % 4294967296 > ~y~0 % 4294967296;~x~0 := ~x~0 - ~y~0;~v~0 := ~v~0 + ~u~0; {669#false} is VALID [2022-04-28 07:06:21,405 INFO L290 TraceCheckUtils]: 44: Hoare triple {843#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} assume !!(~x~0 % 4294967296 != ~y~0 % 4294967296); {843#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} is VALID [2022-04-28 07:06:21,406 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {668#true} {843#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} #75#return; {843#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} is VALID [2022-04-28 07:06:21,406 INFO L290 TraceCheckUtils]: 42: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:21,406 INFO L290 TraceCheckUtils]: 41: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-28 07:06:21,406 INFO L290 TraceCheckUtils]: 40: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-28 07:06:21,406 INFO L272 TraceCheckUtils]: 39: Hoare triple {843#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:21,407 INFO L290 TraceCheckUtils]: 38: Hoare triple {843#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} assume !false; {843#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} is VALID [2022-04-28 07:06:21,407 INFO L290 TraceCheckUtils]: 37: Hoare triple {868#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} ~x~0 := ~a~0;~y~0 := ~b~0;~u~0 := ~b~0;~v~0 := ~a~0; {843#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} is VALID [2022-04-28 07:06:21,407 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {668#true} {868#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} #73#return; {868#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} is VALID [2022-04-28 07:06:21,408 INFO L290 TraceCheckUtils]: 35: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:21,408 INFO L290 TraceCheckUtils]: 34: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-28 07:06:21,408 INFO L290 TraceCheckUtils]: 33: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-28 07:06:21,408 INFO L272 TraceCheckUtils]: 32: Hoare triple {868#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} call assume_abort_if_not((if ~b~0 % 4294967296 <= 65535 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:21,408 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {668#true} {868#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} #71#return; {868#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} is VALID [2022-04-28 07:06:21,409 INFO L290 TraceCheckUtils]: 30: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:21,409 INFO L290 TraceCheckUtils]: 29: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-28 07:06:21,409 INFO L290 TraceCheckUtils]: 28: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-28 07:06:21,409 INFO L272 TraceCheckUtils]: 27: Hoare triple {868#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} call assume_abort_if_not((if ~a~0 % 4294967296 <= 65535 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:21,410 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {698#(not (= |assume_abort_if_not_#in~cond| 0))} {705#(<= (mod main_~a~0 4294967296) 1)} #69#return; {868#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} is VALID [2022-04-28 07:06:21,410 INFO L290 TraceCheckUtils]: 25: Hoare triple {698#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:21,410 INFO L290 TraceCheckUtils]: 24: Hoare triple {911#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:21,411 INFO L290 TraceCheckUtils]: 23: Hoare triple {668#true} ~cond := #in~cond; {911#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 07:06:21,411 INFO L272 TraceCheckUtils]: 22: Hoare triple {705#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~b~0 % 4294967296 >= 1 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:21,411 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {668#true} {705#(<= (mod main_~a~0 4294967296) 1)} #67#return; {705#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-28 07:06:21,411 INFO L290 TraceCheckUtils]: 20: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:21,412 INFO L290 TraceCheckUtils]: 19: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-28 07:06:21,412 INFO L290 TraceCheckUtils]: 18: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-28 07:06:21,412 INFO L272 TraceCheckUtils]: 17: Hoare triple {705#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:21,412 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {668#true} {705#(<= (mod main_~a~0 4294967296) 1)} #65#return; {705#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-28 07:06:21,412 INFO L290 TraceCheckUtils]: 15: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:21,412 INFO L290 TraceCheckUtils]: 14: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-28 07:06:21,413 INFO L290 TraceCheckUtils]: 13: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-28 07:06:21,413 INFO L272 TraceCheckUtils]: 12: Hoare triple {705#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:21,413 INFO L290 TraceCheckUtils]: 11: Hoare triple {705#(<= (mod main_~a~0 4294967296) 1)} ~b~0 := #t~nondet5;havoc #t~nondet5; {705#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-28 07:06:21,413 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {698#(not (= |assume_abort_if_not_#in~cond| 0))} {668#true} #63#return; {705#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-28 07:06:21,414 INFO L290 TraceCheckUtils]: 9: Hoare triple {698#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:21,414 INFO L290 TraceCheckUtils]: 8: Hoare triple {911#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:21,415 INFO L290 TraceCheckUtils]: 7: Hoare triple {668#true} ~cond := #in~cond; {911#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 07:06:21,415 INFO L272 TraceCheckUtils]: 6: Hoare triple {668#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {668#true} is VALID [2022-04-28 07:06:21,415 INFO L290 TraceCheckUtils]: 5: Hoare triple {668#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~u~0;havoc ~v~0;~a~0 := #t~nondet4;havoc #t~nondet4; {668#true} is VALID [2022-04-28 07:06:21,415 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} call #t~ret6 := main(); {668#true} is VALID [2022-04-28 07:06:21,415 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {668#true} {668#true} #79#return; {668#true} is VALID [2022-04-28 07:06:21,415 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-28 07:06:21,416 INFO L290 TraceCheckUtils]: 1: Hoare triple {668#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(7, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(109, 2, 2, 1);call write~init~int(50, 2, 3, 1);call write~init~int(46, 2, 4, 1);call write~init~int(99, 2, 5, 1);call write~init~int(0, 2, 6, 1);call #Ultimate.allocInit(12, 3); {668#true} is VALID [2022-04-28 07:06:21,416 INFO L272 TraceCheckUtils]: 0: Hoare triple {668#true} call ULTIMATE.init(); {668#true} is VALID [2022-04-28 07:06:21,416 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 10 proven. 18 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 07:06:21,416 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:06:21,416 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [510752615] [2022-04-28 07:06:21,416 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:06:21,416 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1198928990] [2022-04-28 07:06:21,416 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1198928990] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:06:21,417 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:06:21,417 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 10 [2022-04-28 07:06:21,417 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:06:21,417 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2116708443] [2022-04-28 07:06:21,417 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2116708443] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:06:21,417 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:06:21,417 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 07:06:21,417 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1069931903] [2022-04-28 07:06:21,417 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:06:21,418 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 51 [2022-04-28 07:06:21,418 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:06:21,418 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 07:06:21,445 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:06:21,445 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 07:06:21,445 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:06:21,446 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 07:06:21,446 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-28 07:06:21,446 INFO L87 Difference]: Start difference. First operand 36 states and 43 transitions. Second operand has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 07:06:21,736 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:21,736 INFO L93 Difference]: Finished difference Result 50 states and 60 transitions. [2022-04-28 07:06:21,736 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 07:06:21,736 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 51 [2022-04-28 07:06:21,737 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:06:21,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 07:06:21,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 57 transitions. [2022-04-28 07:06:21,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 07:06:21,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 57 transitions. [2022-04-28 07:06:21,740 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 57 transitions. [2022-04-28 07:06:21,782 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:06:21,783 INFO L225 Difference]: With dead ends: 50 [2022-04-28 07:06:21,783 INFO L226 Difference]: Without dead ends: 39 [2022-04-28 07:06:21,784 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 92 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-28 07:06:21,784 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 19 mSDsluCounter, 66 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 93 SdHoareTripleChecker+Invalid, 87 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 07:06:21,784 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [21 Valid, 93 Invalid, 87 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 07:06:21,785 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-04-28 07:06:21,807 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 37. [2022-04-28 07:06:21,807 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:06:21,808 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:06:21,808 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:06:21,808 INFO L87 Difference]: Start difference. First operand 39 states. Second operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:06:21,810 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:21,810 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-28 07:06:21,810 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-28 07:06:21,810 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:06:21,810 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:06:21,811 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 39 states. [2022-04-28 07:06:21,811 INFO L87 Difference]: Start difference. First operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 39 states. [2022-04-28 07:06:21,812 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:21,812 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-28 07:06:21,813 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-28 07:06:21,813 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:06:21,813 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:06:21,813 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:06:21,813 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:06:21,813 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 07:06:21,814 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 44 transitions. [2022-04-28 07:06:21,815 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 44 transitions. Word has length 51 [2022-04-28 07:06:21,815 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:06:21,815 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 44 transitions. [2022-04-28 07:06:21,815 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 07:06:21,815 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 44 transitions. [2022-04-28 07:06:21,860 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:06:21,861 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 44 transitions. [2022-04-28 07:06:21,861 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-28 07:06:21,861 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 07:06:21,862 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 07:06:21,872 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-28 07:06:22,062 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:06:22,062 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 07:06:22,063 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 07:06:22,063 INFO L85 PathProgramCache]: Analyzing trace with hash 1612877217, now seen corresponding path program 1 times [2022-04-28 07:06:22,063 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 07:06:22,063 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1712603] [2022-04-28 07:06:22,063 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 07:06:22,063 INFO L85 PathProgramCache]: Analyzing trace with hash 1612877217, now seen corresponding path program 2 times [2022-04-28 07:06:22,063 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 07:06:22,063 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1335908225] [2022-04-28 07:06:22,064 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 07:06:22,064 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 07:06:22,087 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 07:06:22,087 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2051671955] [2022-04-28 07:06:22,087 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 07:06:22,087 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 07:06:22,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 07:06:22,089 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:06:22,090 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:06:22,628 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 07:06:22,628 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 07:06:22,630 INFO L263 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-28 07:06:22,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 07:06:22,644 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 07:06:24,421 INFO L272 TraceCheckUtils]: 0: Hoare triple {1239#true} call ULTIMATE.init(); {1239#true} is VALID [2022-04-28 07:06:24,421 INFO L290 TraceCheckUtils]: 1: Hoare triple {1239#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(7, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(109, 2, 2, 1);call write~init~int(50, 2, 3, 1);call write~init~int(46, 2, 4, 1);call write~init~int(99, 2, 5, 1);call write~init~int(0, 2, 6, 1);call #Ultimate.allocInit(12, 3); {1239#true} is VALID [2022-04-28 07:06:24,421 INFO L290 TraceCheckUtils]: 2: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:24,421 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1239#true} {1239#true} #79#return; {1239#true} is VALID [2022-04-28 07:06:24,421 INFO L272 TraceCheckUtils]: 4: Hoare triple {1239#true} call #t~ret6 := main(); {1239#true} is VALID [2022-04-28 07:06:24,421 INFO L290 TraceCheckUtils]: 5: Hoare triple {1239#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~u~0;havoc ~v~0;~a~0 := #t~nondet4;havoc #t~nondet4; {1239#true} is VALID [2022-04-28 07:06:24,421 INFO L272 TraceCheckUtils]: 6: Hoare triple {1239#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:24,422 INFO L290 TraceCheckUtils]: 7: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-28 07:06:24,422 INFO L290 TraceCheckUtils]: 8: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-28 07:06:24,422 INFO L290 TraceCheckUtils]: 9: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:24,422 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1239#true} {1239#true} #63#return; {1239#true} is VALID [2022-04-28 07:06:24,422 INFO L290 TraceCheckUtils]: 11: Hoare triple {1239#true} ~b~0 := #t~nondet5;havoc #t~nondet5; {1239#true} is VALID [2022-04-28 07:06:24,422 INFO L272 TraceCheckUtils]: 12: Hoare triple {1239#true} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:24,422 INFO L290 TraceCheckUtils]: 13: Hoare triple {1239#true} ~cond := #in~cond; {1283#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:06:24,423 INFO L290 TraceCheckUtils]: 14: Hoare triple {1283#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1287#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:24,423 INFO L290 TraceCheckUtils]: 15: Hoare triple {1287#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1287#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:24,423 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1287#(not (= |assume_abort_if_not_#in~cond| 0))} {1239#true} #65#return; {1294#(<= (mod main_~b~0 4294967296) 1)} is VALID [2022-04-28 07:06:24,424 INFO L272 TraceCheckUtils]: 17: Hoare triple {1294#(<= (mod main_~b~0 4294967296) 1)} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:24,424 INFO L290 TraceCheckUtils]: 18: Hoare triple {1239#true} ~cond := #in~cond; {1283#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 07:06:24,424 INFO L290 TraceCheckUtils]: 19: Hoare triple {1283#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1287#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:24,425 INFO L290 TraceCheckUtils]: 20: Hoare triple {1287#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1287#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:24,425 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1287#(not (= |assume_abort_if_not_#in~cond| 0))} {1294#(<= (mod main_~b~0 4294967296) 1)} #67#return; {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} is VALID [2022-04-28 07:06:24,425 INFO L272 TraceCheckUtils]: 22: Hoare triple {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} call assume_abort_if_not((if ~b~0 % 4294967296 >= 1 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:24,425 INFO L290 TraceCheckUtils]: 23: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-28 07:06:24,425 INFO L290 TraceCheckUtils]: 24: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-28 07:06:24,425 INFO L290 TraceCheckUtils]: 25: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:24,426 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1239#true} {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} #69#return; {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} is VALID [2022-04-28 07:06:24,426 INFO L272 TraceCheckUtils]: 27: Hoare triple {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} call assume_abort_if_not((if ~a~0 % 4294967296 <= 65535 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:24,426 INFO L290 TraceCheckUtils]: 28: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-28 07:06:24,426 INFO L290 TraceCheckUtils]: 29: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-28 07:06:24,426 INFO L290 TraceCheckUtils]: 30: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:24,427 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {1239#true} {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} #71#return; {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} is VALID [2022-04-28 07:06:24,427 INFO L272 TraceCheckUtils]: 32: Hoare triple {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} call assume_abort_if_not((if ~b~0 % 4294967296 <= 65535 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:24,427 INFO L290 TraceCheckUtils]: 33: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-28 07:06:24,427 INFO L290 TraceCheckUtils]: 34: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-28 07:06:24,427 INFO L290 TraceCheckUtils]: 35: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:24,428 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {1239#true} {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} #73#return; {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} is VALID [2022-04-28 07:06:24,428 INFO L290 TraceCheckUtils]: 37: Hoare triple {1310#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} ~x~0 := ~a~0;~y~0 := ~b~0;~u~0 := ~b~0;~v~0 := ~a~0; {1359#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} is VALID [2022-04-28 07:06:24,428 INFO L290 TraceCheckUtils]: 38: Hoare triple {1359#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} assume !false; {1359#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} is VALID [2022-04-28 07:06:24,428 INFO L272 TraceCheckUtils]: 39: Hoare triple {1359#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:24,429 INFO L290 TraceCheckUtils]: 40: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-28 07:06:24,429 INFO L290 TraceCheckUtils]: 41: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-28 07:06:24,429 INFO L290 TraceCheckUtils]: 42: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:24,429 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1239#true} {1359#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} #75#return; {1359#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} is VALID [2022-04-28 07:06:24,430 INFO L290 TraceCheckUtils]: 44: Hoare triple {1359#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} assume !!(~x~0 % 4294967296 != ~y~0 % 4294967296); {1381#(and (not (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296))) (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} is VALID [2022-04-28 07:06:24,430 INFO L290 TraceCheckUtils]: 45: Hoare triple {1381#(and (not (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296))) (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} assume !(~x~0 % 4294967296 > ~y~0 % 4294967296);~y~0 := ~y~0 - ~x~0;~u~0 := ~u~0 + ~v~0; {1240#false} is VALID [2022-04-28 07:06:24,431 INFO L290 TraceCheckUtils]: 46: Hoare triple {1240#false} assume !false; {1240#false} is VALID [2022-04-28 07:06:24,431 INFO L272 TraceCheckUtils]: 47: Hoare triple {1240#false} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {1240#false} is VALID [2022-04-28 07:06:24,431 INFO L290 TraceCheckUtils]: 48: Hoare triple {1240#false} ~cond := #in~cond; {1240#false} is VALID [2022-04-28 07:06:24,431 INFO L290 TraceCheckUtils]: 49: Hoare triple {1240#false} assume 0 == ~cond; {1240#false} is VALID [2022-04-28 07:06:24,431 INFO L290 TraceCheckUtils]: 50: Hoare triple {1240#false} assume !false; {1240#false} is VALID [2022-04-28 07:06:24,431 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 10 proven. 18 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 07:06:24,431 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 07:06:26,928 INFO L290 TraceCheckUtils]: 50: Hoare triple {1240#false} assume !false; {1240#false} is VALID [2022-04-28 07:06:26,929 INFO L290 TraceCheckUtils]: 49: Hoare triple {1240#false} assume 0 == ~cond; {1240#false} is VALID [2022-04-28 07:06:26,929 INFO L290 TraceCheckUtils]: 48: Hoare triple {1240#false} ~cond := #in~cond; {1240#false} is VALID [2022-04-28 07:06:26,929 INFO L272 TraceCheckUtils]: 47: Hoare triple {1240#false} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {1240#false} is VALID [2022-04-28 07:06:26,929 INFO L290 TraceCheckUtils]: 46: Hoare triple {1240#false} assume !false; {1240#false} is VALID [2022-04-28 07:06:26,929 INFO L290 TraceCheckUtils]: 45: Hoare triple {1415#(< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296))} assume !(~x~0 % 4294967296 > ~y~0 % 4294967296);~y~0 := ~y~0 - ~x~0;~u~0 := ~u~0 + ~v~0; {1240#false} is VALID [2022-04-28 07:06:26,930 INFO L290 TraceCheckUtils]: 44: Hoare triple {1419#(or (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)) (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296)))} assume !!(~x~0 % 4294967296 != ~y~0 % 4294967296); {1415#(< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296))} is VALID [2022-04-28 07:06:26,930 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1239#true} {1419#(or (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)) (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296)))} #75#return; {1419#(or (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)) (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296)))} is VALID [2022-04-28 07:06:26,930 INFO L290 TraceCheckUtils]: 42: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:26,931 INFO L290 TraceCheckUtils]: 41: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-28 07:06:26,931 INFO L290 TraceCheckUtils]: 40: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-28 07:06:26,931 INFO L272 TraceCheckUtils]: 39: Hoare triple {1419#(or (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)) (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296)))} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:26,931 INFO L290 TraceCheckUtils]: 38: Hoare triple {1419#(or (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)) (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296)))} assume !false; {1419#(or (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)) (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296)))} is VALID [2022-04-28 07:06:26,932 INFO L290 TraceCheckUtils]: 37: Hoare triple {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} ~x~0 := ~a~0;~y~0 := ~b~0;~u~0 := ~b~0;~v~0 := ~a~0; {1419#(or (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)) (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296)))} is VALID [2022-04-28 07:06:26,932 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {1239#true} {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} #73#return; {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} is VALID [2022-04-28 07:06:26,932 INFO L290 TraceCheckUtils]: 35: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:26,932 INFO L290 TraceCheckUtils]: 34: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-28 07:06:26,932 INFO L290 TraceCheckUtils]: 33: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-28 07:06:26,932 INFO L272 TraceCheckUtils]: 32: Hoare triple {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} call assume_abort_if_not((if ~b~0 % 4294967296 <= 65535 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:26,933 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {1239#true} {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} #71#return; {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} is VALID [2022-04-28 07:06:26,933 INFO L290 TraceCheckUtils]: 30: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:26,933 INFO L290 TraceCheckUtils]: 29: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-28 07:06:26,933 INFO L290 TraceCheckUtils]: 28: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-28 07:06:26,933 INFO L272 TraceCheckUtils]: 27: Hoare triple {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} call assume_abort_if_not((if ~a~0 % 4294967296 <= 65535 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:26,935 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1239#true} {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} #69#return; {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} is VALID [2022-04-28 07:06:26,935 INFO L290 TraceCheckUtils]: 25: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:26,935 INFO L290 TraceCheckUtils]: 24: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-28 07:06:26,935 INFO L290 TraceCheckUtils]: 23: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-28 07:06:26,936 INFO L272 TraceCheckUtils]: 22: Hoare triple {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} call assume_abort_if_not((if ~b~0 % 4294967296 >= 1 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:26,936 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1287#(not (= |assume_abort_if_not_#in~cond| 0))} {1294#(<= (mod main_~b~0 4294967296) 1)} #67#return; {1441#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} is VALID [2022-04-28 07:06:26,937 INFO L290 TraceCheckUtils]: 20: Hoare triple {1287#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1287#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:26,937 INFO L290 TraceCheckUtils]: 19: Hoare triple {1499#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1287#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:26,937 INFO L290 TraceCheckUtils]: 18: Hoare triple {1239#true} ~cond := #in~cond; {1499#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 07:06:26,938 INFO L272 TraceCheckUtils]: 17: Hoare triple {1294#(<= (mod main_~b~0 4294967296) 1)} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:26,938 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1287#(not (= |assume_abort_if_not_#in~cond| 0))} {1239#true} #65#return; {1294#(<= (mod main_~b~0 4294967296) 1)} is VALID [2022-04-28 07:06:26,938 INFO L290 TraceCheckUtils]: 15: Hoare triple {1287#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1287#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:26,939 INFO L290 TraceCheckUtils]: 14: Hoare triple {1499#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1287#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 07:06:26,940 INFO L290 TraceCheckUtils]: 13: Hoare triple {1239#true} ~cond := #in~cond; {1499#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 07:06:26,940 INFO L272 TraceCheckUtils]: 12: Hoare triple {1239#true} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:26,940 INFO L290 TraceCheckUtils]: 11: Hoare triple {1239#true} ~b~0 := #t~nondet5;havoc #t~nondet5; {1239#true} is VALID [2022-04-28 07:06:26,940 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1239#true} {1239#true} #63#return; {1239#true} is VALID [2022-04-28 07:06:26,940 INFO L290 TraceCheckUtils]: 9: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:26,940 INFO L290 TraceCheckUtils]: 8: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-28 07:06:26,941 INFO L290 TraceCheckUtils]: 7: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-28 07:06:26,941 INFO L272 TraceCheckUtils]: 6: Hoare triple {1239#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {1239#true} is VALID [2022-04-28 07:06:26,941 INFO L290 TraceCheckUtils]: 5: Hoare triple {1239#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~u~0;havoc ~v~0;~a~0 := #t~nondet4;havoc #t~nondet4; {1239#true} is VALID [2022-04-28 07:06:26,941 INFO L272 TraceCheckUtils]: 4: Hoare triple {1239#true} call #t~ret6 := main(); {1239#true} is VALID [2022-04-28 07:06:26,941 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1239#true} {1239#true} #79#return; {1239#true} is VALID [2022-04-28 07:06:26,941 INFO L290 TraceCheckUtils]: 2: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-28 07:06:26,941 INFO L290 TraceCheckUtils]: 1: Hoare triple {1239#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(7, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(109, 2, 2, 1);call write~init~int(50, 2, 3, 1);call write~init~int(46, 2, 4, 1);call write~init~int(99, 2, 5, 1);call write~init~int(0, 2, 6, 1);call #Ultimate.allocInit(12, 3); {1239#true} is VALID [2022-04-28 07:06:26,941 INFO L272 TraceCheckUtils]: 0: Hoare triple {1239#true} call ULTIMATE.init(); {1239#true} is VALID [2022-04-28 07:06:26,941 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 10 proven. 18 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-28 07:06:26,942 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 07:06:26,942 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1335908225] [2022-04-28 07:06:26,942 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 07:06:26,942 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2051671955] [2022-04-28 07:06:26,942 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2051671955] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 07:06:26,942 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 07:06:26,942 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-28 07:06:26,942 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 07:06:26,942 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1712603] [2022-04-28 07:06:26,942 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1712603] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 07:06:26,942 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 07:06:26,943 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 07:06:26,943 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1500145147] [2022-04-28 07:06:26,943 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 07:06:26,943 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 51 [2022-04-28 07:06:26,943 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 07:06:26,943 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 07:06:26,973 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:06:26,973 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 07:06:26,973 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 07:06:26,973 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 07:06:26,974 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-28 07:06:26,974 INFO L87 Difference]: Start difference. First operand 37 states and 44 transitions. Second operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 07:06:27,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:27,255 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-28 07:06:27,255 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 07:06:27,255 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 51 [2022-04-28 07:06:27,256 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 07:06:27,256 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 07:06:27,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 46 transitions. [2022-04-28 07:06:27,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 07:06:27,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 46 transitions. [2022-04-28 07:06:27,258 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 46 transitions. [2022-04-28 07:06:27,304 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:06:27,304 INFO L225 Difference]: With dead ends: 39 [2022-04-28 07:06:27,304 INFO L226 Difference]: Without dead ends: 0 [2022-04-28 07:06:27,305 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 90 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=52, Invalid=158, Unknown=0, NotChecked=0, Total=210 [2022-04-28 07:06:27,305 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 10 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 83 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 86 SdHoareTripleChecker+Invalid, 89 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 83 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 07:06:27,305 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 86 Invalid, 89 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 83 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 07:06:27,306 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-28 07:06:27,306 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-28 07:06:27,306 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 07:06:27,306 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 07:06:27,306 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 07:06:27,306 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 07:06:27,306 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:27,306 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 07:06:27,306 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 07:06:27,306 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:06:27,307 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:06:27,307 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-28 07:06:27,307 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-28 07:06:27,307 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 07:06:27,307 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 07:06:27,307 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 07:06:27,307 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:06:27,307 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 07:06:27,307 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 07:06:27,307 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 07:06:27,307 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 07:06:27,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-28 07:06:27,307 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 51 [2022-04-28 07:06:27,307 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 07:06:27,307 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-28 07:06:27,308 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 07:06:27,308 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-28 07:06:27,308 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 07:06:27,308 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 07:06:27,308 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 07:06:27,309 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-28 07:06:27,347 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-28 07:06:27,510 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:06:27,512 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-28 07:06:27,783 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 5) no Hoare annotation was computed. [2022-04-28 07:06:27,783 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 5) no Hoare annotation was computed. [2022-04-28 07:06:27,783 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 5) no Hoare annotation was computed. [2022-04-28 07:06:27,783 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 8 10) the Hoare annotation is: true [2022-04-28 07:06:27,783 INFO L895 garLoopResultBuilder]: At program point L9(line 9) the Hoare annotation is: (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|) [2022-04-28 07:06:27,783 INFO L895 garLoopResultBuilder]: At program point L9-2(lines 8 10) the Hoare annotation is: (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) [2022-04-28 07:06:27,783 INFO L895 garLoopResultBuilder]: At program point assume_abort_if_notEXIT(lines 8 10) the Hoare annotation is: (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) [2022-04-28 07:06:27,783 INFO L895 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: (let ((.cse0 (mod main_~a~0 4294967296)) (.cse1 (mod main_~b~0 4294967296))) (and (<= .cse0 1) (<= 1 .cse1) (<= 1 .cse0) (<= .cse1 1))) [2022-04-28 07:06:27,783 INFO L895 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: (let ((.cse0 (mod main_~a~0 4294967296)) (.cse1 (mod main_~b~0 4294967296))) (and (<= .cse0 1) (<= 1 .cse1) (<= 1 .cse0) (<= .cse1 1))) [2022-04-28 07:06:27,783 INFO L895 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: (<= (mod main_~a~0 4294967296) 1) [2022-04-28 07:06:27,783 INFO L902 garLoopResultBuilder]: At program point mainEXIT(lines 19 57) the Hoare annotation is: true [2022-04-28 07:06:27,784 INFO L895 garLoopResultBuilder]: At program point L25-1(line 25) the Hoare annotation is: (and (<= (mod main_~a~0 4294967296) 1) (<= (mod main_~b~0 4294967296) 1)) [2022-04-28 07:06:27,784 INFO L902 garLoopResultBuilder]: At program point L23(line 23) the Hoare annotation is: true [2022-04-28 07:06:27,784 INFO L895 garLoopResultBuilder]: At program point L23-1(line 23) the Hoare annotation is: (<= (mod main_~a~0 4294967296) 1) [2022-04-28 07:06:27,784 INFO L902 garLoopResultBuilder]: At program point L52(line 52) the Hoare annotation is: true [2022-04-28 07:06:27,784 INFO L902 garLoopResultBuilder]: At program point mainFINAL(lines 19 57) the Hoare annotation is: true [2022-04-28 07:06:27,784 INFO L895 garLoopResultBuilder]: At program point L38(line 38) the Hoare annotation is: (and (= main_~a~0 main_~v~0) (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~a~0 4294967296)) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (<= (mod main_~b~0 4294967296) 1) (= main_~a~0 main_~x~0) (<= 1 (mod main_~y~0 4294967296))) [2022-04-28 07:06:27,784 INFO L895 garLoopResultBuilder]: At program point L38-1(lines 37 50) the Hoare annotation is: (and (= main_~a~0 main_~v~0) (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~a~0 4294967296)) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (<= (mod main_~b~0 4294967296) 1) (= main_~a~0 main_~x~0) (<= 1 (mod main_~y~0 4294967296))) [2022-04-28 07:06:27,784 INFO L895 garLoopResultBuilder]: At program point L30(line 30) the Hoare annotation is: (let ((.cse0 (mod main_~a~0 4294967296)) (.cse1 (mod main_~b~0 4294967296))) (and (<= .cse0 1) (<= 1 .cse1) (<= 1 .cse0) (<= .cse1 1))) [2022-04-28 07:06:27,784 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 19 57) the Hoare annotation is: true [2022-04-28 07:06:27,784 INFO L895 garLoopResultBuilder]: At program point L26(line 26) the Hoare annotation is: (let ((.cse0 (mod main_~a~0 4294967296))) (and (<= .cse0 1) (<= 1 .cse0) (<= (mod main_~b~0 4294967296) 1))) [2022-04-28 07:06:27,784 INFO L895 garLoopResultBuilder]: At program point L43(lines 43 49) the Hoare annotation is: false [2022-04-28 07:06:27,784 INFO L895 garLoopResultBuilder]: At program point L43-2(lines 37 50) the Hoare annotation is: (and (= main_~a~0 main_~v~0) (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~a~0 4294967296)) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (<= (mod main_~b~0 4294967296) 1) (= main_~a~0 main_~x~0) (<= 1 (mod main_~y~0 4294967296))) [2022-04-28 07:06:27,784 INFO L895 garLoopResultBuilder]: At program point L37-2(lines 37 50) the Hoare annotation is: (and (= main_~a~0 main_~v~0) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (= main_~a~0 main_~x~0)) [2022-04-28 07:06:27,784 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2022-04-28 07:06:27,785 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-28 07:06:27,785 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2022-04-28 07:06:27,785 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-28 07:06:27,785 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-28 07:06:27,785 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-28 07:06:27,785 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-28 07:06:27,785 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 11 17) the Hoare annotation is: true [2022-04-28 07:06:27,785 INFO L895 garLoopResultBuilder]: At program point L13(lines 13 14) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-28 07:06:27,785 INFO L895 garLoopResultBuilder]: At program point L12(lines 12 15) the Hoare annotation is: (or (not (<= 1 |__VERIFIER_assert_#in~cond|)) (<= 1 __VERIFIER_assert_~cond)) [2022-04-28 07:06:27,785 INFO L895 garLoopResultBuilder]: At program point L12-2(lines 11 17) the Hoare annotation is: (or (not (<= 1 |__VERIFIER_assert_#in~cond|)) (<= 1 __VERIFIER_assert_~cond)) [2022-04-28 07:06:27,785 INFO L895 garLoopResultBuilder]: At program point __VERIFIER_assertEXIT(lines 11 17) the Hoare annotation is: (or (not (<= 1 |__VERIFIER_assert_#in~cond|)) (<= 1 __VERIFIER_assert_~cond)) [2022-04-28 07:06:27,785 INFO L895 garLoopResultBuilder]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 14) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-28 07:06:27,787 INFO L356 BasicCegarLoop]: Path program histogram: [2, 2, 2, 2] [2022-04-28 07:06:27,788 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-28 07:06:27,790 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-28 07:06:27,793 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-28 07:06:27,809 INFO L163 areAnnotationChecker]: CFG has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-28 07:06:27,823 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 07:06:27 BoogieIcfgContainer [2022-04-28 07:06:27,823 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-28 07:06:27,824 INFO L158 Benchmark]: Toolchain (without parser) took 11101.86ms. Allocated memory was 183.5MB in the beginning and 313.5MB in the end (delta: 130.0MB). Free memory was 133.7MB in the beginning and 172.4MB in the end (delta: -38.8MB). Peak memory consumption was 92.8MB. Max. memory is 8.0GB. [2022-04-28 07:06:27,824 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 183.5MB. Free memory was 150.6MB in the beginning and 150.5MB in the end (delta: 70.4kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 07:06:27,825 INFO L158 Benchmark]: CACSL2BoogieTranslator took 261.69ms. Allocated memory was 183.5MB in the beginning and 261.1MB in the end (delta: 77.6MB). Free memory was 133.5MB in the beginning and 236.7MB in the end (delta: -103.2MB). Peak memory consumption was 11.0MB. Max. memory is 8.0GB. [2022-04-28 07:06:27,825 INFO L158 Benchmark]: Boogie Preprocessor took 33.41ms. Allocated memory is still 261.1MB. Free memory was 236.7MB in the beginning and 235.0MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-28 07:06:27,825 INFO L158 Benchmark]: RCFGBuilder took 255.89ms. Allocated memory is still 261.1MB. Free memory was 235.0MB in the beginning and 223.5MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-28 07:06:27,825 INFO L158 Benchmark]: TraceAbstraction took 10546.73ms. Allocated memory was 261.1MB in the beginning and 313.5MB in the end (delta: 52.4MB). Free memory was 223.0MB in the beginning and 172.4MB in the end (delta: 50.6MB). Peak memory consumption was 104.5MB. Max. memory is 8.0GB. [2022-04-28 07:06:27,828 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 183.5MB. Free memory was 150.6MB in the beginning and 150.5MB in the end (delta: 70.4kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 261.69ms. Allocated memory was 183.5MB in the beginning and 261.1MB in the end (delta: 77.6MB). Free memory was 133.5MB in the beginning and 236.7MB in the end (delta: -103.2MB). Peak memory consumption was 11.0MB. Max. memory is 8.0GB. * Boogie Preprocessor took 33.41ms. Allocated memory is still 261.1MB. Free memory was 236.7MB in the beginning and 235.0MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 255.89ms. Allocated memory is still 261.1MB. Free memory was 235.0MB in the beginning and 223.5MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 10546.73ms. Allocated memory was 261.1MB in the beginning and 313.5MB in the end (delta: 52.4MB). Free memory was 223.0MB in the beginning and 172.4MB in the end (delta: 50.6MB). Peak memory consumption was 104.5MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 14]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 37 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 10.5s, OverallIterations: 4, TraceHistogramMax: 6, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 1.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.3s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 66 SdHoareTripleChecker+Valid, 0.3s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 54 mSDsluCounter, 320 SdHoareTripleChecker+Invalid, 0.3s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 209 mSDsCounter, 24 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 213 IncrementalHoareTripleChecker+Invalid, 237 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 24 mSolverCounterUnsat, 111 mSDtfsCounter, 213 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 272 GetRequests, 242 SyntacticMatches, 2 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=37occurred in iteration=3, InterpolantAutomatonStates: 25, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 4 MinimizatonAttempts, 3 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 34 LocationsWithAnnotation, 116 PreInvPairs, 155 NumberOfFragments, 284 HoareAnnotationTreeSize, 116 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 34 FomulaSimplificationsInter, 181 FormulaSimplificationTreeSizeReductionInter, 0.2s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: No data available, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 37]: Loop Invariant Derived loop invariant: ((((((a == v && x % 4294967296 <= 1) && 1 <= a % 4294967296) && b == y) && b == u) && b % 4294967296 <= 1) && a == x) && 1 <= y % 4294967296 - ProcedureContractResult [Line: 8]: Procedure Contract for assume_abort_if_not Derived contract for procedure assume_abort_if_not: !(\old(cond) == 0) && cond == \old(cond) - ProcedureContractResult [Line: 19]: Procedure Contract for main Derived contract for procedure main: 1 - ProcedureContractResult [Line: 11]: Procedure Contract for __VERIFIER_assert Derived contract for procedure __VERIFIER_assert: !(1 <= \old(cond)) || 1 <= cond RESULT: Ultimate proved your program to be correct! [2022-04-28 07:06:27,852 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...