/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/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/lcm2_valuebound1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 14:09:40,118 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 14:09:40,120 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 14:09:40,153 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 14:09:40,153 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 14:09:40,154 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 14:09:40,156 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 14:09:40,158 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 14:09:40,159 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 14:09:40,162 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 14:09:40,163 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 14:09:40,164 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 14:09:40,164 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 14:09:40,166 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 14:09:40,166 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 14:09:40,168 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 14:09:40,169 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 14:09:40,169 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 14:09:40,171 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 14:09:40,175 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 14:09:40,176 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 14:09:40,177 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 14:09:40,177 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 14:09:40,178 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 14:09:40,178 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 14:09:40,183 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 14:09:40,183 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 14:09:40,183 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 14:09:40,184 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 14:09:40,184 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 14:09:40,185 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 14:09:40,185 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 14:09:40,186 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 14:09:40,187 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 14:09:40,187 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 14:09:40,187 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 14:09:40,188 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 14:09:40,188 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 14:09:40,188 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 14:09:40,188 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 14:09:40,189 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 14:09:40,190 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 14:09:40,190 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-27 14:09:40,215 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 14:09:40,216 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 14:09:40,216 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 14:09:40,216 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 14:09:40,216 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 14:09:40,216 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 14:09:40,217 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 14:09:40,217 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 14:09:40,217 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 14:09:40,217 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 14:09:40,217 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 14:09:40,218 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 14:09:40,218 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 14:09:40,218 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 14:09:40,218 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 14:09:40,218 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 14:09:40,218 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 14:09:40,219 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 14:09:40,219 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 14:09:40,219 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 14:09:40,219 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 14:09:40,219 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 14:09:40,219 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 14:09:40,219 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 14:09:40,220 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 14:09:40,220 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 14:09:40,220 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 14:09:40,220 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 14:09:40,220 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 14:09:40,220 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 14:09:40,220 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 14:09:40,220 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 14:09:40,220 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 14:09:40,220 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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-27 14:09:40,358 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 14:09:40,372 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 14:09:40,374 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 14:09:40,374 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 14:09:40,375 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 14:09:40,376 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-27 14:09:40,432 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6e3207b8b/53e94755b1794f6ab43e46e252224911/FLAGa89e0baf8 [2022-04-27 14:09:40,763 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 14:09:40,764 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/lcm2_valuebound1.c [2022-04-27 14:09:40,768 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6e3207b8b/53e94755b1794f6ab43e46e252224911/FLAGa89e0baf8 [2022-04-27 14:09:41,217 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6e3207b8b/53e94755b1794f6ab43e46e252224911 [2022-04-27 14:09:41,221 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 14:09:41,222 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 14:09:41,223 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 14:09:41,223 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 14:09:41,225 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 14:09:41,225 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 02:09:41" (1/1) ... [2022-04-27 14:09:41,226 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3d400d04 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41, skipping insertion in model container [2022-04-27 14:09:41,226 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 02:09:41" (1/1) ... [2022-04-27 14:09:41,230 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 14:09:41,238 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 14:09:41,361 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-27 14:09:41,372 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 14:09:41,377 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 14:09:41,387 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-27 14:09:41,391 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 14:09:41,399 INFO L208 MainTranslator]: Completed translation [2022-04-27 14:09:41,400 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41 WrapperNode [2022-04-27 14:09:41,400 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 14:09:41,400 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 14:09:41,400 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 14:09:41,401 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 14:09:41,406 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41" (1/1) ... [2022-04-27 14:09:41,407 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41" (1/1) ... [2022-04-27 14:09:41,410 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41" (1/1) ... [2022-04-27 14:09:41,410 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41" (1/1) ... [2022-04-27 14:09:41,414 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41" (1/1) ... [2022-04-27 14:09:41,416 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41" (1/1) ... [2022-04-27 14:09:41,417 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41" (1/1) ... [2022-04-27 14:09:41,418 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 14:09:41,418 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 14:09:41,418 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 14:09:41,418 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 14:09:41,421 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41" (1/1) ... [2022-04-27 14:09:41,429 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 14:09:41,435 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:09:41,466 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-27 14:09:41,467 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-27 14:09:41,489 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 14:09:41,489 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 14:09:41,489 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 14:09:41,489 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 14:09:41,489 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 14:09:41,489 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 14:09:41,489 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 14:09:41,489 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 14:09:41,489 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 14:09:41,489 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 14:09:41,489 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-27 14:09:41,489 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 14:09:41,489 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 14:09:41,490 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 14:09:41,490 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 14:09:41,490 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 14:09:41,490 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 14:09:41,490 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 14:09:41,490 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 14:09:41,490 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 14:09:41,528 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 14:09:41,530 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 14:09:41,715 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 14:09:41,732 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 14:09:41,732 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 14:09:41,733 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 02:09:41 BoogieIcfgContainer [2022-04-27 14:09:41,733 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 14:09:41,739 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 14:09:41,739 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 14:09:41,744 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 14:09:41,745 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 02:09:41" (1/3) ... [2022-04-27 14:09:41,745 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@196b866c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 02:09:41, skipping insertion in model container [2022-04-27 14:09:41,745 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:09:41" (2/3) ... [2022-04-27 14:09:41,745 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@196b866c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 02:09:41, skipping insertion in model container [2022-04-27 14:09:41,745 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 02:09:41" (3/3) ... [2022-04-27 14:09:41,746 INFO L111 eAbstractionObserver]: Analyzing ICFG lcm2_valuebound1.c [2022-04-27 14:09:41,755 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 14:09:41,755 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 14:09:41,788 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 14:09:41,792 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@7494267, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@790cf2e1 [2022-04-27 14:09:41,800 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 14:09:41,806 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-27 14:09:41,811 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 14:09:41,811 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:09:41,812 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:09:41,812 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:09:41,815 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:09:41,815 INFO L85 PathProgramCache]: Analyzing trace with hash 1830914611, now seen corresponding path program 1 times [2022-04-27 14:09:41,822 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:09:41,822 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [647752401] [2022-04-27 14:09:41,822 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:09:41,823 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:09:41,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:41,956 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 14:09:41,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:41,971 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-27 14:09:41,971 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume true; {37#true} is VALID [2022-04-27 14:09:41,971 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {37#true} {37#true} #79#return; {37#true} is VALID [2022-04-27 14:09:41,972 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 14:09:41,973 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:41,977 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:41,978 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:41,978 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:41,978 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {37#true} #63#return; {38#false} is VALID [2022-04-27 14:09:41,978 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 14:09:41,980 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:41,984 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:41,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:41,984 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:41,984 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #65#return; {38#false} is VALID [2022-04-27 14:09:41,985 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 14:09:41,986 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:41,989 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:41,990 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:41,990 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:41,990 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #67#return; {38#false} is VALID [2022-04-27 14:09:41,990 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 14:09:41,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:41,995 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:41,996 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:41,996 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:41,996 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #69#return; {38#false} is VALID [2022-04-27 14:09:41,996 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 14:09:41,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:42,001 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:42,002 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:42,002 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:42,002 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #71#return; {38#false} is VALID [2022-04-27 14:09:42,002 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 32 [2022-04-27 14:09:42,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:42,008 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:42,008 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:42,009 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:42,009 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#false} {38#false} #73#return; {38#false} is VALID [2022-04-27 14:09:42,010 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-27 14:09:42,010 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-27 14:09:42,010 INFO L290 TraceCheckUtils]: 2: Hoare triple {37#true} assume true; {37#true} is VALID [2022-04-27 14:09:42,010 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37#true} {37#true} #79#return; {37#true} is VALID [2022-04-27 14:09:42,010 INFO L272 TraceCheckUtils]: 4: Hoare triple {37#true} call #t~ret6 := main(); {37#true} is VALID [2022-04-27 14:09:42,010 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-27 14:09:42,010 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-27 14:09:42,011 INFO L290 TraceCheckUtils]: 7: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:42,011 INFO L290 TraceCheckUtils]: 8: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:42,011 INFO L290 TraceCheckUtils]: 9: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:42,011 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38#false} {37#true} #63#return; {38#false} is VALID [2022-04-27 14:09:42,011 INFO L290 TraceCheckUtils]: 11: Hoare triple {38#false} ~b~0 := #t~nondet5;havoc #t~nondet5; {38#false} is VALID [2022-04-27 14:09:42,012 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-27 14:09:42,012 INFO L290 TraceCheckUtils]: 13: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:42,012 INFO L290 TraceCheckUtils]: 14: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:42,012 INFO L290 TraceCheckUtils]: 15: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:42,013 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {38#false} {38#false} #65#return; {38#false} is VALID [2022-04-27 14:09:42,013 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-27 14:09:42,013 INFO L290 TraceCheckUtils]: 18: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:42,013 INFO L290 TraceCheckUtils]: 19: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:42,013 INFO L290 TraceCheckUtils]: 20: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:42,014 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38#false} {38#false} #67#return; {38#false} is VALID [2022-04-27 14:09:42,014 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-27 14:09:42,014 INFO L290 TraceCheckUtils]: 23: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:42,014 INFO L290 TraceCheckUtils]: 24: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:42,015 INFO L290 TraceCheckUtils]: 25: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:42,015 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38#false} {38#false} #69#return; {38#false} is VALID [2022-04-27 14:09:42,015 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-27 14:09:42,015 INFO L290 TraceCheckUtils]: 28: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:42,015 INFO L290 TraceCheckUtils]: 29: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:42,016 INFO L290 TraceCheckUtils]: 30: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:42,016 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {38#false} {38#false} #71#return; {38#false} is VALID [2022-04-27 14:09:42,016 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-27 14:09:42,016 INFO L290 TraceCheckUtils]: 33: Hoare triple {37#true} ~cond := #in~cond; {37#true} is VALID [2022-04-27 14:09:42,017 INFO L290 TraceCheckUtils]: 34: Hoare triple {37#true} assume 0 == ~cond;assume false; {38#false} is VALID [2022-04-27 14:09:42,017 INFO L290 TraceCheckUtils]: 35: Hoare triple {38#false} assume true; {38#false} is VALID [2022-04-27 14:09:42,017 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {38#false} {38#false} #73#return; {38#false} is VALID [2022-04-27 14:09:42,017 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-27 14:09:42,017 INFO L290 TraceCheckUtils]: 38: Hoare triple {38#false} assume !true; {38#false} is VALID [2022-04-27 14:09:42,017 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-27 14:09:42,018 INFO L290 TraceCheckUtils]: 40: Hoare triple {38#false} ~cond := #in~cond; {38#false} is VALID [2022-04-27 14:09:42,018 INFO L290 TraceCheckUtils]: 41: Hoare triple {38#false} assume 0 == ~cond; {38#false} is VALID [2022-04-27 14:09:42,018 INFO L290 TraceCheckUtils]: 42: Hoare triple {38#false} assume !false; {38#false} is VALID [2022-04-27 14:09:42,018 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-27 14:09:42,019 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:09:42,019 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [647752401] [2022-04-27 14:09:42,019 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [647752401] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 14:09:42,020 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 14:09:42,020 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 14:09:42,021 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [268836549] [2022-04-27 14:09:42,021 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 14:09:42,025 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-27 14:09:42,026 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:09:42,028 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-27 14:09:42,055 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-27 14:09:42,055 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 14:09:42,056 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:09:42,069 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 14:09:42,069 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 14:09:42,071 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-27 14:09:42,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:42,236 INFO L93 Difference]: Finished difference Result 61 states and 90 transitions. [2022-04-27 14:09:42,236 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 14:09:42,236 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-27 14:09:42,237 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:09:42,237 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-27 14:09:42,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 90 transitions. [2022-04-27 14:09:42,245 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-27 14:09:42,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 90 transitions. [2022-04-27 14:09:42,249 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 90 transitions. [2022-04-27 14:09:42,332 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-27 14:09:42,341 INFO L225 Difference]: With dead ends: 61 [2022-04-27 14:09:42,341 INFO L226 Difference]: Without dead ends: 29 [2022-04-27 14:09:42,343 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 14:09:42,348 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 18 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 36 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 14:09:42,350 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [26 Valid, 36 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 14:09:42,361 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-27 14:09:42,377 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-27 14:09:42,377 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:09:42,378 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-27 14:09:42,379 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-27 14:09:42,380 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-27 14:09:42,385 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:42,385 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2022-04-27 14:09:42,385 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-27 14:09:42,386 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:09:42,386 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:09:42,386 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-27 14:09:42,387 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-27 14:09:42,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:42,390 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2022-04-27 14:09:42,390 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-27 14:09:42,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:09:42,391 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:09:42,391 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:09:42,391 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:09:42,392 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-27 14:09:42,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 36 transitions. [2022-04-27 14:09:42,404 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 36 transitions. Word has length 43 [2022-04-27 14:09:42,404 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:09:42,404 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 36 transitions. [2022-04-27 14:09:42,404 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 14:09:42,405 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 36 transitions. [2022-04-27 14:09:42,405 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 14:09:42,405 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:09:42,406 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:09:42,406 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 14:09:42,406 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:09:42,406 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:09:42,406 INFO L85 PathProgramCache]: Analyzing trace with hash 206107499, now seen corresponding path program 1 times [2022-04-27 14:09:42,407 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:09:42,407 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [419776567] [2022-04-27 14:09:42,407 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:09:42,407 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:09:42,428 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:09:42,428 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [832839147] [2022-04-27 14:09:42,428 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:09:42,429 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:09:42,429 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:09:42,430 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-27 14:09:42,474 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-27 14:09:42,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:42,558 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-27 14:09:42,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:42,582 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:09:43,038 INFO L272 TraceCheckUtils]: 0: Hoare triple {257#true} call ULTIMATE.init(); {257#true} is VALID [2022-04-27 14:09:43,039 INFO L290 TraceCheckUtils]: 1: Hoare triple {257#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); {257#true} is VALID [2022-04-27 14:09:43,039 INFO L290 TraceCheckUtils]: 2: Hoare triple {257#true} assume true; {257#true} is VALID [2022-04-27 14:09:43,039 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {257#true} {257#true} #79#return; {257#true} is VALID [2022-04-27 14:09:43,039 INFO L272 TraceCheckUtils]: 4: Hoare triple {257#true} call #t~ret6 := main(); {257#true} is VALID [2022-04-27 14:09:43,039 INFO L290 TraceCheckUtils]: 5: Hoare triple {257#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; {257#true} is VALID [2022-04-27 14:09:43,040 INFO L272 TraceCheckUtils]: 6: Hoare triple {257#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {257#true} is VALID [2022-04-27 14:09:43,040 INFO L290 TraceCheckUtils]: 7: Hoare triple {257#true} ~cond := #in~cond; {257#true} is VALID [2022-04-27 14:09:43,040 INFO L290 TraceCheckUtils]: 8: Hoare triple {257#true} assume !(0 == ~cond); {257#true} is VALID [2022-04-27 14:09:43,041 INFO L290 TraceCheckUtils]: 9: Hoare triple {257#true} assume true; {257#true} is VALID [2022-04-27 14:09:43,041 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {257#true} {257#true} #63#return; {257#true} is VALID [2022-04-27 14:09:43,041 INFO L290 TraceCheckUtils]: 11: Hoare triple {257#true} ~b~0 := #t~nondet5;havoc #t~nondet5; {257#true} is VALID [2022-04-27 14:09:43,041 INFO L272 TraceCheckUtils]: 12: Hoare triple {257#true} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {257#true} is VALID [2022-04-27 14:09:43,041 INFO L290 TraceCheckUtils]: 13: Hoare triple {257#true} ~cond := #in~cond; {257#true} is VALID [2022-04-27 14:09:43,041 INFO L290 TraceCheckUtils]: 14: Hoare triple {257#true} assume !(0 == ~cond); {257#true} is VALID [2022-04-27 14:09:43,041 INFO L290 TraceCheckUtils]: 15: Hoare triple {257#true} assume true; {257#true} is VALID [2022-04-27 14:09:43,042 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {257#true} {257#true} #65#return; {257#true} is VALID [2022-04-27 14:09:43,043 INFO L272 TraceCheckUtils]: 17: Hoare triple {257#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {257#true} is VALID [2022-04-27 14:09:43,043 INFO L290 TraceCheckUtils]: 18: Hoare triple {257#true} ~cond := #in~cond; {257#true} is VALID [2022-04-27 14:09:43,043 INFO L290 TraceCheckUtils]: 19: Hoare triple {257#true} assume !(0 == ~cond); {257#true} is VALID [2022-04-27 14:09:43,044 INFO L290 TraceCheckUtils]: 20: Hoare triple {257#true} assume true; {257#true} is VALID [2022-04-27 14:09:43,044 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {257#true} {257#true} #67#return; {257#true} is VALID [2022-04-27 14:09:43,044 INFO L272 TraceCheckUtils]: 22: Hoare triple {257#true} call assume_abort_if_not((if ~b~0 % 4294967296 >= 1 then 1 else 0)); {257#true} is VALID [2022-04-27 14:09:43,045 INFO L290 TraceCheckUtils]: 23: Hoare triple {257#true} ~cond := #in~cond; {257#true} is VALID [2022-04-27 14:09:43,045 INFO L290 TraceCheckUtils]: 24: Hoare triple {257#true} assume !(0 == ~cond); {257#true} is VALID [2022-04-27 14:09:43,045 INFO L290 TraceCheckUtils]: 25: Hoare triple {257#true} assume true; {257#true} is VALID [2022-04-27 14:09:43,045 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {257#true} {257#true} #69#return; {257#true} is VALID [2022-04-27 14:09:43,046 INFO L272 TraceCheckUtils]: 27: Hoare triple {257#true} call assume_abort_if_not((if ~a~0 % 4294967296 <= 65535 then 1 else 0)); {257#true} is VALID [2022-04-27 14:09:43,046 INFO L290 TraceCheckUtils]: 28: Hoare triple {257#true} ~cond := #in~cond; {257#true} is VALID [2022-04-27 14:09:43,046 INFO L290 TraceCheckUtils]: 29: Hoare triple {257#true} assume !(0 == ~cond); {257#true} is VALID [2022-04-27 14:09:43,048 INFO L290 TraceCheckUtils]: 30: Hoare triple {257#true} assume true; {257#true} is VALID [2022-04-27 14:09:43,049 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {257#true} {257#true} #71#return; {257#true} is VALID [2022-04-27 14:09:43,049 INFO L272 TraceCheckUtils]: 32: Hoare triple {257#true} call assume_abort_if_not((if ~b~0 % 4294967296 <= 65535 then 1 else 0)); {257#true} is VALID [2022-04-27 14:09:43,049 INFO L290 TraceCheckUtils]: 33: Hoare triple {257#true} ~cond := #in~cond; {257#true} is VALID [2022-04-27 14:09:43,049 INFO L290 TraceCheckUtils]: 34: Hoare triple {257#true} assume !(0 == ~cond); {257#true} is VALID [2022-04-27 14:09:43,049 INFO L290 TraceCheckUtils]: 35: Hoare triple {257#true} assume true; {257#true} is VALID [2022-04-27 14:09:43,050 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {257#true} {257#true} #73#return; {257#true} is VALID [2022-04-27 14:09:43,050 INFO L290 TraceCheckUtils]: 37: Hoare triple {257#true} ~x~0 := ~a~0;~y~0 := ~b~0;~u~0 := ~b~0;~v~0 := ~a~0; {373#(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-27 14:09:43,051 INFO L290 TraceCheckUtils]: 38: Hoare triple {373#(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; {373#(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-27 14:09:43,055 INFO L272 TraceCheckUtils]: 39: Hoare triple {373#(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)); {380#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2022-04-27 14:09:43,055 INFO L290 TraceCheckUtils]: 40: Hoare triple {380#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {384#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:09:43,059 INFO L290 TraceCheckUtils]: 41: Hoare triple {384#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {258#false} is VALID [2022-04-27 14:09:43,059 INFO L290 TraceCheckUtils]: 42: Hoare triple {258#false} assume !false; {258#false} is VALID [2022-04-27 14:09:43,060 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-27 14:09:43,060 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 14:09:43,060 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:09:43,060 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [419776567] [2022-04-27 14:09:43,060 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:09:43,060 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [832839147] [2022-04-27 14:09:43,060 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [832839147] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 14:09:43,061 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 14:09:43,061 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 14:09:43,061 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [15906059] [2022-04-27 14:09:43,061 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 14:09:43,062 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-27 14:09:43,062 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:09:43,062 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-27 14:09:43,084 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-27 14:09:43,084 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 14:09:43,084 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:09:43,084 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 14:09:43,084 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 14:09:43,085 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-27 14:09:43,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:43,248 INFO L93 Difference]: Finished difference Result 40 states and 49 transitions. [2022-04-27 14:09:43,248 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 14:09:43,249 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-27 14:09:43,249 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:09:43,249 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-27 14:09:43,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 49 transitions. [2022-04-27 14:09:43,251 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-27 14:09:43,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 49 transitions. [2022-04-27 14:09:43,252 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 49 transitions. [2022-04-27 14:09:43,292 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-27 14:09:43,293 INFO L225 Difference]: With dead ends: 40 [2022-04-27 14:09:43,293 INFO L226 Difference]: Without dead ends: 37 [2022-04-27 14:09:43,293 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 39 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 14:09:43,294 INFO L413 NwaCegarLoop]: 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-27 14:09:43,294 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 105 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 14:09:43,295 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-27 14:09:43,298 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 36. [2022-04-27 14:09:43,298 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:09:43,299 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-27 14:09:43,299 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-27 14:09:43,299 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-27 14:09:43,301 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:43,301 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-27 14:09:43,301 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 45 transitions. [2022-04-27 14:09:43,303 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:09:43,303 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:09:43,304 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-27 14:09:43,304 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-27 14:09:43,306 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:43,306 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-27 14:09:43,306 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 45 transitions. [2022-04-27 14:09:43,306 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:09:43,306 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:09:43,306 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:09:43,307 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:09:43,307 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-27 14:09:43,308 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 43 transitions. [2022-04-27 14:09:43,308 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 43 transitions. Word has length 43 [2022-04-27 14:09:43,308 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:09:43,308 INFO L495 AbstractCegarLoop]: Abstraction has 36 states and 43 transitions. [2022-04-27 14:09:43,309 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-27 14:09:43,309 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 43 transitions. [2022-04-27 14:09:43,310 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 14:09:43,310 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:09:43,310 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:09:43,314 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-27 14:09:43,510 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:09:43,511 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:09:43,512 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:09:43,512 INFO L85 PathProgramCache]: Analyzing trace with hash 1555618915, now seen corresponding path program 1 times [2022-04-27 14:09:43,512 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:09:43,512 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [175466976] [2022-04-27 14:09:43,512 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:09:43,512 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:09:43,527 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:09:43,528 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1048022962] [2022-04-27 14:09:43,528 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:09:43,528 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:09:43,528 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:09:43,550 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-27 14:09:43,563 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-27 14:09:43,602 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:43,603 INFO L263 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 14:09:43,614 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:43,615 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:09:44,764 INFO L272 TraceCheckUtils]: 0: Hoare triple {579#true} call ULTIMATE.init(); {579#true} is VALID [2022-04-27 14:09:44,765 INFO L290 TraceCheckUtils]: 1: Hoare triple {579#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); {579#true} is VALID [2022-04-27 14:09:44,765 INFO L290 TraceCheckUtils]: 2: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:44,765 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {579#true} {579#true} #79#return; {579#true} is VALID [2022-04-27 14:09:44,766 INFO L272 TraceCheckUtils]: 4: Hoare triple {579#true} call #t~ret6 := main(); {579#true} is VALID [2022-04-27 14:09:44,767 INFO L290 TraceCheckUtils]: 5: Hoare triple {579#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; {579#true} is VALID [2022-04-27 14:09:44,776 INFO L272 TraceCheckUtils]: 6: Hoare triple {579#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {579#true} is VALID [2022-04-27 14:09:44,777 INFO L290 TraceCheckUtils]: 7: Hoare triple {579#true} ~cond := #in~cond; {605#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 14:09:44,780 INFO L290 TraceCheckUtils]: 8: Hoare triple {605#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {609#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:44,781 INFO L290 TraceCheckUtils]: 9: Hoare triple {609#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {609#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:44,781 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {609#(not (= |assume_abort_if_not_#in~cond| 0))} {579#true} #63#return; {616#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-27 14:09:44,782 INFO L290 TraceCheckUtils]: 11: Hoare triple {616#(<= (mod main_~a~0 4294967296) 1)} ~b~0 := #t~nondet5;havoc #t~nondet5; {616#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-27 14:09:44,782 INFO L272 TraceCheckUtils]: 12: Hoare triple {616#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {579#true} is VALID [2022-04-27 14:09:44,782 INFO L290 TraceCheckUtils]: 13: Hoare triple {579#true} ~cond := #in~cond; {579#true} is VALID [2022-04-27 14:09:44,782 INFO L290 TraceCheckUtils]: 14: Hoare triple {579#true} assume !(0 == ~cond); {579#true} is VALID [2022-04-27 14:09:44,782 INFO L290 TraceCheckUtils]: 15: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:44,782 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {579#true} {616#(<= (mod main_~a~0 4294967296) 1)} #65#return; {616#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-27 14:09:44,782 INFO L272 TraceCheckUtils]: 17: Hoare triple {616#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {579#true} is VALID [2022-04-27 14:09:44,783 INFO L290 TraceCheckUtils]: 18: Hoare triple {579#true} ~cond := #in~cond; {579#true} is VALID [2022-04-27 14:09:44,783 INFO L290 TraceCheckUtils]: 19: Hoare triple {579#true} assume !(0 == ~cond); {579#true} is VALID [2022-04-27 14:09:44,783 INFO L290 TraceCheckUtils]: 20: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:44,783 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {579#true} {616#(<= (mod main_~a~0 4294967296) 1)} #67#return; {616#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-27 14:09:44,783 INFO L272 TraceCheckUtils]: 22: Hoare triple {616#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~b~0 % 4294967296 >= 1 then 1 else 0)); {579#true} is VALID [2022-04-27 14:09:44,784 INFO L290 TraceCheckUtils]: 23: Hoare triple {579#true} ~cond := #in~cond; {605#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 14:09:44,784 INFO L290 TraceCheckUtils]: 24: Hoare triple {605#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {609#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:44,784 INFO L290 TraceCheckUtils]: 25: Hoare triple {609#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {609#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:44,785 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {609#(not (= |assume_abort_if_not_#in~cond| 0))} {616#(<= (mod main_~a~0 4294967296) 1)} #69#return; {665#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} is VALID [2022-04-27 14:09:44,785 INFO L272 TraceCheckUtils]: 27: Hoare triple {665#(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)); {579#true} is VALID [2022-04-27 14:09:44,785 INFO L290 TraceCheckUtils]: 28: Hoare triple {579#true} ~cond := #in~cond; {579#true} is VALID [2022-04-27 14:09:44,785 INFO L290 TraceCheckUtils]: 29: Hoare triple {579#true} assume !(0 == ~cond); {579#true} is VALID [2022-04-27 14:09:44,785 INFO L290 TraceCheckUtils]: 30: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:44,786 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {579#true} {665#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} #71#return; {665#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} is VALID [2022-04-27 14:09:44,786 INFO L272 TraceCheckUtils]: 32: Hoare triple {665#(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)); {579#true} is VALID [2022-04-27 14:09:44,786 INFO L290 TraceCheckUtils]: 33: Hoare triple {579#true} ~cond := #in~cond; {579#true} is VALID [2022-04-27 14:09:44,786 INFO L290 TraceCheckUtils]: 34: Hoare triple {579#true} assume !(0 == ~cond); {579#true} is VALID [2022-04-27 14:09:44,786 INFO L290 TraceCheckUtils]: 35: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:44,786 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {579#true} {665#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} #73#return; {665#(and (<= (mod main_~a~0 4294967296) 1) (<= 1 (mod main_~b~0 4294967296)))} is VALID [2022-04-27 14:09:44,788 INFO L290 TraceCheckUtils]: 37: Hoare triple {665#(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; {699#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} is VALID [2022-04-27 14:09:44,788 INFO L290 TraceCheckUtils]: 38: Hoare triple {699#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} assume !false; {699#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} is VALID [2022-04-27 14:09:44,788 INFO L272 TraceCheckUtils]: 39: Hoare triple {699#(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)); {579#true} is VALID [2022-04-27 14:09:44,788 INFO L290 TraceCheckUtils]: 40: Hoare triple {579#true} ~cond := #in~cond; {579#true} is VALID [2022-04-27 14:09:44,788 INFO L290 TraceCheckUtils]: 41: Hoare triple {579#true} assume !(0 == ~cond); {579#true} is VALID [2022-04-27 14:09:44,788 INFO L290 TraceCheckUtils]: 42: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:44,789 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {579#true} {699#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} #75#return; {699#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} is VALID [2022-04-27 14:09:44,790 INFO L290 TraceCheckUtils]: 44: Hoare triple {699#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} assume !!(~x~0 % 4294967296 != ~y~0 % 4294967296); {699#(and (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~y~0 4294967296)))} is VALID [2022-04-27 14:09:44,791 INFO L290 TraceCheckUtils]: 45: Hoare triple {699#(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; {580#false} is VALID [2022-04-27 14:09:44,791 INFO L290 TraceCheckUtils]: 46: Hoare triple {580#false} assume !false; {580#false} is VALID [2022-04-27 14:09:44,791 INFO L272 TraceCheckUtils]: 47: Hoare triple {580#false} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {580#false} is VALID [2022-04-27 14:09:44,791 INFO L290 TraceCheckUtils]: 48: Hoare triple {580#false} ~cond := #in~cond; {580#false} is VALID [2022-04-27 14:09:44,791 INFO L290 TraceCheckUtils]: 49: Hoare triple {580#false} assume 0 == ~cond; {580#false} is VALID [2022-04-27 14:09:44,791 INFO L290 TraceCheckUtils]: 50: Hoare triple {580#false} assume !false; {580#false} is VALID [2022-04-27 14:09:44,792 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-27 14:09:44,793 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 14:09:46,014 INFO L290 TraceCheckUtils]: 50: Hoare triple {580#false} assume !false; {580#false} is VALID [2022-04-27 14:09:46,015 INFO L290 TraceCheckUtils]: 49: Hoare triple {580#false} assume 0 == ~cond; {580#false} is VALID [2022-04-27 14:09:46,015 INFO L290 TraceCheckUtils]: 48: Hoare triple {580#false} ~cond := #in~cond; {580#false} is VALID [2022-04-27 14:09:46,015 INFO L272 TraceCheckUtils]: 47: Hoare triple {580#false} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {580#false} is VALID [2022-04-27 14:09:46,015 INFO L290 TraceCheckUtils]: 46: Hoare triple {580#false} assume !false; {580#false} is VALID [2022-04-27 14:09:46,015 INFO L290 TraceCheckUtils]: 45: Hoare triple {754#(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; {580#false} is VALID [2022-04-27 14:09:46,015 INFO L290 TraceCheckUtils]: 44: Hoare triple {754#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} assume !!(~x~0 % 4294967296 != ~y~0 % 4294967296); {754#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} is VALID [2022-04-27 14:09:46,016 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {579#true} {754#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} #75#return; {754#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} is VALID [2022-04-27 14:09:46,016 INFO L290 TraceCheckUtils]: 42: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:46,016 INFO L290 TraceCheckUtils]: 41: Hoare triple {579#true} assume !(0 == ~cond); {579#true} is VALID [2022-04-27 14:09:46,016 INFO L290 TraceCheckUtils]: 40: Hoare triple {579#true} ~cond := #in~cond; {579#true} is VALID [2022-04-27 14:09:46,016 INFO L272 TraceCheckUtils]: 39: Hoare triple {754#(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)); {579#true} is VALID [2022-04-27 14:09:46,017 INFO L290 TraceCheckUtils]: 38: Hoare triple {754#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} assume !false; {754#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} is VALID [2022-04-27 14:09:46,017 INFO L290 TraceCheckUtils]: 37: Hoare triple {779#(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; {754#(not (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)))} is VALID [2022-04-27 14:09:46,018 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {579#true} {779#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} #73#return; {779#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} is VALID [2022-04-27 14:09:46,018 INFO L290 TraceCheckUtils]: 35: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:46,018 INFO L290 TraceCheckUtils]: 34: Hoare triple {579#true} assume !(0 == ~cond); {579#true} is VALID [2022-04-27 14:09:46,018 INFO L290 TraceCheckUtils]: 33: Hoare triple {579#true} ~cond := #in~cond; {579#true} is VALID [2022-04-27 14:09:46,018 INFO L272 TraceCheckUtils]: 32: Hoare triple {779#(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)); {579#true} is VALID [2022-04-27 14:09:46,018 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {579#true} {779#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} #71#return; {779#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} is VALID [2022-04-27 14:09:46,019 INFO L290 TraceCheckUtils]: 30: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:46,019 INFO L290 TraceCheckUtils]: 29: Hoare triple {579#true} assume !(0 == ~cond); {579#true} is VALID [2022-04-27 14:09:46,019 INFO L290 TraceCheckUtils]: 28: Hoare triple {579#true} ~cond := #in~cond; {579#true} is VALID [2022-04-27 14:09:46,019 INFO L272 TraceCheckUtils]: 27: Hoare triple {779#(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)); {579#true} is VALID [2022-04-27 14:09:46,020 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {609#(not (= |assume_abort_if_not_#in~cond| 0))} {616#(<= (mod main_~a~0 4294967296) 1)} #69#return; {779#(not (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)))} is VALID [2022-04-27 14:09:46,020 INFO L290 TraceCheckUtils]: 25: Hoare triple {609#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {609#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:46,020 INFO L290 TraceCheckUtils]: 24: Hoare triple {822#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {609#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:46,021 INFO L290 TraceCheckUtils]: 23: Hoare triple {579#true} ~cond := #in~cond; {822#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 14:09:46,021 INFO L272 TraceCheckUtils]: 22: Hoare triple {616#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~b~0 % 4294967296 >= 1 then 1 else 0)); {579#true} is VALID [2022-04-27 14:09:46,021 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {579#true} {616#(<= (mod main_~a~0 4294967296) 1)} #67#return; {616#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-27 14:09:46,021 INFO L290 TraceCheckUtils]: 20: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:46,021 INFO L290 TraceCheckUtils]: 19: Hoare triple {579#true} assume !(0 == ~cond); {579#true} is VALID [2022-04-27 14:09:46,022 INFO L290 TraceCheckUtils]: 18: Hoare triple {579#true} ~cond := #in~cond; {579#true} is VALID [2022-04-27 14:09:46,022 INFO L272 TraceCheckUtils]: 17: Hoare triple {616#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {579#true} is VALID [2022-04-27 14:09:46,022 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {579#true} {616#(<= (mod main_~a~0 4294967296) 1)} #65#return; {616#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-27 14:09:46,022 INFO L290 TraceCheckUtils]: 15: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:46,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {579#true} assume !(0 == ~cond); {579#true} is VALID [2022-04-27 14:09:46,022 INFO L290 TraceCheckUtils]: 13: Hoare triple {579#true} ~cond := #in~cond; {579#true} is VALID [2022-04-27 14:09:46,022 INFO L272 TraceCheckUtils]: 12: Hoare triple {616#(<= (mod main_~a~0 4294967296) 1)} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {579#true} is VALID [2022-04-27 14:09:46,023 INFO L290 TraceCheckUtils]: 11: Hoare triple {616#(<= (mod main_~a~0 4294967296) 1)} ~b~0 := #t~nondet5;havoc #t~nondet5; {616#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-27 14:09:46,023 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {609#(not (= |assume_abort_if_not_#in~cond| 0))} {579#true} #63#return; {616#(<= (mod main_~a~0 4294967296) 1)} is VALID [2022-04-27 14:09:46,023 INFO L290 TraceCheckUtils]: 9: Hoare triple {609#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {609#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:46,024 INFO L290 TraceCheckUtils]: 8: Hoare triple {822#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {609#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:46,024 INFO L290 TraceCheckUtils]: 7: Hoare triple {579#true} ~cond := #in~cond; {822#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 14:09:46,024 INFO L272 TraceCheckUtils]: 6: Hoare triple {579#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {579#true} is VALID [2022-04-27 14:09:46,024 INFO L290 TraceCheckUtils]: 5: Hoare triple {579#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; {579#true} is VALID [2022-04-27 14:09:46,025 INFO L272 TraceCheckUtils]: 4: Hoare triple {579#true} call #t~ret6 := main(); {579#true} is VALID [2022-04-27 14:09:46,025 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {579#true} {579#true} #79#return; {579#true} is VALID [2022-04-27 14:09:46,025 INFO L290 TraceCheckUtils]: 2: Hoare triple {579#true} assume true; {579#true} is VALID [2022-04-27 14:09:46,025 INFO L290 TraceCheckUtils]: 1: Hoare triple {579#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); {579#true} is VALID [2022-04-27 14:09:46,025 INFO L272 TraceCheckUtils]: 0: Hoare triple {579#true} call ULTIMATE.init(); {579#true} is VALID [2022-04-27 14:09:46,025 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-27 14:09:46,025 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:09:46,025 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [175466976] [2022-04-27 14:09:46,025 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:09:46,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1048022962] [2022-04-27 14:09:46,026 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1048022962] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 14:09:46,026 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 14:09:46,026 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 10 [2022-04-27 14:09:46,026 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [66510045] [2022-04-27 14:09:46,026 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 14:09:46,027 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 7 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) Word has length 51 [2022-04-27 14:09:46,027 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:09:46,028 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 7 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-27 14:09:46,064 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:09:46,064 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 14:09:46,064 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:09:46,065 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 14:09:46,065 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-27 14:09:46,065 INFO L87 Difference]: Start difference. First operand 36 states and 43 transitions. Second operand has 10 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 7 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-27 14:09:46,468 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:46,468 INFO L93 Difference]: Finished difference Result 50 states and 60 transitions. [2022-04-27 14:09:46,468 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 14:09:46,469 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 7 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) Word has length 51 [2022-04-27 14:09:46,469 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:09:46,469 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 7 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-27 14:09:46,471 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-27 14:09:46,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 7 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-27 14:09:46,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-27 14:09:46,473 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 57 transitions. [2022-04-27 14:09:46,515 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-27 14:09:46,517 INFO L225 Difference]: With dead ends: 50 [2022-04-27 14:09:46,517 INFO L226 Difference]: Without dead ends: 39 [2022-04-27 14:09:46,517 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 92 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2022-04-27 14:09:46,518 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 29 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 109 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 121 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 109 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 14:09:46,518 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [31 Valid, 123 Invalid, 121 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 109 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 14:09:46,518 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-04-27 14:09:46,533 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 37. [2022-04-27 14:09:46,533 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:09:46,533 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-27 14:09:46,533 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-27 14:09:46,534 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-27 14:09:46,535 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:46,535 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-27 14:09:46,535 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-27 14:09:46,536 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:09:46,536 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:09:46,536 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-27 14:09:46,536 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-27 14:09:46,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:46,538 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-27 14:09:46,538 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-27 14:09:46,538 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:09:46,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:09:46,538 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:09:46,538 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:09:46,539 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-27 14:09:46,540 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 44 transitions. [2022-04-27 14:09:46,540 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 44 transitions. Word has length 51 [2022-04-27 14:09:46,540 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:09:46,540 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 44 transitions. [2022-04-27 14:09:46,540 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.7) internal successors, (27), 8 states have internal predecessors, (27), 7 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 6 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-27 14:09:46,541 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 44 transitions. [2022-04-27 14:09:46,542 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 14:09:46,542 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:09:46,542 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:09:46,558 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 14:09:46,751 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-27 14:09:46,752 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:09:46,752 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:09:46,752 INFO L85 PathProgramCache]: Analyzing trace with hash 1612877217, now seen corresponding path program 1 times [2022-04-27 14:09:46,752 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:09:46,753 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1661179208] [2022-04-27 14:09:46,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:09:46,753 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:09:46,783 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:09:46,783 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2108136562] [2022-04-27 14:09:46,783 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:09:46,784 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:09:46,784 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:09:46,785 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-27 14:09:46,786 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-27 14:09:46,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:46,828 INFO L263 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-27 14:09:46,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:09:46,842 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:09:48,286 INFO L272 TraceCheckUtils]: 0: Hoare triple {1106#true} call ULTIMATE.init(); {1106#true} is VALID [2022-04-27 14:09:48,286 INFO L290 TraceCheckUtils]: 1: Hoare triple {1106#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); {1106#true} is VALID [2022-04-27 14:09:48,286 INFO L290 TraceCheckUtils]: 2: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:48,286 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1106#true} {1106#true} #79#return; {1106#true} is VALID [2022-04-27 14:09:48,286 INFO L272 TraceCheckUtils]: 4: Hoare triple {1106#true} call #t~ret6 := main(); {1106#true} is VALID [2022-04-27 14:09:48,286 INFO L290 TraceCheckUtils]: 5: Hoare triple {1106#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; {1106#true} is VALID [2022-04-27 14:09:48,286 INFO L272 TraceCheckUtils]: 6: Hoare triple {1106#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {1106#true} is VALID [2022-04-27 14:09:48,287 INFO L290 TraceCheckUtils]: 7: Hoare triple {1106#true} ~cond := #in~cond; {1106#true} is VALID [2022-04-27 14:09:48,287 INFO L290 TraceCheckUtils]: 8: Hoare triple {1106#true} assume !(0 == ~cond); {1106#true} is VALID [2022-04-27 14:09:48,287 INFO L290 TraceCheckUtils]: 9: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:48,287 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1106#true} {1106#true} #63#return; {1106#true} is VALID [2022-04-27 14:09:48,287 INFO L290 TraceCheckUtils]: 11: Hoare triple {1106#true} ~b~0 := #t~nondet5;havoc #t~nondet5; {1106#true} is VALID [2022-04-27 14:09:48,287 INFO L272 TraceCheckUtils]: 12: Hoare triple {1106#true} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {1106#true} is VALID [2022-04-27 14:09:48,287 INFO L290 TraceCheckUtils]: 13: Hoare triple {1106#true} ~cond := #in~cond; {1150#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 14:09:48,288 INFO L290 TraceCheckUtils]: 14: Hoare triple {1150#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1154#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:48,288 INFO L290 TraceCheckUtils]: 15: Hoare triple {1154#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1154#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:48,288 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1154#(not (= |assume_abort_if_not_#in~cond| 0))} {1106#true} #65#return; {1161#(<= (mod main_~b~0 4294967296) 1)} is VALID [2022-04-27 14:09:48,288 INFO L272 TraceCheckUtils]: 17: Hoare triple {1161#(<= (mod main_~b~0 4294967296) 1)} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {1106#true} is VALID [2022-04-27 14:09:48,289 INFO L290 TraceCheckUtils]: 18: Hoare triple {1106#true} ~cond := #in~cond; {1150#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 14:09:48,289 INFO L290 TraceCheckUtils]: 19: Hoare triple {1150#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1154#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:48,289 INFO L290 TraceCheckUtils]: 20: Hoare triple {1154#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1154#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:48,290 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1154#(not (= |assume_abort_if_not_#in~cond| 0))} {1161#(<= (mod main_~b~0 4294967296) 1)} #67#return; {1177#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} is VALID [2022-04-27 14:09:48,290 INFO L272 TraceCheckUtils]: 22: Hoare triple {1177#(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)); {1106#true} is VALID [2022-04-27 14:09:48,290 INFO L290 TraceCheckUtils]: 23: Hoare triple {1106#true} ~cond := #in~cond; {1106#true} is VALID [2022-04-27 14:09:48,290 INFO L290 TraceCheckUtils]: 24: Hoare triple {1106#true} assume !(0 == ~cond); {1106#true} is VALID [2022-04-27 14:09:48,290 INFO L290 TraceCheckUtils]: 25: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:48,291 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1106#true} {1177#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} #69#return; {1177#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} is VALID [2022-04-27 14:09:48,291 INFO L272 TraceCheckUtils]: 27: Hoare triple {1177#(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)); {1106#true} is VALID [2022-04-27 14:09:48,291 INFO L290 TraceCheckUtils]: 28: Hoare triple {1106#true} ~cond := #in~cond; {1106#true} is VALID [2022-04-27 14:09:48,291 INFO L290 TraceCheckUtils]: 29: Hoare triple {1106#true} assume !(0 == ~cond); {1106#true} is VALID [2022-04-27 14:09:48,291 INFO L290 TraceCheckUtils]: 30: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:48,292 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {1106#true} {1177#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} #71#return; {1177#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} is VALID [2022-04-27 14:09:48,292 INFO L272 TraceCheckUtils]: 32: Hoare triple {1177#(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)); {1106#true} is VALID [2022-04-27 14:09:48,292 INFO L290 TraceCheckUtils]: 33: Hoare triple {1106#true} ~cond := #in~cond; {1106#true} is VALID [2022-04-27 14:09:48,292 INFO L290 TraceCheckUtils]: 34: Hoare triple {1106#true} assume !(0 == ~cond); {1106#true} is VALID [2022-04-27 14:09:48,292 INFO L290 TraceCheckUtils]: 35: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:48,293 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {1106#true} {1177#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} #73#return; {1177#(and (<= 1 (mod main_~a~0 4294967296)) (<= (mod main_~b~0 4294967296) 1))} is VALID [2022-04-27 14:09:48,294 INFO L290 TraceCheckUtils]: 37: Hoare triple {1177#(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; {1226#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} is VALID [2022-04-27 14:09:48,294 INFO L290 TraceCheckUtils]: 38: Hoare triple {1226#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} assume !false; {1226#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} is VALID [2022-04-27 14:09:48,294 INFO L272 TraceCheckUtils]: 39: Hoare triple {1226#(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)); {1106#true} is VALID [2022-04-27 14:09:48,294 INFO L290 TraceCheckUtils]: 40: Hoare triple {1106#true} ~cond := #in~cond; {1106#true} is VALID [2022-04-27 14:09:48,294 INFO L290 TraceCheckUtils]: 41: Hoare triple {1106#true} assume !(0 == ~cond); {1106#true} is VALID [2022-04-27 14:09:48,294 INFO L290 TraceCheckUtils]: 42: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:48,303 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1106#true} {1226#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} #75#return; {1226#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} is VALID [2022-04-27 14:09:48,304 INFO L290 TraceCheckUtils]: 44: Hoare triple {1226#(and (<= 1 (mod main_~x~0 4294967296)) (<= (mod main_~y~0 4294967296) 1))} assume !!(~x~0 % 4294967296 != ~y~0 % 4294967296); {1248#(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-27 14:09:48,305 INFO L290 TraceCheckUtils]: 45: Hoare triple {1248#(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; {1107#false} is VALID [2022-04-27 14:09:48,305 INFO L290 TraceCheckUtils]: 46: Hoare triple {1107#false} assume !false; {1107#false} is VALID [2022-04-27 14:09:48,305 INFO L272 TraceCheckUtils]: 47: Hoare triple {1107#false} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {1107#false} is VALID [2022-04-27 14:09:48,305 INFO L290 TraceCheckUtils]: 48: Hoare triple {1107#false} ~cond := #in~cond; {1107#false} is VALID [2022-04-27 14:09:48,305 INFO L290 TraceCheckUtils]: 49: Hoare triple {1107#false} assume 0 == ~cond; {1107#false} is VALID [2022-04-27 14:09:48,305 INFO L290 TraceCheckUtils]: 50: Hoare triple {1107#false} assume !false; {1107#false} is VALID [2022-04-27 14:09:48,306 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-27 14:09:48,306 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 14:09:50,858 INFO L290 TraceCheckUtils]: 50: Hoare triple {1107#false} assume !false; {1107#false} is VALID [2022-04-27 14:09:50,858 INFO L290 TraceCheckUtils]: 49: Hoare triple {1107#false} assume 0 == ~cond; {1107#false} is VALID [2022-04-27 14:09:50,859 INFO L290 TraceCheckUtils]: 48: Hoare triple {1107#false} ~cond := #in~cond; {1107#false} is VALID [2022-04-27 14:09:50,859 INFO L272 TraceCheckUtils]: 47: Hoare triple {1107#false} call __VERIFIER_assert((if (~x~0 * ~u~0 + ~y~0 * ~v~0) % 4294967296 == 2 * ~a~0 * ~b~0 % 4294967296 then 1 else 0)); {1107#false} is VALID [2022-04-27 14:09:50,859 INFO L290 TraceCheckUtils]: 46: Hoare triple {1107#false} assume !false; {1107#false} is VALID [2022-04-27 14:09:50,859 INFO L290 TraceCheckUtils]: 45: Hoare triple {1282#(< (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; {1107#false} is VALID [2022-04-27 14:09:50,859 INFO L290 TraceCheckUtils]: 44: Hoare triple {1286#(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); {1282#(< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296))} is VALID [2022-04-27 14:09:50,860 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1106#true} {1286#(or (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)) (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296)))} #75#return; {1286#(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-27 14:09:50,860 INFO L290 TraceCheckUtils]: 42: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:50,860 INFO L290 TraceCheckUtils]: 41: Hoare triple {1106#true} assume !(0 == ~cond); {1106#true} is VALID [2022-04-27 14:09:50,860 INFO L290 TraceCheckUtils]: 40: Hoare triple {1106#true} ~cond := #in~cond; {1106#true} is VALID [2022-04-27 14:09:50,861 INFO L272 TraceCheckUtils]: 39: Hoare triple {1286#(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)); {1106#true} is VALID [2022-04-27 14:09:50,861 INFO L290 TraceCheckUtils]: 38: Hoare triple {1286#(or (< (mod main_~y~0 4294967296) (mod main_~x~0 4294967296)) (= (mod main_~x~0 4294967296) (mod main_~y~0 4294967296)))} assume !false; {1286#(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-27 14:09:50,862 INFO L290 TraceCheckUtils]: 37: Hoare triple {1308#(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; {1286#(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-27 14:09:50,862 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {1106#true} {1308#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} #73#return; {1308#(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-27 14:09:50,862 INFO L290 TraceCheckUtils]: 35: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:50,862 INFO L290 TraceCheckUtils]: 34: Hoare triple {1106#true} assume !(0 == ~cond); {1106#true} is VALID [2022-04-27 14:09:50,862 INFO L290 TraceCheckUtils]: 33: Hoare triple {1106#true} ~cond := #in~cond; {1106#true} is VALID [2022-04-27 14:09:50,862 INFO L272 TraceCheckUtils]: 32: Hoare triple {1308#(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)); {1106#true} is VALID [2022-04-27 14:09:50,863 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {1106#true} {1308#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} #71#return; {1308#(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-27 14:09:50,863 INFO L290 TraceCheckUtils]: 30: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:50,863 INFO L290 TraceCheckUtils]: 29: Hoare triple {1106#true} assume !(0 == ~cond); {1106#true} is VALID [2022-04-27 14:09:50,863 INFO L290 TraceCheckUtils]: 28: Hoare triple {1106#true} ~cond := #in~cond; {1106#true} is VALID [2022-04-27 14:09:50,863 INFO L272 TraceCheckUtils]: 27: Hoare triple {1308#(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)); {1106#true} is VALID [2022-04-27 14:09:50,863 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1106#true} {1308#(or (< (mod main_~b~0 4294967296) (mod main_~a~0 4294967296)) (= (mod main_~a~0 4294967296) (mod main_~b~0 4294967296)))} #69#return; {1308#(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-27 14:09:50,863 INFO L290 TraceCheckUtils]: 25: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:50,864 INFO L290 TraceCheckUtils]: 24: Hoare triple {1106#true} assume !(0 == ~cond); {1106#true} is VALID [2022-04-27 14:09:50,864 INFO L290 TraceCheckUtils]: 23: Hoare triple {1106#true} ~cond := #in~cond; {1106#true} is VALID [2022-04-27 14:09:50,864 INFO L272 TraceCheckUtils]: 22: Hoare triple {1308#(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)); {1106#true} is VALID [2022-04-27 14:09:50,865 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1154#(not (= |assume_abort_if_not_#in~cond| 0))} {1161#(<= (mod main_~b~0 4294967296) 1)} #67#return; {1308#(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-27 14:09:50,865 INFO L290 TraceCheckUtils]: 20: Hoare triple {1154#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1154#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:50,865 INFO L290 TraceCheckUtils]: 19: Hoare triple {1366#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1154#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:50,865 INFO L290 TraceCheckUtils]: 18: Hoare triple {1106#true} ~cond := #in~cond; {1366#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 14:09:50,865 INFO L272 TraceCheckUtils]: 17: Hoare triple {1161#(<= (mod main_~b~0 4294967296) 1)} call assume_abort_if_not((if ~a~0 % 4294967296 >= 1 then 1 else 0)); {1106#true} is VALID [2022-04-27 14:09:50,866 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1154#(not (= |assume_abort_if_not_#in~cond| 0))} {1106#true} #65#return; {1161#(<= (mod main_~b~0 4294967296) 1)} is VALID [2022-04-27 14:09:50,866 INFO L290 TraceCheckUtils]: 15: Hoare triple {1154#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1154#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:50,866 INFO L290 TraceCheckUtils]: 14: Hoare triple {1366#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1154#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:09:50,867 INFO L290 TraceCheckUtils]: 13: Hoare triple {1106#true} ~cond := #in~cond; {1366#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 14:09:50,867 INFO L272 TraceCheckUtils]: 12: Hoare triple {1106#true} call assume_abort_if_not((if ~b~0 % 4294967296 >= 0 && ~b~0 % 4294967296 <= 1 then 1 else 0)); {1106#true} is VALID [2022-04-27 14:09:50,867 INFO L290 TraceCheckUtils]: 11: Hoare triple {1106#true} ~b~0 := #t~nondet5;havoc #t~nondet5; {1106#true} is VALID [2022-04-27 14:09:50,868 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1106#true} {1106#true} #63#return; {1106#true} is VALID [2022-04-27 14:09:50,868 INFO L290 TraceCheckUtils]: 9: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:50,868 INFO L290 TraceCheckUtils]: 8: Hoare triple {1106#true} assume !(0 == ~cond); {1106#true} is VALID [2022-04-27 14:09:50,868 INFO L290 TraceCheckUtils]: 7: Hoare triple {1106#true} ~cond := #in~cond; {1106#true} is VALID [2022-04-27 14:09:50,868 INFO L272 TraceCheckUtils]: 6: Hoare triple {1106#true} call assume_abort_if_not((if ~a~0 % 4294967296 >= 0 && ~a~0 % 4294967296 <= 1 then 1 else 0)); {1106#true} is VALID [2022-04-27 14:09:50,868 INFO L290 TraceCheckUtils]: 5: Hoare triple {1106#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; {1106#true} is VALID [2022-04-27 14:09:50,868 INFO L272 TraceCheckUtils]: 4: Hoare triple {1106#true} call #t~ret6 := main(); {1106#true} is VALID [2022-04-27 14:09:50,868 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1106#true} {1106#true} #79#return; {1106#true} is VALID [2022-04-27 14:09:50,869 INFO L290 TraceCheckUtils]: 2: Hoare triple {1106#true} assume true; {1106#true} is VALID [2022-04-27 14:09:50,869 INFO L290 TraceCheckUtils]: 1: Hoare triple {1106#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); {1106#true} is VALID [2022-04-27 14:09:50,869 INFO L272 TraceCheckUtils]: 0: Hoare triple {1106#true} call ULTIMATE.init(); {1106#true} is VALID [2022-04-27 14:09:50,870 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-27 14:09:50,870 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:09:50,871 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1661179208] [2022-04-27 14:09:50,871 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:09:50,871 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2108136562] [2022-04-27 14:09:50,871 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2108136562] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 14:09:50,871 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 14:09:50,871 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-27 14:09:50,871 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [52549883] [2022-04-27 14:09:50,871 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 14:09:50,874 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 9 states have internal predecessors, (27), 7 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Word has length 51 [2022-04-27 14:09:50,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:09:50,882 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 9 states have internal predecessors, (27), 7 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-27 14:09:50,926 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:09:50,926 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 14:09:50,926 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:09:50,927 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 14:09:50,931 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-27 14:09:50,932 INFO L87 Difference]: Start difference. First operand 37 states and 44 transitions. Second operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 9 states have internal predecessors, (27), 7 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-27 14:09:51,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:51,292 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-27 14:09:51,292 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 14:09:51,292 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 9 states have internal predecessors, (27), 7 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Word has length 51 [2022-04-27 14:09:51,292 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:09:51,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 9 states have internal predecessors, (27), 7 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-27 14:09:51,294 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 46 transitions. [2022-04-27 14:09:51,294 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 9 states have internal predecessors, (27), 7 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-27 14:09:51,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 46 transitions. [2022-04-27 14:09:51,296 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 46 transitions. [2022-04-27 14:09:51,331 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-27 14:09:51,331 INFO L225 Difference]: With dead ends: 39 [2022-04-27 14:09:51,331 INFO L226 Difference]: Without dead ends: 0 [2022-04-27 14:09:51,331 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 90 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=52, Invalid=158, Unknown=0, NotChecked=0, Total=210 [2022-04-27 14:09:51,332 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 10 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 110 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 106 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 110 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 14:09:51,332 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 106 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 110 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 14:09:51,333 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-27 14:09:51,333 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-27 14:09:51,333 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:09:51,333 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-27 14:09:51,333 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-27 14:09:51,333 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-27 14:09:51,333 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:51,333 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 14:09:51,333 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 14:09:51,333 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:09:51,333 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:09:51,333 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-27 14:09:51,333 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-27 14:09:51,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:09:51,334 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 14:09:51,334 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 14:09:51,334 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:09:51,334 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:09:51,334 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:09:51,334 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:09:51,334 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-27 14:09:51,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-27 14:09:51,334 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 51 [2022-04-27 14:09:51,334 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:09:51,334 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-27 14:09:51,334 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 9 states have internal predecessors, (27), 7 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-27 14:09:51,335 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 14:09:51,335 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:09:51,336 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 14:09:51,355 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-27 14:09:51,547 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:09:51,549 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-27 14:09:51,664 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 5) no Hoare annotation was computed. [2022-04-27 14:09:51,664 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 5) no Hoare annotation was computed. [2022-04-27 14:09:51,664 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 5) no Hoare annotation was computed. [2022-04-27 14:09:51,665 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 8 10) the Hoare annotation is: true [2022-04-27 14:09:51,665 INFO L899 garLoopResultBuilder]: For program point L9(line 9) no Hoare annotation was computed. [2022-04-27 14:09:51,665 INFO L899 garLoopResultBuilder]: For program point L9-2(lines 8 10) no Hoare annotation was computed. [2022-04-27 14:09:51,665 INFO L899 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 8 10) no Hoare annotation was computed. [2022-04-27 14:09:51,665 INFO L895 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: (let ((.cse0 (mod main_~a~0 4294967296)) (.cse1 (mod main_~b~0 4294967296))) (and (<= .cse0 1) (<= 1 .cse1) (<= 1 .cse0) (<= .cse1 1))) [2022-04-27 14:09:51,665 INFO L895 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: (let ((.cse0 (mod main_~a~0 4294967296)) (.cse1 (mod main_~b~0 4294967296))) (and (<= .cse0 1) (<= 1 .cse1) (<= 1 .cse0) (<= .cse1 1))) [2022-04-27 14:09:51,665 INFO L895 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: (<= (mod main_~a~0 4294967296) 1) [2022-04-27 14:09:51,665 INFO L899 garLoopResultBuilder]: For program point mainEXIT(lines 19 57) no Hoare annotation was computed. [2022-04-27 14:09:51,665 INFO L895 garLoopResultBuilder]: At program point L25-1(line 25) the Hoare annotation is: (and (<= (mod main_~a~0 4294967296) 1) (<= (mod main_~b~0 4294967296) 1)) [2022-04-27 14:09:51,665 INFO L902 garLoopResultBuilder]: At program point L23(line 23) the Hoare annotation is: true [2022-04-27 14:09:51,665 INFO L899 garLoopResultBuilder]: For program point L23-1(line 23) no Hoare annotation was computed. [2022-04-27 14:09:51,665 INFO L899 garLoopResultBuilder]: For program point L52(line 52) no Hoare annotation was computed. [2022-04-27 14:09:51,665 INFO L899 garLoopResultBuilder]: For program point mainFINAL(lines 19 57) no Hoare annotation was computed. [2022-04-27 14:09:51,665 INFO L895 garLoopResultBuilder]: At program point L38(line 38) the Hoare annotation is: (and (= main_~a~0 main_~v~0) (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~a~0 4294967296)) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (<= (mod main_~b~0 4294967296) 1) (= main_~a~0 main_~x~0) (<= 1 (mod main_~y~0 4294967296))) [2022-04-27 14:09:51,665 INFO L899 garLoopResultBuilder]: For program point L38-1(lines 37 50) no Hoare annotation was computed. [2022-04-27 14:09:51,666 INFO L899 garLoopResultBuilder]: For program point L30(line 30) no Hoare annotation was computed. [2022-04-27 14:09:51,666 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 19 57) the Hoare annotation is: true [2022-04-27 14:09:51,666 INFO L895 garLoopResultBuilder]: At program point L26(line 26) the Hoare annotation is: (let ((.cse0 (mod main_~a~0 4294967296))) (and (<= .cse0 1) (<= 1 .cse0) (<= (mod main_~b~0 4294967296) 1))) [2022-04-27 14:09:51,666 INFO L899 garLoopResultBuilder]: For program point L43(lines 43 49) no Hoare annotation was computed. [2022-04-27 14:09:51,666 INFO L895 garLoopResultBuilder]: At program point L43-2(lines 37 50) the Hoare annotation is: (and (= main_~a~0 main_~v~0) (<= (mod main_~x~0 4294967296) 1) (<= 1 (mod main_~a~0 4294967296)) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (<= (mod main_~b~0 4294967296) 1) (= main_~a~0 main_~x~0) (<= 1 (mod main_~y~0 4294967296))) [2022-04-27 14:09:51,666 INFO L895 garLoopResultBuilder]: At program point L37-2(lines 37 50) the Hoare annotation is: (and (= main_~a~0 main_~v~0) (= main_~b~0 main_~y~0) (= main_~b~0 main_~u~0) (= main_~a~0 main_~x~0)) [2022-04-27 14:09:51,666 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-27 14:09:51,666 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-27 14:09:51,666 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-27 14:09:51,666 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-27 14:09:51,666 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-27 14:09:51,666 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-27 14:09:51,666 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-27 14:09:51,666 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 11 17) the Hoare annotation is: true [2022-04-27 14:09:51,666 INFO L899 garLoopResultBuilder]: For program point L13(lines 13 14) no Hoare annotation was computed. [2022-04-27 14:09:51,666 INFO L899 garLoopResultBuilder]: For program point L12(lines 12 15) no Hoare annotation was computed. [2022-04-27 14:09:51,666 INFO L899 garLoopResultBuilder]: For program point L12-2(lines 11 17) no Hoare annotation was computed. [2022-04-27 14:09:51,666 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 11 17) no Hoare annotation was computed. [2022-04-27 14:09:51,667 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 14) no Hoare annotation was computed. [2022-04-27 14:09:51,669 INFO L356 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1] [2022-04-27 14:09:51,670 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 14:09:51,672 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 14:09:51,672 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-27 14:09:51,673 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: L38-1 has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: L38-1 has no Hoare annotation [2022-04-27 14:09:51,674 WARN L170 areAnnotationChecker]: L52 has no Hoare annotation [2022-04-27 14:09:51,678 WARN L170 areAnnotationChecker]: L52 has no Hoare annotation [2022-04-27 14:09:51,678 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-27 14:09:51,678 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-27 14:09:51,678 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 14:09:51,678 WARN L170 areAnnotationChecker]: L38-1 has no Hoare annotation [2022-04-27 14:09:51,678 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 14:09:51,678 INFO L163 areAnnotationChecker]: CFG has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-27 14:09:51,684 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 02:09:51 BoogieIcfgContainer [2022-04-27 14:09:51,684 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 14:09:51,685 INFO L158 Benchmark]: Toolchain (without parser) took 10463.62ms. Allocated memory was 198.2MB in the beginning and 302.0MB in the end (delta: 103.8MB). Free memory was 145.3MB in the beginning and 197.9MB in the end (delta: -52.6MB). Peak memory consumption was 51.2MB. Max. memory is 8.0GB. [2022-04-27 14:09:51,685 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 198.2MB. Free memory is still 161.9MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 14:09:51,685 INFO L158 Benchmark]: CACSL2BoogieTranslator took 177.47ms. Allocated memory is still 198.2MB. Free memory was 145.0MB in the beginning and 171.4MB in the end (delta: -26.4MB). Peak memory consumption was 7.0MB. Max. memory is 8.0GB. [2022-04-27 14:09:51,686 INFO L158 Benchmark]: Boogie Preprocessor took 17.42ms. Allocated memory is still 198.2MB. Free memory was 171.4MB in the beginning and 169.8MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-27 14:09:51,686 INFO L158 Benchmark]: RCFGBuilder took 314.85ms. Allocated memory is still 198.2MB. Free memory was 169.8MB in the beginning and 158.3MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-27 14:09:51,686 INFO L158 Benchmark]: TraceAbstraction took 9945.81ms. Allocated memory was 198.2MB in the beginning and 302.0MB in the end (delta: 103.8MB). Free memory was 157.8MB in the beginning and 197.9MB in the end (delta: -40.1MB). Peak memory consumption was 64.1MB. Max. memory is 8.0GB. [2022-04-27 14:09:51,687 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.09ms. Allocated memory is still 198.2MB. Free memory is still 161.9MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 177.47ms. Allocated memory is still 198.2MB. Free memory was 145.0MB in the beginning and 171.4MB in the end (delta: -26.4MB). Peak memory consumption was 7.0MB. Max. memory is 8.0GB. * Boogie Preprocessor took 17.42ms. Allocated memory is still 198.2MB. Free memory was 171.4MB in the beginning and 169.8MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 314.85ms. Allocated memory is still 198.2MB. Free memory was 169.8MB in the beginning and 158.3MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 9945.81ms. Allocated memory was 198.2MB in the beginning and 302.0MB in the end (delta: 103.8MB). Free memory was 157.8MB in the beginning and 197.9MB in the end (delta: -40.1MB). Peak memory consumption was 64.1MB. 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: 9.9s, OverallIterations: 4, TraceHistogramMax: 6, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 1.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.1s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 76 SdHoareTripleChecker+Valid, 0.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 64 mSDsluCounter, 370 SdHoareTripleChecker+Invalid, 0.4s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 259 mSDsCounter, 27 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 270 IncrementalHoareTripleChecker+Invalid, 297 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 27 mSolverCounterUnsat, 111 mSDtfsCounter, 270 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 273 GetRequests, 242 SyntacticMatches, 2 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 0.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=37occurred in iteration=3, InterpolantAutomatonStates: 26, 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, 15 LocationsWithAnnotation, 32 PreInvPairs, 40 NumberOfFragments, 166 HoareAnnotationTreeSize, 32 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 15 FomulaSimplificationsInter, 40 FormulaSimplificationTreeSizeReductionInter, 0.1s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 7.1s InterpolantComputationTime, 188 NumberOfCodeBlocks, 188 NumberOfCodeBlocksAsserted, 4 NumberOfCheckSat, 284 ConstructedInterpolants, 0 QuantifiedInterpolants, 753 SizeOfPredicates, 21 NumberOfNonLiveVariables, 419 ConjunctsInSsa, 61 ConjunctsInUnsatCore, 6 InterpolantComputations, 2 PerfectInterpolantSequences, 304/376 InterpolantCoveringCapability, 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 RESULT: Ultimate proved your program to be correct! [2022-04-27 14:09:51,709 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...