/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-34549b5 [2022-04-08 07:11:34,994 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 07:11:35,032 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 07:11:35,075 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 07:11:35,076 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 07:11:35,078 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 07:11:35,080 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 07:11:35,082 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 07:11:35,084 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 07:11:35,088 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 07:11:35,089 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 07:11:35,090 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 07:11:35,090 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 07:11:35,092 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 07:11:35,093 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 07:11:35,095 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 07:11:35,096 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 07:11:35,096 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 07:11:35,097 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 07:11:35,099 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 07:11:35,100 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 07:11:35,101 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 07:11:35,102 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 07:11:35,103 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 07:11:35,104 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 07:11:35,111 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 07:11:35,111 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 07:11:35,112 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 07:11:35,112 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 07:11:35,112 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 07:11:35,114 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 07:11:35,114 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 07:11:35,115 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 07:11:35,116 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 07:11:35,116 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 07:11:35,117 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 07:11:35,117 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 07:11:35,118 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 07:11:35,118 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 07:11:35,118 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 07:11:35,119 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 07:11:35,120 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 07:11:35,121 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-08 07:11:35,130 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 07:11:35,130 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 07:11:35,131 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 07:11:35,131 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 07:11:35,131 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 07:11:35,132 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 07:11:35,132 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 07:11:35,132 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 07:11:35,132 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 07:11:35,132 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 07:11:35,133 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 07:11:35,133 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 07:11:35,133 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 07:11:35,133 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 07:11:35,133 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 07:11:35,133 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 07:11:35,133 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 07:11:35,133 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 07:11:35,134 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 07:11:35,134 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 07:11:35,134 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 07:11:35,134 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 07:11:35,134 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 07:11:35,134 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 07:11:35,134 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 07:11:35,134 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-08 07:11:35,356 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 07:11:35,382 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 07:11:35,385 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 07:11:35,385 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 07:11:35,386 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 07:11:35,387 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-08 07:11:35,439 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a4579a43/60571640a4044322913547b21fed8eb2/FLAG84c636ea4 [2022-04-08 07:11:35,845 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 07:11:35,846 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/lcm2_valuebound1.c [2022-04-08 07:11:35,858 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a4579a43/60571640a4044322913547b21fed8eb2/FLAG84c636ea4 [2022-04-08 07:11:36,245 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a4579a43/60571640a4044322913547b21fed8eb2 [2022-04-08 07:11:36,247 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 07:11:36,248 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 07:11:36,249 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 07:11:36,249 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 07:11:36,254 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 07:11:36,255 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 07:11:36" (1/1) ... [2022-04-08 07:11:36,256 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@17902cbe and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36, skipping insertion in model container [2022-04-08 07:11:36,256 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 07:11:36" (1/1) ... [2022-04-08 07:11:36,264 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 07:11:36,275 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 07:11:36,456 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-08 07:11:36,488 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 07:11:36,494 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 07:11:36,515 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-08 07:11:36,534 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 07:11:36,545 INFO L208 MainTranslator]: Completed translation [2022-04-08 07:11:36,545 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36 WrapperNode [2022-04-08 07:11:36,546 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 07:11:36,547 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 07:11:36,547 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 07:11:36,547 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 07:11:36,556 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36" (1/1) ... [2022-04-08 07:11:36,556 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36" (1/1) ... [2022-04-08 07:11:36,563 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36" (1/1) ... [2022-04-08 07:11:36,563 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36" (1/1) ... [2022-04-08 07:11:36,576 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36" (1/1) ... [2022-04-08 07:11:36,581 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36" (1/1) ... [2022-04-08 07:11:36,588 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36" (1/1) ... [2022-04-08 07:11:36,589 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 07:11:36,590 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 07:11:36,590 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 07:11:36,591 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 07:11:36,592 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36" (1/1) ... [2022-04-08 07:11:36,597 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 07:11:36,606 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:11:36,619 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-08 07:11:36,644 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-08 07:11:36,665 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 07:11:36,665 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 07:11:36,665 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 07:11:36,666 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 07:11:36,666 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 07:11:36,666 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 07:11:36,666 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 07:11:36,666 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 07:11:36,666 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 07:11:36,666 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 07:11:36,667 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-08 07:11:36,667 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 07:11:36,668 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 07:11:36,668 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 07:11:36,668 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 07:11:36,668 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 07:11:36,668 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 07:11:36,668 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 07:11:36,668 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 07:11:36,669 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 07:11:36,724 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 07:11:36,726 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 07:11:36,873 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 07:11:36,878 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 07:11:36,879 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-08 07:11:36,880 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 07:11:36 BoogieIcfgContainer [2022-04-08 07:11:36,880 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 07:11:36,881 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 07:11:36,881 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 07:11:36,888 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 07:11:36,888 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 07:11:36" (1/3) ... [2022-04-08 07:11:36,899 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1ff4e148 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 07:11:36, skipping insertion in model container [2022-04-08 07:11:36,899 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 07:11:36" (2/3) ... [2022-04-08 07:11:36,899 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1ff4e148 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 07:11:36, skipping insertion in model container [2022-04-08 07:11:36,899 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 07:11:36" (3/3) ... [2022-04-08 07:11:36,901 INFO L111 eAbstractionObserver]: Analyzing ICFG lcm2_valuebound1.c [2022-04-08 07:11:36,904 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 07:11:36,904 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 07:11:36,956 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 07:11:36,961 INFO L340 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 [2022-04-08 07:11:36,962 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 07:11:36,996 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-08 07:11:37,002 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-08 07:11:37,003 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:11:37,003 INFO L499 BasicCegarLoop]: 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-08 07:11:37,004 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:11:37,008 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:11:37,008 INFO L85 PathProgramCache]: Analyzing trace with hash 1830914611, now seen corresponding path program 1 times [2022-04-08 07:11:37,017 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:11:37,018 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [162871200] [2022-04-08 07:11:37,032 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 07:11:37,032 INFO L85 PathProgramCache]: Analyzing trace with hash 1830914611, now seen corresponding path program 2 times [2022-04-08 07:11:37,035 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:11:37,036 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [828561826] [2022-04-08 07:11:37,036 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:11:37,037 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:11:37,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:37,235 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 07:11:37,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:37,269 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-08 07:11:37,269 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume true; {37#true} is VALID [2022-04-08 07:11:37,270 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {37#true} {37#true} #79#return; {37#true} is VALID [2022-04-08 07:11:37,270 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 07:11:37,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:37,282 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,282 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,283 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,283 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {37#true} #63#return; {38#false} is VALID [2022-04-08 07:11:37,284 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 07:11:37,290 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:37,299 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,300 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,301 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,301 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #65#return; {38#false} is VALID [2022-04-08 07:11:37,301 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 07:11:37,304 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:37,311 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,312 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,313 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,313 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #67#return; {38#false} is VALID [2022-04-08 07:11:37,313 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-08 07:11:37,320 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:37,327 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,328 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,328 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,328 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #69#return; {38#false} is VALID [2022-04-08 07:11:37,329 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-08 07:11:37,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:37,334 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,334 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,335 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,335 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #71#return; {38#false} is VALID [2022-04-08 07:11:37,335 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 32 [2022-04-08 07:11:37,339 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:37,347 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,348 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,348 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,348 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #73#return; {38#false} is VALID [2022-04-08 07:11:37,349 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-08 07:11:37,349 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-08 07:11:37,350 INFO L290 TraceCheckUtils]: 2: Hoare triple {37#true} assume true; {37#true} is VALID [2022-04-08 07:11:37,350 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37#true} {37#true} #79#return; {37#true} is VALID [2022-04-08 07:11:37,350 INFO L272 TraceCheckUtils]: 4: Hoare triple {37#true} call #t~ret6 := main(); {37#true} is VALID [2022-04-08 07:11:37,350 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-08 07:11:37,350 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-08 07:11:37,351 INFO L290 TraceCheckUtils]: 7: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,351 INFO L290 TraceCheckUtils]: 8: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,351 INFO L290 TraceCheckUtils]: 9: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,352 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38#false} {37#true} #63#return; {38#false} is VALID [2022-04-08 07:11:37,352 INFO L290 TraceCheckUtils]: 11: Hoare triple {38#false} ~b~0 := #t~nondet5;havoc #t~nondet5; {38#false} is VALID [2022-04-08 07:11:37,352 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-08 07:11:37,352 INFO L290 TraceCheckUtils]: 13: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,353 INFO L290 TraceCheckUtils]: 14: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,353 INFO L290 TraceCheckUtils]: 15: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,353 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {38#false} {38#false} #65#return; {38#false} is VALID [2022-04-08 07:11:37,353 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-08 07:11:37,354 INFO L290 TraceCheckUtils]: 18: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,354 INFO L290 TraceCheckUtils]: 19: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,354 INFO L290 TraceCheckUtils]: 20: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,355 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38#false} {38#false} #67#return; {38#false} is VALID [2022-04-08 07:11:37,355 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-08 07:11:37,355 INFO L290 TraceCheckUtils]: 23: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,355 INFO L290 TraceCheckUtils]: 24: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,356 INFO L290 TraceCheckUtils]: 25: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,356 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38#false} {38#false} #69#return; {38#false} is VALID [2022-04-08 07:11:37,356 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-08 07:11:37,356 INFO L290 TraceCheckUtils]: 28: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,357 INFO L290 TraceCheckUtils]: 29: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,357 INFO L290 TraceCheckUtils]: 30: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,357 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {38#false} {38#false} #71#return; {38#false} is VALID [2022-04-08 07:11:37,357 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-08 07:11:37,358 INFO L290 TraceCheckUtils]: 33: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-08 07:11:37,358 INFO L290 TraceCheckUtils]: 34: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-08 07:11:37,358 INFO L290 TraceCheckUtils]: 35: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-08 07:11:37,358 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {38#false} {38#false} #73#return; {38#false} is VALID [2022-04-08 07:11:37,359 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-08 07:11:37,359 INFO L290 TraceCheckUtils]: 38: Hoare triple {38#false} assume !true; {38#false} is VALID [2022-04-08 07:11:37,359 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-08 07:11:37,359 INFO L290 TraceCheckUtils]: 40: Hoare triple {38#false} ~cond := #in~cond; {38#false} is VALID [2022-04-08 07:11:37,360 INFO L290 TraceCheckUtils]: 41: Hoare triple {38#false} assume 0 == ~cond; {38#false} is VALID [2022-04-08 07:11:37,360 INFO L290 TraceCheckUtils]: 42: Hoare triple {38#false} assume !false; {38#false} is VALID [2022-04-08 07:11:37,361 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-08 07:11:37,361 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:11:37,361 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [828561826] [2022-04-08 07:11:37,362 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [828561826] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:11:37,362 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:11:37,363 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 07:11:37,365 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:11:37,365 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [162871200] [2022-04-08 07:11:37,365 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [162871200] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:11:37,365 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:11:37,365 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 07:11:37,366 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [22775538] [2022-04-08 07:11:37,366 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:11:37,370 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-08 07:11:37,372 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:11:37,374 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-08 07:11:37,417 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-08 07:11:37,417 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 07:11:37,418 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:11:37,454 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 07:11:37,455 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 07:11:37,457 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-08 07:11:37,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:37,622 INFO L93 Difference]: Finished difference Result 61 states and 90 transitions. [2022-04-08 07:11:37,622 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 07:11:37,623 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-08 07:11:37,623 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:11:37,624 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-08 07:11:37,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 90 transitions. [2022-04-08 07:11:37,633 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-08 07:11:37,640 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 90 transitions. [2022-04-08 07:11:37,640 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 90 transitions. [2022-04-08 07:11:37,749 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-08 07:11:37,757 INFO L225 Difference]: With dead ends: 61 [2022-04-08 07:11:37,757 INFO L226 Difference]: Without dead ends: 29 [2022-04-08 07:11:37,760 INFO L912 BasicCegarLoop]: 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-08 07:11:37,763 INFO L913 BasicCegarLoop]: 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-08 07:11:37,764 INFO L914 BasicCegarLoop]: 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-08 07:11:37,778 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-08 07:11:37,791 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-08 07:11:37,791 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:11:37,792 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-08 07:11:37,793 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-08 07:11:37,793 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-08 07:11:37,797 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:37,797 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2022-04-08 07:11:37,797 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-08 07:11:37,798 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:11:37,798 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:11:37,799 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-08 07:11:37,799 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-08 07:11:37,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:37,803 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2022-04-08 07:11:37,803 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-08 07:11:37,835 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:11:37,835 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:11:37,835 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:11:37,836 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:11:37,836 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-08 07:11:37,839 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 36 transitions. [2022-04-08 07:11:37,840 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 36 transitions. Word has length 43 [2022-04-08 07:11:37,840 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:11:37,841 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 36 transitions. [2022-04-08 07:11:37,841 INFO L479 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-08 07:11:37,841 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 36 transitions. [2022-04-08 07:11:37,911 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-08 07:11:37,912 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-08 07:11:37,913 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-08 07:11:37,913 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:11:37,914 INFO L499 BasicCegarLoop]: 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-08 07:11:37,914 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 07:11:37,914 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:11:37,915 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:11:37,915 INFO L85 PathProgramCache]: Analyzing trace with hash 206107499, now seen corresponding path program 1 times [2022-04-08 07:11:37,915 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:11:37,916 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1459426319] [2022-04-08 07:11:37,917 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 07:11:37,918 INFO L85 PathProgramCache]: Analyzing trace with hash 206107499, now seen corresponding path program 2 times [2022-04-08 07:11:37,918 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:11:37,918 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1893216016] [2022-04-08 07:11:37,918 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:11:37,919 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:11:37,973 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:11:37,974 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1136129961] [2022-04-08 07:11:37,974 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:11:37,974 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:11:37,974 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:11:37,980 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-08 07:11:38,014 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-08 07:11:38,060 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 07:11:38,061 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:11:38,063 INFO L263 TraceCheckSpWp]: Trace formula consists of 82 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 07:11:38,082 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:38,087 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:11:38,535 INFO L272 TraceCheckUtils]: 0: Hoare triple {307#true} call ULTIMATE.init(); {307#true} is VALID [2022-04-08 07:11:38,536 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-08 07:11:38,539 INFO L290 TraceCheckUtils]: 2: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-08 07:11:38,539 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {307#true} {307#true} #79#return; {307#true} is VALID [2022-04-08 07:11:38,539 INFO L272 TraceCheckUtils]: 4: Hoare triple {307#true} call #t~ret6 := main(); {307#true} is VALID [2022-04-08 07:11:38,540 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-08 07:11:38,540 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-08 07:11:38,540 INFO L290 TraceCheckUtils]: 7: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-08 07:11:38,541 INFO L290 TraceCheckUtils]: 8: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-08 07:11:38,541 INFO L290 TraceCheckUtils]: 9: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-08 07:11:38,541 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {307#true} {307#true} #63#return; {307#true} is VALID [2022-04-08 07:11:38,542 INFO L290 TraceCheckUtils]: 11: Hoare triple {307#true} ~b~0 := #t~nondet5;havoc #t~nondet5; {307#true} is VALID [2022-04-08 07:11:38,543 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-08 07:11:38,543 INFO L290 TraceCheckUtils]: 13: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-08 07:11:38,544 INFO L290 TraceCheckUtils]: 14: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-08 07:11:38,544 INFO L290 TraceCheckUtils]: 15: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-08 07:11:38,544 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {307#true} {307#true} #65#return; {307#true} is VALID [2022-04-08 07:11:38,546 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-08 07:11:38,546 INFO L290 TraceCheckUtils]: 18: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-08 07:11:38,546 INFO L290 TraceCheckUtils]: 19: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-08 07:11:38,547 INFO L290 TraceCheckUtils]: 20: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-08 07:11:38,547 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {307#true} {307#true} #67#return; {307#true} is VALID [2022-04-08 07:11:38,547 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-08 07:11:38,547 INFO L290 TraceCheckUtils]: 23: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-08 07:11:38,548 INFO L290 TraceCheckUtils]: 24: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-08 07:11:38,548 INFO L290 TraceCheckUtils]: 25: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-08 07:11:38,548 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {307#true} {307#true} #69#return; {307#true} is VALID [2022-04-08 07:11:38,548 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-08 07:11:38,549 INFO L290 TraceCheckUtils]: 28: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-08 07:11:38,550 INFO L290 TraceCheckUtils]: 29: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-08 07:11:38,552 INFO L290 TraceCheckUtils]: 30: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-08 07:11:38,555 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {307#true} {307#true} #71#return; {307#true} is VALID [2022-04-08 07:11:38,556 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-08 07:11:38,560 INFO L290 TraceCheckUtils]: 33: Hoare triple {307#true} ~cond := #in~cond; {307#true} is VALID [2022-04-08 07:11:38,560 INFO L290 TraceCheckUtils]: 34: Hoare triple {307#true} assume !(0 == ~cond); {307#true} is VALID [2022-04-08 07:11:38,560 INFO L290 TraceCheckUtils]: 35: Hoare triple {307#true} assume true; {307#true} is VALID [2022-04-08 07:11:38,560 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {307#true} {307#true} #73#return; {307#true} is VALID [2022-04-08 07:11:38,563 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-08 07:11:38,564 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-08 07:11:38,565 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-08 07:11:38,566 INFO L290 TraceCheckUtils]: 40: Hoare triple {430#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {434#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 07:11:38,566 INFO L290 TraceCheckUtils]: 41: Hoare triple {434#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {308#false} is VALID [2022-04-08 07:11:38,567 INFO L290 TraceCheckUtils]: 42: Hoare triple {308#false} assume !false; {308#false} is VALID [2022-04-08 07:11:38,567 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-08 07:11:38,567 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 07:11:38,567 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:11:38,568 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1893216016] [2022-04-08 07:11:38,568 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:11:38,568 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1136129961] [2022-04-08 07:11:38,569 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1136129961] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:11:38,569 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:11:38,569 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 07:11:38,570 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:11:38,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1459426319] [2022-04-08 07:11:38,570 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1459426319] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:11:38,570 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:11:38,570 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 07:11:38,571 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2008448666] [2022-04-08 07:11:38,571 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:11:38,572 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-08 07:11:38,572 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:11:38,574 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-08 07:11:38,604 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-08 07:11:38,605 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 07:11:38,605 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:11:38,607 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 07:11:38,607 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 07:11:38,607 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-08 07:11:38,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:38,822 INFO L93 Difference]: Finished difference Result 40 states and 49 transitions. [2022-04-08 07:11:38,822 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 07:11:38,823 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-08 07:11:38,823 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:11:38,824 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-08 07:11:38,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 49 transitions. [2022-04-08 07:11:38,826 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-08 07:11:38,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 49 transitions. [2022-04-08 07:11:38,835 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 49 transitions. [2022-04-08 07:11:38,900 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-08 07:11:38,905 INFO L225 Difference]: With dead ends: 40 [2022-04-08 07:11:38,905 INFO L226 Difference]: Without dead ends: 37 [2022-04-08 07:11:38,906 INFO L912 BasicCegarLoop]: 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-08 07:11:38,908 INFO L913 BasicCegarLoop]: 30 mSDtfsCounter, 7 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-08 07:11:38,912 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 105 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 07:11:38,914 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-08 07:11:38,926 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 36. [2022-04-08 07:11:38,926 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:11:38,927 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-08 07:11:38,928 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-08 07:11:38,928 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-08 07:11:38,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:38,936 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-08 07:11:38,937 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 45 transitions. [2022-04-08 07:11:38,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:11:38,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:11:38,944 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-08 07:11:38,945 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-08 07:11:38,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:38,951 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-08 07:11:38,951 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 45 transitions. [2022-04-08 07:11:38,951 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:11:38,952 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:11:38,952 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:11:38,952 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:11:38,952 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-08 07:11:38,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 43 transitions. [2022-04-08 07:11:38,954 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 43 transitions. Word has length 43 [2022-04-08 07:11:38,954 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:11:38,955 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 43 transitions. [2022-04-08 07:11:38,955 INFO L479 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-08 07:11:38,955 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 43 transitions. [2022-04-08 07:11:39,005 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-08 07:11:39,005 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 43 transitions. [2022-04-08 07:11:39,006 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-08 07:11:39,006 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:11:39,006 INFO L499 BasicCegarLoop]: 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-08 07:11:39,032 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-08 07:11:39,229 WARN L460 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-08 07:11:39,230 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:11:39,230 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:11:39,230 INFO L85 PathProgramCache]: Analyzing trace with hash 1555618915, now seen corresponding path program 1 times [2022-04-08 07:11:39,230 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:11:39,230 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1360268302] [2022-04-08 07:11:39,231 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 07:11:39,231 INFO L85 PathProgramCache]: Analyzing trace with hash 1555618915, now seen corresponding path program 2 times [2022-04-08 07:11:39,231 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:11:39,231 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [981443531] [2022-04-08 07:11:39,231 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:11:39,232 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:11:39,261 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:11:39,262 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [665364362] [2022-04-08 07:11:39,262 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:11:39,262 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:11:39,262 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:11:39,263 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-08 07:11:39,295 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-08 07:11:39,344 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 07:11:39,344 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:11:39,345 INFO L263 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 07:11:39,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:39,359 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:11:40,884 INFO L272 TraceCheckUtils]: 0: Hoare triple {668#true} call ULTIMATE.init(); {668#true} is VALID [2022-04-08 07:11:40,885 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-08 07:11:40,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:40,885 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {668#true} {668#true} #79#return; {668#true} is VALID [2022-04-08 07:11:40,885 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} call #t~ret6 := main(); {668#true} is VALID [2022-04-08 07:11:40,886 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-08 07:11:40,886 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-08 07:11:40,887 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-08 07:11:40,891 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-08 07:11:40,891 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-08 07:11:40,892 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-08 07:11:40,892 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-08 07:11:40,892 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-08 07:11:40,892 INFO L290 TraceCheckUtils]: 13: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-08 07:11:40,892 INFO L290 TraceCheckUtils]: 14: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-08 07:11:40,893 INFO L290 TraceCheckUtils]: 15: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:40,893 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-08 07:11:40,893 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-08 07:11:40,894 INFO L290 TraceCheckUtils]: 18: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-08 07:11:40,894 INFO L290 TraceCheckUtils]: 19: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-08 07:11:40,894 INFO L290 TraceCheckUtils]: 20: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:40,894 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-08 07:11:40,895 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-08 07:11:40,895 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-08 07:11:40,895 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-08 07:11:40,896 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-08 07:11:40,896 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-08 07:11:40,897 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-08 07:11:40,897 INFO L290 TraceCheckUtils]: 28: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-08 07:11:40,897 INFO L290 TraceCheckUtils]: 29: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-08 07:11:40,897 INFO L290 TraceCheckUtils]: 30: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:40,898 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-08 07:11:40,898 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-08 07:11:40,898 INFO L290 TraceCheckUtils]: 33: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-08 07:11:40,898 INFO L290 TraceCheckUtils]: 34: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-08 07:11:40,898 INFO L290 TraceCheckUtils]: 35: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:40,899 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-08 07:11:40,899 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-08 07:11:40,900 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-08 07:11:40,900 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-08 07:11:40,900 INFO L290 TraceCheckUtils]: 40: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-08 07:11:40,900 INFO L290 TraceCheckUtils]: 41: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-08 07:11:40,901 INFO L290 TraceCheckUtils]: 42: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:40,901 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-08 07:11:40,902 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-08 07:11:40,903 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-08 07:11:40,903 INFO L290 TraceCheckUtils]: 46: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-08 07:11:40,903 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-08 07:11:40,903 INFO L290 TraceCheckUtils]: 48: Hoare triple {669#false} ~cond := #in~cond; {669#false} is VALID [2022-04-08 07:11:40,903 INFO L290 TraceCheckUtils]: 49: Hoare triple {669#false} assume 0 == ~cond; {669#false} is VALID [2022-04-08 07:11:40,903 INFO L290 TraceCheckUtils]: 50: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-08 07:11:40,904 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-08 07:11:40,904 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:11:42,420 INFO L290 TraceCheckUtils]: 50: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-08 07:11:42,421 INFO L290 TraceCheckUtils]: 49: Hoare triple {669#false} assume 0 == ~cond; {669#false} is VALID [2022-04-08 07:11:42,421 INFO L290 TraceCheckUtils]: 48: Hoare triple {669#false} ~cond := #in~cond; {669#false} is VALID [2022-04-08 07:11:42,421 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-08 07:11:42,421 INFO L290 TraceCheckUtils]: 46: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-08 07:11:42,421 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-08 07:11:42,422 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-08 07:11:42,422 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-08 07:11:42,422 INFO L290 TraceCheckUtils]: 42: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:42,423 INFO L290 TraceCheckUtils]: 41: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-08 07:11:42,423 INFO L290 TraceCheckUtils]: 40: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-08 07:11:42,423 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-08 07:11:42,423 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-08 07:11:42,424 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-08 07:11:42,424 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-08 07:11:42,424 INFO L290 TraceCheckUtils]: 35: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:42,425 INFO L290 TraceCheckUtils]: 34: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-08 07:11:42,425 INFO L290 TraceCheckUtils]: 33: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-08 07:11:42,425 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-08 07:11:42,426 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-08 07:11:42,427 INFO L290 TraceCheckUtils]: 30: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:42,427 INFO L290 TraceCheckUtils]: 29: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-08 07:11:42,427 INFO L290 TraceCheckUtils]: 28: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-08 07:11:42,427 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-08 07:11:42,432 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-08 07:11:42,432 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-08 07:11:42,433 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-08 07:11:42,433 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-08 07:11:42,433 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-08 07:11:42,434 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-08 07:11:42,434 INFO L290 TraceCheckUtils]: 20: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:42,434 INFO L290 TraceCheckUtils]: 19: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-08 07:11:42,434 INFO L290 TraceCheckUtils]: 18: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-08 07:11:42,434 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-08 07:11:42,435 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-08 07:11:42,435 INFO L290 TraceCheckUtils]: 15: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:42,435 INFO L290 TraceCheckUtils]: 14: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-08 07:11:42,435 INFO L290 TraceCheckUtils]: 13: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-08 07:11:42,436 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-08 07:11:42,436 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-08 07:11:42,437 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-08 07:11:42,437 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-08 07:11:42,438 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-08 07:11:42,438 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-08 07:11:42,439 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-08 07:11:42,439 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-08 07:11:42,439 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} call #t~ret6 := main(); {668#true} is VALID [2022-04-08 07:11:42,439 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {668#true} {668#true} #79#return; {668#true} is VALID [2022-04-08 07:11:42,439 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-08 07:11:42,439 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-08 07:11:42,439 INFO L272 TraceCheckUtils]: 0: Hoare triple {668#true} call ULTIMATE.init(); {668#true} is VALID [2022-04-08 07:11:42,440 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-08 07:11:42,440 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:11:42,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [981443531] [2022-04-08 07:11:42,440 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:11:42,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [665364362] [2022-04-08 07:11:42,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [665364362] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:11:42,441 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:11:42,441 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 10 [2022-04-08 07:11:42,441 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:11:42,441 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1360268302] [2022-04-08 07:11:42,441 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1360268302] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:11:42,441 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:11:42,441 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 07:11:42,441 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [638138353] [2022-04-08 07:11:42,442 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:11:42,442 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-08 07:11:42,443 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:11:42,443 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-08 07:11:42,480 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-08 07:11:42,480 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 07:11:42,480 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:11:42,481 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 07:11:42,481 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-08 07:11:42,481 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-08 07:11:42,810 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:42,810 INFO L93 Difference]: Finished difference Result 50 states and 60 transitions. [2022-04-08 07:11:42,810 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 07:11:42,811 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-08 07:11:42,811 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:11:42,811 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-08 07:11:42,814 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 57 transitions. [2022-04-08 07:11:42,814 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-08 07:11:42,816 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 57 transitions. [2022-04-08 07:11:42,816 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 57 transitions. [2022-04-08 07:11:42,869 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-08 07:11:42,871 INFO L225 Difference]: With dead ends: 50 [2022-04-08 07:11:42,871 INFO L226 Difference]: Without dead ends: 39 [2022-04-08 07:11:42,871 INFO L912 BasicCegarLoop]: 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-08 07:11:42,873 INFO L913 BasicCegarLoop]: 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-08 07:11:42,873 INFO L914 BasicCegarLoop]: 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-08 07:11:42,874 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-04-08 07:11:42,901 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 37. [2022-04-08 07:11:42,901 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:11:42,901 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-08 07:11:42,901 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-08 07:11:42,902 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-08 07:11:42,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:42,904 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-08 07:11:42,904 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-08 07:11:42,904 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:11:42,905 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:11:42,905 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-08 07:11:42,905 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-08 07:11:42,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:42,907 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-08 07:11:42,907 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-08 07:11:42,908 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:11:42,908 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:11:42,908 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:11:42,908 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:11:42,908 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-08 07:11:42,910 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 44 transitions. [2022-04-08 07:11:42,910 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 44 transitions. Word has length 51 [2022-04-08 07:11:42,910 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:11:42,910 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 44 transitions. [2022-04-08 07:11:42,910 INFO L479 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-08 07:11:42,911 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 44 transitions. [2022-04-08 07:11:42,969 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-08 07:11:42,969 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 44 transitions. [2022-04-08 07:11:42,970 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-08 07:11:42,970 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 07:11:42,970 INFO L499 BasicCegarLoop]: 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-08 07:11:42,980 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-08 07:11:43,175 WARN L460 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-08 07:11:43,175 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 07:11:43,176 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 07:11:43,176 INFO L85 PathProgramCache]: Analyzing trace with hash 1612877217, now seen corresponding path program 1 times [2022-04-08 07:11:43,176 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 07:11:43,176 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1787244335] [2022-04-08 07:11:43,176 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 07:11:43,176 INFO L85 PathProgramCache]: Analyzing trace with hash 1612877217, now seen corresponding path program 2 times [2022-04-08 07:11:43,176 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 07:11:43,177 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [517755633] [2022-04-08 07:11:43,177 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 07:11:43,177 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 07:11:43,201 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 07:11:43,201 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1080239362] [2022-04-08 07:11:43,201 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 07:11:43,202 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 07:11:43,202 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 07:11:43,204 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-08 07:11:43,219 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-08 07:11:43,796 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 07:11:43,797 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 07:11:43,799 INFO L263 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-08 07:11:43,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 07:11:43,814 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 07:11:45,833 INFO L272 TraceCheckUtils]: 0: Hoare triple {1239#true} call ULTIMATE.init(); {1239#true} is VALID [2022-04-08 07:11:45,834 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-08 07:11:45,834 INFO L290 TraceCheckUtils]: 2: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:45,834 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1239#true} {1239#true} #79#return; {1239#true} is VALID [2022-04-08 07:11:45,834 INFO L272 TraceCheckUtils]: 4: Hoare triple {1239#true} call #t~ret6 := main(); {1239#true} is VALID [2022-04-08 07:11:45,834 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-08 07:11:45,834 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-08 07:11:45,834 INFO L290 TraceCheckUtils]: 7: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-08 07:11:45,834 INFO L290 TraceCheckUtils]: 8: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-08 07:11:45,835 INFO L290 TraceCheckUtils]: 9: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:45,835 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1239#true} {1239#true} #63#return; {1239#true} is VALID [2022-04-08 07:11:45,835 INFO L290 TraceCheckUtils]: 11: Hoare triple {1239#true} ~b~0 := #t~nondet5;havoc #t~nondet5; {1239#true} is VALID [2022-04-08 07:11:45,835 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-08 07:11:45,835 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-08 07:11:45,836 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-08 07:11:45,836 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-08 07:11:45,837 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-08 07:11:45,837 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-08 07:11:45,837 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-08 07:11:45,837 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-08 07:11:45,838 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-08 07:11:45,838 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-08 07:11:45,838 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-08 07:11:45,838 INFO L290 TraceCheckUtils]: 23: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-08 07:11:45,839 INFO L290 TraceCheckUtils]: 24: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-08 07:11:45,839 INFO L290 TraceCheckUtils]: 25: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:45,839 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-08 07:11:45,839 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-08 07:11:45,839 INFO L290 TraceCheckUtils]: 28: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-08 07:11:45,839 INFO L290 TraceCheckUtils]: 29: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-08 07:11:45,840 INFO L290 TraceCheckUtils]: 30: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:45,841 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-08 07:11:45,842 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-08 07:11:45,842 INFO L290 TraceCheckUtils]: 33: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-08 07:11:45,842 INFO L290 TraceCheckUtils]: 34: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-08 07:11:45,842 INFO L290 TraceCheckUtils]: 35: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:45,847 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-08 07:11:45,848 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-08 07:11:45,848 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-08 07:11:45,848 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-08 07:11:45,848 INFO L290 TraceCheckUtils]: 40: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-08 07:11:45,848 INFO L290 TraceCheckUtils]: 41: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-08 07:11:45,849 INFO L290 TraceCheckUtils]: 42: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:45,854 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-08 07:11:45,854 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-08 07:11:45,855 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-08 07:11:45,855 INFO L290 TraceCheckUtils]: 46: Hoare triple {1240#false} assume !false; {1240#false} is VALID [2022-04-08 07:11:45,855 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-08 07:11:45,856 INFO L290 TraceCheckUtils]: 48: Hoare triple {1240#false} ~cond := #in~cond; {1240#false} is VALID [2022-04-08 07:11:45,856 INFO L290 TraceCheckUtils]: 49: Hoare triple {1240#false} assume 0 == ~cond; {1240#false} is VALID [2022-04-08 07:11:45,856 INFO L290 TraceCheckUtils]: 50: Hoare triple {1240#false} assume !false; {1240#false} is VALID [2022-04-08 07:11:45,856 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-08 07:11:45,856 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 07:11:48,911 INFO L290 TraceCheckUtils]: 50: Hoare triple {1240#false} assume !false; {1240#false} is VALID [2022-04-08 07:11:48,911 INFO L290 TraceCheckUtils]: 49: Hoare triple {1240#false} assume 0 == ~cond; {1240#false} is VALID [2022-04-08 07:11:48,911 INFO L290 TraceCheckUtils]: 48: Hoare triple {1240#false} ~cond := #in~cond; {1240#false} is VALID [2022-04-08 07:11:48,911 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-08 07:11:48,911 INFO L290 TraceCheckUtils]: 46: Hoare triple {1240#false} assume !false; {1240#false} is VALID [2022-04-08 07:11:48,912 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-08 07:11:48,913 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-08 07:11:48,913 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-08 07:11:48,914 INFO L290 TraceCheckUtils]: 42: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:48,914 INFO L290 TraceCheckUtils]: 41: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-08 07:11:48,914 INFO L290 TraceCheckUtils]: 40: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-08 07:11:48,914 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-08 07:11:48,914 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-08 07:11:48,915 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-08 07:11:48,915 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-08 07:11:48,915 INFO L290 TraceCheckUtils]: 35: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:48,915 INFO L290 TraceCheckUtils]: 34: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-08 07:11:48,915 INFO L290 TraceCheckUtils]: 33: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-08 07:11:48,916 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-08 07:11:48,916 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-08 07:11:48,916 INFO L290 TraceCheckUtils]: 30: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:48,916 INFO L290 TraceCheckUtils]: 29: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-08 07:11:48,916 INFO L290 TraceCheckUtils]: 28: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-08 07:11:48,916 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-08 07:11:48,917 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-08 07:11:48,917 INFO L290 TraceCheckUtils]: 25: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:48,917 INFO L290 TraceCheckUtils]: 24: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-08 07:11:48,917 INFO L290 TraceCheckUtils]: 23: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-08 07:11:48,917 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-08 07:11:48,918 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-08 07:11:48,919 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-08 07:11:48,919 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-08 07:11:48,919 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-08 07:11:48,919 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-08 07:11:48,920 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-08 07:11:48,920 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-08 07:11:48,921 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-08 07:11:48,922 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-08 07:11:48,922 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-08 07:11:48,922 INFO L290 TraceCheckUtils]: 11: Hoare triple {1239#true} ~b~0 := #t~nondet5;havoc #t~nondet5; {1239#true} is VALID [2022-04-08 07:11:48,922 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1239#true} {1239#true} #63#return; {1239#true} is VALID [2022-04-08 07:11:48,922 INFO L290 TraceCheckUtils]: 9: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:48,922 INFO L290 TraceCheckUtils]: 8: Hoare triple {1239#true} assume !(0 == ~cond); {1239#true} is VALID [2022-04-08 07:11:48,922 INFO L290 TraceCheckUtils]: 7: Hoare triple {1239#true} ~cond := #in~cond; {1239#true} is VALID [2022-04-08 07:11:48,922 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-08 07:11:48,922 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-08 07:11:48,923 INFO L272 TraceCheckUtils]: 4: Hoare triple {1239#true} call #t~ret6 := main(); {1239#true} is VALID [2022-04-08 07:11:48,923 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1239#true} {1239#true} #79#return; {1239#true} is VALID [2022-04-08 07:11:48,923 INFO L290 TraceCheckUtils]: 2: Hoare triple {1239#true} assume true; {1239#true} is VALID [2022-04-08 07:11:48,923 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-08 07:11:48,923 INFO L272 TraceCheckUtils]: 0: Hoare triple {1239#true} call ULTIMATE.init(); {1239#true} is VALID [2022-04-08 07:11:48,923 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-08 07:11:48,924 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 07:11:48,924 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [517755633] [2022-04-08 07:11:48,924 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 07:11:48,924 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1080239362] [2022-04-08 07:11:48,924 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1080239362] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 07:11:48,924 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 07:11:48,924 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-08 07:11:48,925 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 07:11:48,925 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1787244335] [2022-04-08 07:11:48,925 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1787244335] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 07:11:48,925 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 07:11:48,925 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 07:11:48,925 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [319953798] [2022-04-08 07:11:48,925 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 07:11:48,926 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-08 07:11:48,926 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 07:11:48,926 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-08 07:11:48,958 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-08 07:11:48,958 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 07:11:48,958 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 07:11:48,959 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 07:11:48,959 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-08 07:11:48,959 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-08 07:11:49,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:49,231 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-08 07:11:49,231 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 07:11:49,231 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-08 07:11:49,231 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 07:11:49,231 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-08 07:11:49,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 46 transitions. [2022-04-08 07:11:49,233 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-08 07:11:49,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 46 transitions. [2022-04-08 07:11:49,235 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 46 transitions. [2022-04-08 07:11:49,273 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-08 07:11:49,273 INFO L225 Difference]: With dead ends: 39 [2022-04-08 07:11:49,273 INFO L226 Difference]: Without dead ends: 0 [2022-04-08 07:11:49,273 INFO L912 BasicCegarLoop]: 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-08 07:11:49,274 INFO L913 BasicCegarLoop]: 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-08 07:11:49,275 INFO L914 BasicCegarLoop]: 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-08 07:11:49,275 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-08 07:11:49,275 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-08 07:11:49,275 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 07:11:49,275 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-08 07:11:49,276 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-08 07:11:49,276 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-08 07:11:49,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:49,276 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 07:11:49,276 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 07:11:49,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:11:49,276 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:11:49,276 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-08 07:11:49,276 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-08 07:11:49,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 07:11:49,276 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 07:11:49,277 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 07:11:49,277 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:11:49,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 07:11:49,277 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 07:11:49,277 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 07:11:49,277 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-08 07:11:49,277 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-08 07:11:49,277 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 51 [2022-04-08 07:11:49,277 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 07:11:49,277 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-08 07:11:49,278 INFO L479 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-08 07:11:49,278 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-08 07:11:49,278 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-08 07:11:49,278 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 07:11:49,278 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 07:11:49,280 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 07:11:49,287 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-08 07:11:49,483 WARN L460 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-08 07:11:49,485 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-08 07:11:49,790 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 5) no Hoare annotation was computed. [2022-04-08 07:11:49,791 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 5) no Hoare annotation was computed. [2022-04-08 07:11:49,791 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 5) no Hoare annotation was computed. [2022-04-08 07:11:49,791 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 8 10) the Hoare annotation is: true [2022-04-08 07:11:49,791 INFO L878 garLoopResultBuilder]: At program point L9(line 9) the Hoare annotation is: (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|) [2022-04-08 07:11:49,791 INFO L878 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-08 07:11:49,791 INFO L878 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-08 07:11:49,791 INFO L878 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-08 07:11:49,792 INFO L878 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-08 07:11:49,792 INFO L878 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: (<= (mod main_~a~0 4294967296) 1) [2022-04-08 07:11:49,792 INFO L885 garLoopResultBuilder]: At program point mainEXIT(lines 19 57) the Hoare annotation is: true [2022-04-08 07:11:49,792 INFO L878 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-08 07:11:49,792 INFO L885 garLoopResultBuilder]: At program point L23(line 23) the Hoare annotation is: true [2022-04-08 07:11:49,792 INFO L878 garLoopResultBuilder]: At program point L23-1(line 23) the Hoare annotation is: (<= (mod main_~a~0 4294967296) 1) [2022-04-08 07:11:49,792 INFO L885 garLoopResultBuilder]: At program point L52(line 52) the Hoare annotation is: true [2022-04-08 07:11:49,792 INFO L885 garLoopResultBuilder]: At program point mainFINAL(lines 19 57) the Hoare annotation is: true [2022-04-08 07:11:49,793 INFO L878 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-08 07:11:49,793 INFO L878 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-08 07:11:49,793 INFO L878 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-08 07:11:49,793 INFO L885 garLoopResultBuilder]: At program point mainENTRY(lines 19 57) the Hoare annotation is: true [2022-04-08 07:11:49,793 INFO L878 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-08 07:11:49,793 INFO L878 garLoopResultBuilder]: At program point L43(lines 43 49) the Hoare annotation is: false [2022-04-08 07:11:49,793 INFO L878 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-08 07:11:49,793 INFO L878 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-08 07:11:49,794 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2022-04-08 07:11:49,794 INFO L878 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-08 07:11:49,794 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2022-04-08 07:11:49,794 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-08 07:11:49,794 INFO L885 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-08 07:11:49,794 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-08 07:11:49,794 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-08 07:11:49,794 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 11 17) the Hoare annotation is: true [2022-04-08 07:11:49,794 INFO L878 garLoopResultBuilder]: At program point L13(lines 13 14) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-08 07:11:49,795 INFO L878 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-08 07:11:49,795 INFO L878 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-08 07:11:49,795 INFO L878 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-08 07:11:49,795 INFO L878 garLoopResultBuilder]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 14) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-08 07:11:49,798 INFO L719 BasicCegarLoop]: Path program histogram: [2, 2, 2, 2] [2022-04-08 07:11:49,799 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 07:11:49,801 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-08 07:11:49,803 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-08 07:11:49,821 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-08 07:11:49,838 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 07:11:49 BoogieIcfgContainer [2022-04-08 07:11:49,838 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 07:11:49,839 INFO L158 Benchmark]: Toolchain (without parser) took 13590.84ms. Allocated memory was 201.3MB in the beginning and 358.6MB in the end (delta: 157.3MB). Free memory was 149.1MB in the beginning and 316.5MB in the end (delta: -167.4MB). Peak memory consumption was 149.3MB. Max. memory is 8.0GB. [2022-04-08 07:11:49,839 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 201.3MB. Free memory is still 165.0MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 07:11:49,839 INFO L158 Benchmark]: CACSL2BoogieTranslator took 297.13ms. Allocated memory is still 201.3MB. Free memory was 148.9MB in the beginning and 172.7MB in the end (delta: -23.8MB). Peak memory consumption was 10.8MB. Max. memory is 8.0GB. [2022-04-08 07:11:49,840 INFO L158 Benchmark]: Boogie Preprocessor took 42.57ms. Allocated memory is still 201.3MB. Free memory was 172.7MB in the beginning and 171.0MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-08 07:11:49,840 INFO L158 Benchmark]: RCFGBuilder took 289.57ms. Allocated memory is still 201.3MB. Free memory was 171.0MB in the beginning and 159.9MB in the end (delta: 11.2MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. [2022-04-08 07:11:49,840 INFO L158 Benchmark]: TraceAbstraction took 12956.78ms. Allocated memory was 201.3MB in the beginning and 358.6MB in the end (delta: 157.3MB). Free memory was 159.1MB in the beginning and 316.5MB in the end (delta: -157.4MB). Peak memory consumption was 159.5MB. Max. memory is 8.0GB. [2022-04-08 07:11:49,842 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.11ms. Allocated memory is still 201.3MB. Free memory is still 165.0MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 297.13ms. Allocated memory is still 201.3MB. Free memory was 148.9MB in the beginning and 172.7MB in the end (delta: -23.8MB). Peak memory consumption was 10.8MB. Max. memory is 8.0GB. * Boogie Preprocessor took 42.57ms. Allocated memory is still 201.3MB. Free memory was 172.7MB in the beginning and 171.0MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 289.57ms. Allocated memory is still 201.3MB. Free memory was 171.0MB in the beginning and 159.9MB in the end (delta: 11.2MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. * TraceAbstraction took 12956.78ms. Allocated memory was 201.3MB in the beginning and 358.6MB in the end (delta: 157.3MB). Free memory was 159.1MB in the beginning and 316.5MB in the end (delta: -157.4MB). Peak memory consumption was 159.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: 12.8s, OverallIterations: 4, TraceHistogramMax: 6, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 1.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.3s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 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-08 07:11:49,870 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...