./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/seq-mthreaded/pals_lcr-var-start-time.3.1.ufo.UNBOUNDED.pals.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/seq-mthreaded/pals_lcr-var-start-time.3.1.ufo.UNBOUNDED.pals.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash d0cee5b1964cd71f7406ad577c9568bfea84778de80728dfc08113baa4a027fc --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 18:26:49,147 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 18:26:49,149 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 18:26:49,189 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 18:26:49,190 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 18:26:49,192 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 18:26:49,194 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 18:26:49,196 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 18:26:49,197 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 18:26:49,202 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 18:26:49,202 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 18:26:49,203 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 18:26:49,203 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 18:26:49,205 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 18:26:49,207 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 18:26:49,209 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 18:26:49,210 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 18:26:49,211 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 18:26:49,212 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 18:26:49,214 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 18:26:49,217 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 18:26:49,217 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 18:26:49,219 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 18:26:49,219 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 18:26:49,222 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 18:26:49,223 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 18:26:49,223 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 18:26:49,224 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 18:26:49,224 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 18:26:49,225 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 18:26:49,225 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 18:26:49,226 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 18:26:49,227 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 18:26:49,228 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 18:26:49,229 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 18:26:49,229 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 18:26:49,229 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 18:26:49,230 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 18:26:49,230 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 18:26:49,230 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 18:26:49,231 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 18:26:49,232 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 18:26:49,258 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 18:26:49,258 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 18:26:49,259 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 18:26:49,259 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 18:26:49,259 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 18:26:49,260 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 18:26:49,260 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 18:26:49,260 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 18:26:49,260 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 18:26:49,261 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 18:26:49,261 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 18:26:49,261 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 18:26:49,262 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 18:26:49,262 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 18:26:49,262 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 18:26:49,262 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 18:26:49,262 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 18:26:49,262 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 18:26:49,262 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 18:26:49,262 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 18:26:49,263 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 18:26:49,263 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 18:26:49,263 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 18:26:49,263 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 18:26:49,263 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 18:26:49,263 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 18:26:49,264 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 18:26:49,264 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 18:26:49,264 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 18:26:49,264 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 18:26:49,264 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 18:26:49,264 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 18:26:49,265 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 18:26:49,265 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.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> d0cee5b1964cd71f7406ad577c9568bfea84778de80728dfc08113baa4a027fc [2022-02-20 18:26:49,465 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 18:26:49,480 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 18:26:49,484 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 18:26:49,485 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 18:26:49,485 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 18:26:49,486 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/seq-mthreaded/pals_lcr-var-start-time.3.1.ufo.UNBOUNDED.pals.c [2022-02-20 18:26:49,560 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/72becf328/666ccb01a81b42edbc5330cfa2bd8e67/FLAG783e144fd [2022-02-20 18:26:49,921 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 18:26:49,923 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/seq-mthreaded/pals_lcr-var-start-time.3.1.ufo.UNBOUNDED.pals.c [2022-02-20 18:26:49,932 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/72becf328/666ccb01a81b42edbc5330cfa2bd8e67/FLAG783e144fd [2022-02-20 18:26:49,946 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/72becf328/666ccb01a81b42edbc5330cfa2bd8e67 [2022-02-20 18:26:49,948 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 18:26:49,951 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 18:26:49,952 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 18:26:49,953 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 18:26:49,955 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 18:26:49,956 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 06:26:49" (1/1) ... [2022-02-20 18:26:49,957 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7ecc1012 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:49, skipping insertion in model container [2022-02-20 18:26:49,957 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 06:26:49" (1/1) ... [2022-02-20 18:26:49,962 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 18:26:49,993 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 18:26:50,163 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/seq-mthreaded/pals_lcr-var-start-time.3.1.ufo.UNBOUNDED.pals.c[6940,6953] [2022-02-20 18:26:50,165 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 18:26:50,170 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 18:26:50,203 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/seq-mthreaded/pals_lcr-var-start-time.3.1.ufo.UNBOUNDED.pals.c[6940,6953] [2022-02-20 18:26:50,203 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 18:26:50,213 INFO L208 MainTranslator]: Completed translation [2022-02-20 18:26:50,213 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50 WrapperNode [2022-02-20 18:26:50,213 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 18:26:50,214 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 18:26:50,214 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 18:26:50,214 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 18:26:50,219 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (1/1) ... [2022-02-20 18:26:50,225 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (1/1) ... [2022-02-20 18:26:50,246 INFO L137 Inliner]: procedures = 23, calls = 14, calls flagged for inlining = 9, calls inlined = 9, statements flattened = 253 [2022-02-20 18:26:50,247 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 18:26:50,247 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 18:26:50,247 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 18:26:50,247 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 18:26:50,253 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (1/1) ... [2022-02-20 18:26:50,254 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (1/1) ... [2022-02-20 18:26:50,256 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (1/1) ... [2022-02-20 18:26:50,263 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (1/1) ... [2022-02-20 18:26:50,270 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (1/1) ... [2022-02-20 18:26:50,273 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (1/1) ... [2022-02-20 18:26:50,275 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (1/1) ... [2022-02-20 18:26:50,277 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 18:26:50,277 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 18:26:50,278 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 18:26:50,278 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 18:26:50,279 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (1/1) ... [2022-02-20 18:26:50,298 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 18:26:50,310 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 18:26:50,320 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-02-20 18:26:50,325 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-02-20 18:26:50,346 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 18:26:50,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 18:26:50,346 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 18:26:50,346 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 18:26:50,412 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 18:26:50,413 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 18:26:50,793 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 18:26:50,797 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 18:26:50,799 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-02-20 18:26:50,800 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 06:26:50 BoogieIcfgContainer [2022-02-20 18:26:50,800 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 18:26:50,801 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 18:26:50,801 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 18:26:50,804 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 18:26:50,804 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 06:26:49" (1/3) ... [2022-02-20 18:26:50,805 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@390984c3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 06:26:50, skipping insertion in model container [2022-02-20 18:26:50,805 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:26:50" (2/3) ... [2022-02-20 18:26:50,805 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@390984c3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 06:26:50, skipping insertion in model container [2022-02-20 18:26:50,805 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 06:26:50" (3/3) ... [2022-02-20 18:26:50,806 INFO L111 eAbstractionObserver]: Analyzing ICFG pals_lcr-var-start-time.3.1.ufo.UNBOUNDED.pals.c [2022-02-20 18:26:50,809 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 18:26:50,809 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 18:26:50,860 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 18:26:50,865 INFO L339 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, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 18:26:50,866 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 18:26:50,890 INFO L276 IsEmpty]: Start isEmpty. Operand has 81 states, 79 states have (on average 1.6708860759493671) internal successors, (132), 80 states have internal predecessors, (132), 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-02-20 18:26:50,896 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 18:26:50,897 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:26:50,897 INFO L514 BasicCegarLoop]: trace histogram [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-02-20 18:26:50,898 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:26:50,904 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:26:50,905 INFO L85 PathProgramCache]: Analyzing trace with hash -1546658209, now seen corresponding path program 1 times [2022-02-20 18:26:50,913 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:26:50,914 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [790051492] [2022-02-20 18:26:50,914 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:26:50,915 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:26:51,038 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:26:51,136 INFO L290 TraceCheckUtils]: 0: Hoare triple {84#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {84#true} is VALID [2022-02-20 18:26:51,138 INFO L290 TraceCheckUtils]: 1: Hoare triple {84#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {84#true} is VALID [2022-02-20 18:26:51,139 INFO L290 TraceCheckUtils]: 2: Hoare triple {84#true} assume !(0 == ~r1~0 % 256);init_~tmp~0#1 := 0; {86#(= |ULTIMATE.start_init_~tmp~0#1| 0)} is VALID [2022-02-20 18:26:51,140 INFO L290 TraceCheckUtils]: 3: Hoare triple {86#(= |ULTIMATE.start_init_~tmp~0#1| 0)} init_#res#1 := init_~tmp~0#1; {87#(= |ULTIMATE.start_init_#res#1| 0)} is VALID [2022-02-20 18:26:51,141 INFO L290 TraceCheckUtils]: 4: Hoare triple {87#(= |ULTIMATE.start_init_#res#1| 0)} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {88#(= |ULTIMATE.start_assume_abort_if_not_~cond#1| 0)} is VALID [2022-02-20 18:26:51,141 INFO L290 TraceCheckUtils]: 5: Hoare triple {88#(= |ULTIMATE.start_assume_abort_if_not_~cond#1| 0)} assume !(0 == assume_abort_if_not_~cond#1); {85#false} is VALID [2022-02-20 18:26:51,142 INFO L290 TraceCheckUtils]: 6: Hoare triple {85#false} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {85#false} is VALID [2022-02-20 18:26:51,142 INFO L290 TraceCheckUtils]: 7: Hoare triple {85#false} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {85#false} is VALID [2022-02-20 18:26:51,142 INFO L290 TraceCheckUtils]: 8: Hoare triple {85#false} assume !(0 != ~mode1~0 % 256); {85#false} is VALID [2022-02-20 18:26:51,142 INFO L290 TraceCheckUtils]: 9: Hoare triple {85#false} assume !(0 != ~alive1~0 % 256); {85#false} is VALID [2022-02-20 18:26:51,143 INFO L290 TraceCheckUtils]: 10: Hoare triple {85#false} assume !(~send1~0 != ~id1~0); {85#false} is VALID [2022-02-20 18:26:51,143 INFO L290 TraceCheckUtils]: 11: Hoare triple {85#false} ~mode1~0 := 1; {85#false} is VALID [2022-02-20 18:26:51,143 INFO L290 TraceCheckUtils]: 12: Hoare triple {85#false} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {85#false} is VALID [2022-02-20 18:26:51,143 INFO L290 TraceCheckUtils]: 13: Hoare triple {85#false} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {85#false} is VALID [2022-02-20 18:26:51,144 INFO L290 TraceCheckUtils]: 14: Hoare triple {85#false} assume !(node2_~m2~0#1 != ~nomsg~0); {85#false} is VALID [2022-02-20 18:26:51,144 INFO L290 TraceCheckUtils]: 15: Hoare triple {85#false} ~mode2~0 := 0; {85#false} is VALID [2022-02-20 18:26:51,144 INFO L290 TraceCheckUtils]: 16: Hoare triple {85#false} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {85#false} is VALID [2022-02-20 18:26:51,144 INFO L290 TraceCheckUtils]: 17: Hoare triple {85#false} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {85#false} is VALID [2022-02-20 18:26:51,145 INFO L290 TraceCheckUtils]: 18: Hoare triple {85#false} assume !(node3_~m3~0#1 != ~nomsg~0); {85#false} is VALID [2022-02-20 18:26:51,145 INFO L290 TraceCheckUtils]: 19: Hoare triple {85#false} ~mode3~0 := 0; {85#false} is VALID [2022-02-20 18:26:51,145 INFO L290 TraceCheckUtils]: 20: Hoare triple {85#false} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {85#false} is VALID [2022-02-20 18:26:51,146 INFO L290 TraceCheckUtils]: 21: Hoare triple {85#false} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {85#false} is VALID [2022-02-20 18:26:51,146 INFO L290 TraceCheckUtils]: 22: Hoare triple {85#false} check_#res#1 := check_~tmp~1#1; {85#false} is VALID [2022-02-20 18:26:51,146 INFO L290 TraceCheckUtils]: 23: Hoare triple {85#false} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {85#false} is VALID [2022-02-20 18:26:51,147 INFO L290 TraceCheckUtils]: 24: Hoare triple {85#false} assume 0 == assert_~arg#1 % 256; {85#false} is VALID [2022-02-20 18:26:51,151 INFO L290 TraceCheckUtils]: 25: Hoare triple {85#false} assume !false; {85#false} is VALID [2022-02-20 18:26:51,153 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 18:26:51,153 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:26:51,153 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [790051492] [2022-02-20 18:26:51,155 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [790051492] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:26:51,155 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:26:51,155 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:26:51,156 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1846274427] [2022-02-20 18:26:51,158 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:26:51,165 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 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) Word has length 26 [2022-02-20 18:26:51,166 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:26:51,170 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 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-02-20 18:26:51,194 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:51,194 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:26:51,195 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:26:51,212 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:26:51,213 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:26:51,217 INFO L87 Difference]: Start difference. First operand has 81 states, 79 states have (on average 1.6708860759493671) internal successors, (132), 80 states have internal predecessors, (132), 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 has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 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-02-20 18:26:51,504 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:51,504 INFO L93 Difference]: Finished difference Result 139 states and 225 transitions. [2022-02-20 18:26:51,504 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 18:26:51,505 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 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) Word has length 26 [2022-02-20 18:26:51,505 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:26:51,506 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 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-02-20 18:26:51,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 225 transitions. [2022-02-20 18:26:51,512 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 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-02-20 18:26:51,523 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 225 transitions. [2022-02-20 18:26:51,524 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 225 transitions. [2022-02-20 18:26:51,676 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 225 edges. 225 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:51,685 INFO L225 Difference]: With dead ends: 139 [2022-02-20 18:26:51,685 INFO L226 Difference]: Without dead ends: 77 [2022-02-20 18:26:51,688 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 18:26:51,691 INFO L933 BasicCegarLoop]: 123 mSDtfsCounter, 3 mSDsluCounter, 349 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 472 SdHoareTripleChecker+Invalid, 27 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:26:51,692 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [3 Valid, 472 Invalid, 27 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:26:51,704 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-02-20 18:26:51,713 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 77. [2022-02-20 18:26:51,713 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:26:51,714 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 77 states, 76 states have (on average 1.4210526315789473) internal successors, (108), 76 states have internal predecessors, (108), 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-02-20 18:26:51,715 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 77 states, 76 states have (on average 1.4210526315789473) internal successors, (108), 76 states have internal predecessors, (108), 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-02-20 18:26:51,715 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 77 states, 76 states have (on average 1.4210526315789473) internal successors, (108), 76 states have internal predecessors, (108), 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-02-20 18:26:51,719 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:51,719 INFO L93 Difference]: Finished difference Result 77 states and 108 transitions. [2022-02-20 18:26:51,719 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 108 transitions. [2022-02-20 18:26:51,720 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:51,720 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:51,720 INFO L74 IsIncluded]: Start isIncluded. First operand has 77 states, 76 states have (on average 1.4210526315789473) internal successors, (108), 76 states have internal predecessors, (108), 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 77 states. [2022-02-20 18:26:51,721 INFO L87 Difference]: Start difference. First operand has 77 states, 76 states have (on average 1.4210526315789473) internal successors, (108), 76 states have internal predecessors, (108), 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 77 states. [2022-02-20 18:26:51,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:51,724 INFO L93 Difference]: Finished difference Result 77 states and 108 transitions. [2022-02-20 18:26:51,724 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 108 transitions. [2022-02-20 18:26:51,724 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:51,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:51,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:26:51,725 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:26:51,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 77 states, 76 states have (on average 1.4210526315789473) internal successors, (108), 76 states have internal predecessors, (108), 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-02-20 18:26:51,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 108 transitions. [2022-02-20 18:26:51,729 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 108 transitions. Word has length 26 [2022-02-20 18:26:51,729 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:26:51,729 INFO L470 AbstractCegarLoop]: Abstraction has 77 states and 108 transitions. [2022-02-20 18:26:51,729 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 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-02-20 18:26:51,730 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 108 transitions. [2022-02-20 18:26:51,730 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-02-20 18:26:51,731 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:26:51,731 INFO L514 BasicCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 18:26:51,731 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 18:26:51,732 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:26:51,733 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:26:51,734 INFO L85 PathProgramCache]: Analyzing trace with hash 1146437097, now seen corresponding path program 1 times [2022-02-20 18:26:51,735 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:26:51,735 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [344915708] [2022-02-20 18:26:51,735 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:26:51,735 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:26:51,773 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:26:51,823 INFO L290 TraceCheckUtils]: 0: Hoare triple {484#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {484#true} is VALID [2022-02-20 18:26:51,823 INFO L290 TraceCheckUtils]: 1: Hoare triple {484#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {484#true} is VALID [2022-02-20 18:26:51,823 INFO L290 TraceCheckUtils]: 2: Hoare triple {484#true} assume 0 == ~r1~0 % 256; {484#true} is VALID [2022-02-20 18:26:51,824 INFO L290 TraceCheckUtils]: 3: Hoare triple {484#true} assume ~alive1~0 % 256 + ~alive2~0 % 256 + ~alive3~0 % 256 >= 1; {484#true} is VALID [2022-02-20 18:26:51,824 INFO L290 TraceCheckUtils]: 4: Hoare triple {484#true} assume ~id1~0 >= 0; {484#true} is VALID [2022-02-20 18:26:51,824 INFO L290 TraceCheckUtils]: 5: Hoare triple {484#true} assume 0 == ~st1~0; {484#true} is VALID [2022-02-20 18:26:51,824 INFO L290 TraceCheckUtils]: 6: Hoare triple {484#true} assume ~send1~0 == ~id1~0; {484#true} is VALID [2022-02-20 18:26:51,825 INFO L290 TraceCheckUtils]: 7: Hoare triple {484#true} assume 0 == ~mode1~0 % 256; {484#true} is VALID [2022-02-20 18:26:51,825 INFO L290 TraceCheckUtils]: 8: Hoare triple {484#true} assume ~id2~0 >= 0; {484#true} is VALID [2022-02-20 18:26:51,825 INFO L290 TraceCheckUtils]: 9: Hoare triple {484#true} assume 0 == ~st2~0; {484#true} is VALID [2022-02-20 18:26:51,825 INFO L290 TraceCheckUtils]: 10: Hoare triple {484#true} assume ~send2~0 == ~id2~0; {484#true} is VALID [2022-02-20 18:26:51,826 INFO L290 TraceCheckUtils]: 11: Hoare triple {484#true} assume 0 == ~mode2~0 % 256; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,826 INFO L290 TraceCheckUtils]: 12: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume ~id3~0 >= 0; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,827 INFO L290 TraceCheckUtils]: 13: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume 0 == ~st3~0; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,827 INFO L290 TraceCheckUtils]: 14: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume ~send3~0 == ~id3~0; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,828 INFO L290 TraceCheckUtils]: 15: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume 0 == ~mode3~0 % 256; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,828 INFO L290 TraceCheckUtils]: 16: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume ~id1~0 != ~id2~0; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,829 INFO L290 TraceCheckUtils]: 17: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume ~id1~0 != ~id3~0; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,830 INFO L290 TraceCheckUtils]: 18: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,830 INFO L290 TraceCheckUtils]: 19: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} init_#res#1 := init_~tmp~0#1; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,831 INFO L290 TraceCheckUtils]: 20: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,831 INFO L290 TraceCheckUtils]: 21: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,832 INFO L290 TraceCheckUtils]: 22: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,832 INFO L290 TraceCheckUtils]: 23: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,833 INFO L290 TraceCheckUtils]: 24: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume !(0 != ~mode1~0 % 256); {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,833 INFO L290 TraceCheckUtils]: 25: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume !(0 != ~alive1~0 % 256); {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,834 INFO L290 TraceCheckUtils]: 26: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume !(~send1~0 != ~id1~0); {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,834 INFO L290 TraceCheckUtils]: 27: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} ~mode1~0 := 1; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,834 INFO L290 TraceCheckUtils]: 28: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:26:51,836 INFO L290 TraceCheckUtils]: 29: Hoare triple {486#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {485#false} is VALID [2022-02-20 18:26:51,836 INFO L290 TraceCheckUtils]: 30: Hoare triple {485#false} assume !(node2_~m2~0#1 != ~nomsg~0); {485#false} is VALID [2022-02-20 18:26:51,836 INFO L290 TraceCheckUtils]: 31: Hoare triple {485#false} ~mode2~0 := 0; {485#false} is VALID [2022-02-20 18:26:51,836 INFO L290 TraceCheckUtils]: 32: Hoare triple {485#false} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {485#false} is VALID [2022-02-20 18:26:51,838 INFO L290 TraceCheckUtils]: 33: Hoare triple {485#false} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {485#false} is VALID [2022-02-20 18:26:51,838 INFO L290 TraceCheckUtils]: 34: Hoare triple {485#false} assume !(node3_~m3~0#1 != ~nomsg~0); {485#false} is VALID [2022-02-20 18:26:51,838 INFO L290 TraceCheckUtils]: 35: Hoare triple {485#false} ~mode3~0 := 0; {485#false} is VALID [2022-02-20 18:26:51,838 INFO L290 TraceCheckUtils]: 36: Hoare triple {485#false} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {485#false} is VALID [2022-02-20 18:26:51,838 INFO L290 TraceCheckUtils]: 37: Hoare triple {485#false} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {485#false} is VALID [2022-02-20 18:26:51,839 INFO L290 TraceCheckUtils]: 38: Hoare triple {485#false} check_#res#1 := check_~tmp~1#1; {485#false} is VALID [2022-02-20 18:26:51,839 INFO L290 TraceCheckUtils]: 39: Hoare triple {485#false} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {485#false} is VALID [2022-02-20 18:26:51,839 INFO L290 TraceCheckUtils]: 40: Hoare triple {485#false} assume 0 == assert_~arg#1 % 256; {485#false} is VALID [2022-02-20 18:26:51,839 INFO L290 TraceCheckUtils]: 41: Hoare triple {485#false} assume !false; {485#false} is VALID [2022-02-20 18:26:51,840 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 18:26:51,841 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:26:51,841 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [344915708] [2022-02-20 18:26:51,841 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [344915708] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:26:51,841 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:26:51,842 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 18:26:51,842 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1541350117] [2022-02-20 18:26:51,842 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:26:51,843 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 14.0) internal successors, (42), 3 states have internal predecessors, (42), 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) Word has length 42 [2022-02-20 18:26:51,845 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:26:51,846 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 14.0) internal successors, (42), 3 states have internal predecessors, (42), 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-02-20 18:26:51,883 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:51,884 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 18:26:51,886 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:26:51,886 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 18:26:51,887 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 18:26:51,887 INFO L87 Difference]: Start difference. First operand 77 states and 108 transitions. Second operand has 3 states, 3 states have (on average 14.0) internal successors, (42), 3 states have internal predecessors, (42), 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-02-20 18:26:52,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:52,059 INFO L93 Difference]: Finished difference Result 173 states and 258 transitions. [2022-02-20 18:26:52,059 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 18:26:52,059 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 14.0) internal successors, (42), 3 states have internal predecessors, (42), 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) Word has length 42 [2022-02-20 18:26:52,059 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:26:52,060 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 14.0) internal successors, (42), 3 states have internal predecessors, (42), 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-02-20 18:26:52,062 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 258 transitions. [2022-02-20 18:26:52,062 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 14.0) internal successors, (42), 3 states have internal predecessors, (42), 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-02-20 18:26:52,065 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 258 transitions. [2022-02-20 18:26:52,065 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 258 transitions. [2022-02-20 18:26:52,242 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 258 edges. 258 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:52,245 INFO L225 Difference]: With dead ends: 173 [2022-02-20 18:26:52,245 INFO L226 Difference]: Without dead ends: 119 [2022-02-20 18:26:52,245 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 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-02-20 18:26:52,246 INFO L933 BasicCegarLoop]: 143 mSDtfsCounter, 68 mSDsluCounter, 80 mSDsCounter, 0 mSdLazyCounter, 4 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 68 SdHoareTripleChecker+Valid, 223 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 4 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:26:52,246 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [68 Valid, 223 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 4 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:26:52,247 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-02-20 18:26:52,253 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 117. [2022-02-20 18:26:52,254 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:26:52,254 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 117 states, 116 states have (on average 1.4741379310344827) internal successors, (171), 116 states have internal predecessors, (171), 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-02-20 18:26:52,254 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 117 states, 116 states have (on average 1.4741379310344827) internal successors, (171), 116 states have internal predecessors, (171), 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-02-20 18:26:52,255 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 117 states, 116 states have (on average 1.4741379310344827) internal successors, (171), 116 states have internal predecessors, (171), 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-02-20 18:26:52,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:52,258 INFO L93 Difference]: Finished difference Result 119 states and 172 transitions. [2022-02-20 18:26:52,258 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 172 transitions. [2022-02-20 18:26:52,258 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:52,258 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:52,259 INFO L74 IsIncluded]: Start isIncluded. First operand has 117 states, 116 states have (on average 1.4741379310344827) internal successors, (171), 116 states have internal predecessors, (171), 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 119 states. [2022-02-20 18:26:52,259 INFO L87 Difference]: Start difference. First operand has 117 states, 116 states have (on average 1.4741379310344827) internal successors, (171), 116 states have internal predecessors, (171), 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 119 states. [2022-02-20 18:26:52,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:52,263 INFO L93 Difference]: Finished difference Result 119 states and 172 transitions. [2022-02-20 18:26:52,263 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 172 transitions. [2022-02-20 18:26:52,264 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:52,264 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:52,264 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:26:52,264 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:26:52,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 117 states, 116 states have (on average 1.4741379310344827) internal successors, (171), 116 states have internal predecessors, (171), 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-02-20 18:26:52,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 117 states to 117 states and 171 transitions. [2022-02-20 18:26:52,268 INFO L78 Accepts]: Start accepts. Automaton has 117 states and 171 transitions. Word has length 42 [2022-02-20 18:26:52,268 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:26:52,268 INFO L470 AbstractCegarLoop]: Abstraction has 117 states and 171 transitions. [2022-02-20 18:26:52,268 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 14.0) internal successors, (42), 3 states have internal predecessors, (42), 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-02-20 18:26:52,268 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 171 transitions. [2022-02-20 18:26:52,269 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-02-20 18:26:52,269 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:26:52,269 INFO L514 BasicCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 18:26:52,270 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 18:26:52,270 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:26:52,270 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:26:52,270 INFO L85 PathProgramCache]: Analyzing trace with hash 983172312, now seen corresponding path program 1 times [2022-02-20 18:26:52,270 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:26:52,271 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [187377169] [2022-02-20 18:26:52,271 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:26:52,271 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:26:52,297 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:26:52,324 INFO L290 TraceCheckUtils]: 0: Hoare triple {1044#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {1044#true} is VALID [2022-02-20 18:26:52,324 INFO L290 TraceCheckUtils]: 1: Hoare triple {1044#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {1044#true} is VALID [2022-02-20 18:26:52,324 INFO L290 TraceCheckUtils]: 2: Hoare triple {1044#true} assume 0 == ~r1~0 % 256; {1044#true} is VALID [2022-02-20 18:26:52,325 INFO L290 TraceCheckUtils]: 3: Hoare triple {1044#true} assume ~alive1~0 % 256 + ~alive2~0 % 256 + ~alive3~0 % 256 >= 1; {1044#true} is VALID [2022-02-20 18:26:52,325 INFO L290 TraceCheckUtils]: 4: Hoare triple {1044#true} assume ~id1~0 >= 0; {1044#true} is VALID [2022-02-20 18:26:52,325 INFO L290 TraceCheckUtils]: 5: Hoare triple {1044#true} assume 0 == ~st1~0; {1044#true} is VALID [2022-02-20 18:26:52,325 INFO L290 TraceCheckUtils]: 6: Hoare triple {1044#true} assume ~send1~0 == ~id1~0; {1044#true} is VALID [2022-02-20 18:26:52,325 INFO L290 TraceCheckUtils]: 7: Hoare triple {1044#true} assume 0 == ~mode1~0 % 256; {1044#true} is VALID [2022-02-20 18:26:52,325 INFO L290 TraceCheckUtils]: 8: Hoare triple {1044#true} assume ~id2~0 >= 0; {1044#true} is VALID [2022-02-20 18:26:52,326 INFO L290 TraceCheckUtils]: 9: Hoare triple {1044#true} assume 0 == ~st2~0; {1044#true} is VALID [2022-02-20 18:26:52,326 INFO L290 TraceCheckUtils]: 10: Hoare triple {1044#true} assume ~send2~0 == ~id2~0; {1044#true} is VALID [2022-02-20 18:26:52,326 INFO L290 TraceCheckUtils]: 11: Hoare triple {1044#true} assume 0 == ~mode2~0 % 256; {1044#true} is VALID [2022-02-20 18:26:52,326 INFO L290 TraceCheckUtils]: 12: Hoare triple {1044#true} assume ~id3~0 >= 0; {1044#true} is VALID [2022-02-20 18:26:52,326 INFO L290 TraceCheckUtils]: 13: Hoare triple {1044#true} assume 0 == ~st3~0; {1044#true} is VALID [2022-02-20 18:26:52,327 INFO L290 TraceCheckUtils]: 14: Hoare triple {1044#true} assume ~send3~0 == ~id3~0; {1044#true} is VALID [2022-02-20 18:26:52,327 INFO L290 TraceCheckUtils]: 15: Hoare triple {1044#true} assume 0 == ~mode3~0 % 256; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,328 INFO L290 TraceCheckUtils]: 16: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume ~id1~0 != ~id2~0; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,328 INFO L290 TraceCheckUtils]: 17: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume ~id1~0 != ~id3~0; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,329 INFO L290 TraceCheckUtils]: 18: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,329 INFO L290 TraceCheckUtils]: 19: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} init_#res#1 := init_~tmp~0#1; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,329 INFO L290 TraceCheckUtils]: 20: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,330 INFO L290 TraceCheckUtils]: 21: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,330 INFO L290 TraceCheckUtils]: 22: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,331 INFO L290 TraceCheckUtils]: 23: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,331 INFO L290 TraceCheckUtils]: 24: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(0 != ~mode1~0 % 256); {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,332 INFO L290 TraceCheckUtils]: 25: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(0 != ~alive1~0 % 256); {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,332 INFO L290 TraceCheckUtils]: 26: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(~send1~0 != ~id1~0); {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,332 INFO L290 TraceCheckUtils]: 27: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} ~mode1~0 := 1; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,333 INFO L290 TraceCheckUtils]: 28: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,333 INFO L290 TraceCheckUtils]: 29: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(0 != ~mode2~0 % 256); {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,334 INFO L290 TraceCheckUtils]: 30: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(0 != ~alive2~0 % 256); {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,334 INFO L290 TraceCheckUtils]: 31: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(~send2~0 != ~id2~0); {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,334 INFO L290 TraceCheckUtils]: 32: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} ~mode2~0 := 1; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,335 INFO L290 TraceCheckUtils]: 33: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:26:52,336 INFO L290 TraceCheckUtils]: 34: Hoare triple {1046#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {1045#false} is VALID [2022-02-20 18:26:52,336 INFO L290 TraceCheckUtils]: 35: Hoare triple {1045#false} assume !(node3_~m3~0#1 != ~nomsg~0); {1045#false} is VALID [2022-02-20 18:26:52,336 INFO L290 TraceCheckUtils]: 36: Hoare triple {1045#false} ~mode3~0 := 0; {1045#false} is VALID [2022-02-20 18:26:52,336 INFO L290 TraceCheckUtils]: 37: Hoare triple {1045#false} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {1045#false} is VALID [2022-02-20 18:26:52,336 INFO L290 TraceCheckUtils]: 38: Hoare triple {1045#false} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {1045#false} is VALID [2022-02-20 18:26:52,336 INFO L290 TraceCheckUtils]: 39: Hoare triple {1045#false} check_#res#1 := check_~tmp~1#1; {1045#false} is VALID [2022-02-20 18:26:52,337 INFO L290 TraceCheckUtils]: 40: Hoare triple {1045#false} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {1045#false} is VALID [2022-02-20 18:26:52,337 INFO L290 TraceCheckUtils]: 41: Hoare triple {1045#false} assume 0 == assert_~arg#1 % 256; {1045#false} is VALID [2022-02-20 18:26:52,337 INFO L290 TraceCheckUtils]: 42: Hoare triple {1045#false} assume !false; {1045#false} is VALID [2022-02-20 18:26:52,337 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 18:26:52,338 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:26:52,338 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [187377169] [2022-02-20 18:26:52,338 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [187377169] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:26:52,338 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:26:52,338 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 18:26:52,338 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [904574088] [2022-02-20 18:26:52,339 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:26:52,339 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 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) Word has length 43 [2022-02-20 18:26:52,347 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:26:52,348 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 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-02-20 18:26:52,370 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:52,371 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 18:26:52,371 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:26:52,371 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 18:26:52,371 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 18:26:52,372 INFO L87 Difference]: Start difference. First operand 117 states and 171 transitions. Second operand has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 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-02-20 18:26:52,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:52,492 INFO L93 Difference]: Finished difference Result 281 states and 427 transitions. [2022-02-20 18:26:52,492 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 18:26:52,492 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 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) Word has length 43 [2022-02-20 18:26:52,492 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:26:52,492 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 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-02-20 18:26:52,494 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 258 transitions. [2022-02-20 18:26:52,495 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 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-02-20 18:26:52,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 258 transitions. [2022-02-20 18:26:52,497 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 258 transitions. [2022-02-20 18:26:52,652 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 258 edges. 258 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:52,655 INFO L225 Difference]: With dead ends: 281 [2022-02-20 18:26:52,656 INFO L226 Difference]: Without dead ends: 187 [2022-02-20 18:26:52,656 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 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-02-20 18:26:52,657 INFO L933 BasicCegarLoop]: 130 mSDtfsCounter, 63 mSDsluCounter, 84 mSDsCounter, 0 mSdLazyCounter, 4 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 214 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 4 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:26:52,657 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 214 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 4 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:26:52,658 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 187 states. [2022-02-20 18:26:52,665 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 187 to 185. [2022-02-20 18:26:52,665 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:26:52,665 INFO L82 GeneralOperation]: Start isEquivalent. First operand 187 states. Second operand has 185 states, 184 states have (on average 1.5) internal successors, (276), 184 states have internal predecessors, (276), 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-02-20 18:26:52,666 INFO L74 IsIncluded]: Start isIncluded. First operand 187 states. Second operand has 185 states, 184 states have (on average 1.5) internal successors, (276), 184 states have internal predecessors, (276), 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-02-20 18:26:52,666 INFO L87 Difference]: Start difference. First operand 187 states. Second operand has 185 states, 184 states have (on average 1.5) internal successors, (276), 184 states have internal predecessors, (276), 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-02-20 18:26:52,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:52,676 INFO L93 Difference]: Finished difference Result 187 states and 277 transitions. [2022-02-20 18:26:52,676 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 277 transitions. [2022-02-20 18:26:52,677 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:52,677 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:52,678 INFO L74 IsIncluded]: Start isIncluded. First operand has 185 states, 184 states have (on average 1.5) internal successors, (276), 184 states have internal predecessors, (276), 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 187 states. [2022-02-20 18:26:52,678 INFO L87 Difference]: Start difference. First operand has 185 states, 184 states have (on average 1.5) internal successors, (276), 184 states have internal predecessors, (276), 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 187 states. [2022-02-20 18:26:52,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:52,682 INFO L93 Difference]: Finished difference Result 187 states and 277 transitions. [2022-02-20 18:26:52,683 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 277 transitions. [2022-02-20 18:26:52,683 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:52,683 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:52,683 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:26:52,683 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:26:52,683 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 185 states, 184 states have (on average 1.5) internal successors, (276), 184 states have internal predecessors, (276), 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-02-20 18:26:52,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 185 states to 185 states and 276 transitions. [2022-02-20 18:26:52,688 INFO L78 Accepts]: Start accepts. Automaton has 185 states and 276 transitions. Word has length 43 [2022-02-20 18:26:52,688 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:26:52,688 INFO L470 AbstractCegarLoop]: Abstraction has 185 states and 276 transitions. [2022-02-20 18:26:52,688 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 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-02-20 18:26:52,688 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 276 transitions. [2022-02-20 18:26:52,689 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-02-20 18:26:52,689 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:26:52,689 INFO L514 BasicCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 18:26:52,689 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 18:26:52,690 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:26:52,690 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:26:52,690 INFO L85 PathProgramCache]: Analyzing trace with hash -14404519, now seen corresponding path program 1 times [2022-02-20 18:26:52,690 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:26:52,690 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [559384160] [2022-02-20 18:26:52,691 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:26:52,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:26:52,723 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:26:52,767 INFO L290 TraceCheckUtils]: 0: Hoare triple {1941#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {1941#true} is VALID [2022-02-20 18:26:52,768 INFO L290 TraceCheckUtils]: 1: Hoare triple {1941#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {1941#true} is VALID [2022-02-20 18:26:52,768 INFO L290 TraceCheckUtils]: 2: Hoare triple {1941#true} assume 0 == ~r1~0 % 256; {1941#true} is VALID [2022-02-20 18:26:52,768 INFO L290 TraceCheckUtils]: 3: Hoare triple {1941#true} assume ~alive1~0 % 256 + ~alive2~0 % 256 + ~alive3~0 % 256 >= 1; {1941#true} is VALID [2022-02-20 18:26:52,768 INFO L290 TraceCheckUtils]: 4: Hoare triple {1941#true} assume ~id1~0 >= 0; {1941#true} is VALID [2022-02-20 18:26:52,769 INFO L290 TraceCheckUtils]: 5: Hoare triple {1941#true} assume 0 == ~st1~0; {1943#(<= ~st1~0 0)} is VALID [2022-02-20 18:26:52,769 INFO L290 TraceCheckUtils]: 6: Hoare triple {1943#(<= ~st1~0 0)} assume ~send1~0 == ~id1~0; {1943#(<= ~st1~0 0)} is VALID [2022-02-20 18:26:52,769 INFO L290 TraceCheckUtils]: 7: Hoare triple {1943#(<= ~st1~0 0)} assume 0 == ~mode1~0 % 256; {1943#(<= ~st1~0 0)} is VALID [2022-02-20 18:26:52,770 INFO L290 TraceCheckUtils]: 8: Hoare triple {1943#(<= ~st1~0 0)} assume ~id2~0 >= 0; {1943#(<= ~st1~0 0)} is VALID [2022-02-20 18:26:52,770 INFO L290 TraceCheckUtils]: 9: Hoare triple {1943#(<= ~st1~0 0)} assume 0 == ~st2~0; {1944#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,770 INFO L290 TraceCheckUtils]: 10: Hoare triple {1944#(<= (+ ~st2~0 ~st1~0) 0)} assume ~send2~0 == ~id2~0; {1944#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,771 INFO L290 TraceCheckUtils]: 11: Hoare triple {1944#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 == ~mode2~0 % 256; {1944#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,771 INFO L290 TraceCheckUtils]: 12: Hoare triple {1944#(<= (+ ~st2~0 ~st1~0) 0)} assume ~id3~0 >= 0; {1944#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,772 INFO L290 TraceCheckUtils]: 13: Hoare triple {1944#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 == ~st3~0; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,772 INFO L290 TraceCheckUtils]: 14: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume ~send3~0 == ~id3~0; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,772 INFO L290 TraceCheckUtils]: 15: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume 0 == ~mode3~0 % 256; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,773 INFO L290 TraceCheckUtils]: 16: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume ~id1~0 != ~id2~0; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,773 INFO L290 TraceCheckUtils]: 17: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume ~id1~0 != ~id3~0; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,773 INFO L290 TraceCheckUtils]: 18: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,774 INFO L290 TraceCheckUtils]: 19: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} init_#res#1 := init_~tmp~0#1; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,774 INFO L290 TraceCheckUtils]: 20: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,774 INFO L290 TraceCheckUtils]: 21: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,775 INFO L290 TraceCheckUtils]: 22: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,775 INFO L290 TraceCheckUtils]: 23: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,775 INFO L290 TraceCheckUtils]: 24: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 != ~mode1~0 % 256); {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,776 INFO L290 TraceCheckUtils]: 25: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 != ~alive1~0 % 256); {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,776 INFO L290 TraceCheckUtils]: 26: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(~send1~0 != ~id1~0); {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,776 INFO L290 TraceCheckUtils]: 27: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} ~mode1~0 := 1; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,777 INFO L290 TraceCheckUtils]: 28: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,777 INFO L290 TraceCheckUtils]: 29: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 != ~mode2~0 % 256); {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,777 INFO L290 TraceCheckUtils]: 30: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 != ~alive2~0 % 256); {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,778 INFO L290 TraceCheckUtils]: 31: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(~send2~0 != ~id2~0); {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,778 INFO L290 TraceCheckUtils]: 32: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} ~mode2~0 := 1; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,778 INFO L290 TraceCheckUtils]: 33: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,779 INFO L290 TraceCheckUtils]: 34: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 != ~mode3~0 % 256); {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,779 INFO L290 TraceCheckUtils]: 35: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 != ~alive3~0 % 256); {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,779 INFO L290 TraceCheckUtils]: 36: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(~send3~0 != ~id3~0); {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,780 INFO L290 TraceCheckUtils]: 37: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} ~mode3~0 := 1; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,780 INFO L290 TraceCheckUtils]: 38: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:26:52,781 INFO L290 TraceCheckUtils]: 39: Hoare triple {1945#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {1942#false} is VALID [2022-02-20 18:26:52,781 INFO L290 TraceCheckUtils]: 40: Hoare triple {1942#false} check_#res#1 := check_~tmp~1#1; {1942#false} is VALID [2022-02-20 18:26:52,781 INFO L290 TraceCheckUtils]: 41: Hoare triple {1942#false} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {1942#false} is VALID [2022-02-20 18:26:52,781 INFO L290 TraceCheckUtils]: 42: Hoare triple {1942#false} assume 0 == assert_~arg#1 % 256; {1942#false} is VALID [2022-02-20 18:26:52,781 INFO L290 TraceCheckUtils]: 43: Hoare triple {1942#false} assume !false; {1942#false} is VALID [2022-02-20 18:26:52,782 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 18:26:52,782 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:26:52,782 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [559384160] [2022-02-20 18:26:52,782 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [559384160] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:26:52,782 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:26:52,782 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:26:52,783 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1085955692] [2022-02-20 18:26:52,783 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:26:52,783 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 8.8) internal successors, (44), 5 states have internal predecessors, (44), 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) Word has length 44 [2022-02-20 18:26:52,783 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:26:52,784 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 8.8) internal successors, (44), 5 states have internal predecessors, (44), 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-02-20 18:26:52,808 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:52,808 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:26:52,808 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:26:52,809 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:26:52,809 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:26:52,809 INFO L87 Difference]: Start difference. First operand 185 states and 276 transitions. Second operand has 5 states, 5 states have (on average 8.8) internal successors, (44), 5 states have internal predecessors, (44), 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-02-20 18:26:53,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:53,303 INFO L93 Difference]: Finished difference Result 833 states and 1288 transitions. [2022-02-20 18:26:53,303 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 18:26:53,304 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 8.8) internal successors, (44), 5 states have internal predecessors, (44), 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) Word has length 44 [2022-02-20 18:26:53,304 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:26:53,304 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.8) internal successors, (44), 5 states have internal predecessors, (44), 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-02-20 18:26:53,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 448 transitions. [2022-02-20 18:26:53,307 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.8) internal successors, (44), 5 states have internal predecessors, (44), 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-02-20 18:26:53,310 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 448 transitions. [2022-02-20 18:26:53,310 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 448 transitions. [2022-02-20 18:26:53,583 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 448 edges. 448 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:53,598 INFO L225 Difference]: With dead ends: 833 [2022-02-20 18:26:53,599 INFO L226 Difference]: Without dead ends: 671 [2022-02-20 18:26:53,599 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 18:26:53,600 INFO L933 BasicCegarLoop]: 106 mSDtfsCounter, 427 mSDsluCounter, 482 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 427 SdHoareTripleChecker+Valid, 588 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:26:53,601 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [427 Valid, 588 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:26:53,602 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 671 states. [2022-02-20 18:26:53,651 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 671 to 345. [2022-02-20 18:26:53,652 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:26:53,652 INFO L82 GeneralOperation]: Start isEquivalent. First operand 671 states. Second operand has 345 states, 344 states have (on average 1.5116279069767442) internal successors, (520), 344 states have internal predecessors, (520), 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-02-20 18:26:53,653 INFO L74 IsIncluded]: Start isIncluded. First operand 671 states. Second operand has 345 states, 344 states have (on average 1.5116279069767442) internal successors, (520), 344 states have internal predecessors, (520), 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-02-20 18:26:53,654 INFO L87 Difference]: Start difference. First operand 671 states. Second operand has 345 states, 344 states have (on average 1.5116279069767442) internal successors, (520), 344 states have internal predecessors, (520), 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-02-20 18:26:53,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:53,673 INFO L93 Difference]: Finished difference Result 671 states and 1027 transitions. [2022-02-20 18:26:53,673 INFO L276 IsEmpty]: Start isEmpty. Operand 671 states and 1027 transitions. [2022-02-20 18:26:53,674 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:53,674 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:53,675 INFO L74 IsIncluded]: Start isIncluded. First operand has 345 states, 344 states have (on average 1.5116279069767442) internal successors, (520), 344 states have internal predecessors, (520), 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 671 states. [2022-02-20 18:26:53,675 INFO L87 Difference]: Start difference. First operand has 345 states, 344 states have (on average 1.5116279069767442) internal successors, (520), 344 states have internal predecessors, (520), 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 671 states. [2022-02-20 18:26:53,693 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:53,693 INFO L93 Difference]: Finished difference Result 671 states and 1027 transitions. [2022-02-20 18:26:53,693 INFO L276 IsEmpty]: Start isEmpty. Operand 671 states and 1027 transitions. [2022-02-20 18:26:53,694 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:53,694 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:53,694 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:26:53,694 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:26:53,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 345 states, 344 states have (on average 1.5116279069767442) internal successors, (520), 344 states have internal predecessors, (520), 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-02-20 18:26:53,717 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 345 states to 345 states and 520 transitions. [2022-02-20 18:26:53,718 INFO L78 Accepts]: Start accepts. Automaton has 345 states and 520 transitions. Word has length 44 [2022-02-20 18:26:53,718 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:26:53,718 INFO L470 AbstractCegarLoop]: Abstraction has 345 states and 520 transitions. [2022-02-20 18:26:53,718 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 8.8) internal successors, (44), 5 states have internal predecessors, (44), 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-02-20 18:26:53,718 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 520 transitions. [2022-02-20 18:26:53,719 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-02-20 18:26:53,719 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:26:53,719 INFO L514 BasicCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 18:26:53,719 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 18:26:53,720 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:26:53,720 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:26:53,720 INFO L85 PathProgramCache]: Analyzing trace with hash -829863502, now seen corresponding path program 1 times [2022-02-20 18:26:53,720 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:26:53,720 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1689255443] [2022-02-20 18:26:53,720 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:26:53,721 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:26:53,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:26:53,801 INFO L290 TraceCheckUtils]: 0: Hoare triple {4615#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {4615#true} is VALID [2022-02-20 18:26:53,801 INFO L290 TraceCheckUtils]: 1: Hoare triple {4615#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {4615#true} is VALID [2022-02-20 18:26:53,802 INFO L290 TraceCheckUtils]: 2: Hoare triple {4615#true} assume 0 == ~r1~0 % 256; {4615#true} is VALID [2022-02-20 18:26:53,802 INFO L290 TraceCheckUtils]: 3: Hoare triple {4615#true} assume ~alive1~0 % 256 + ~alive2~0 % 256 + ~alive3~0 % 256 >= 1; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,803 INFO L290 TraceCheckUtils]: 4: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume ~id1~0 >= 0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,803 INFO L290 TraceCheckUtils]: 5: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume 0 == ~st1~0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,803 INFO L290 TraceCheckUtils]: 6: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume ~send1~0 == ~id1~0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,804 INFO L290 TraceCheckUtils]: 7: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume 0 == ~mode1~0 % 256; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,804 INFO L290 TraceCheckUtils]: 8: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume ~id2~0 >= 0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,805 INFO L290 TraceCheckUtils]: 9: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume 0 == ~st2~0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,805 INFO L290 TraceCheckUtils]: 10: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume ~send2~0 == ~id2~0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,806 INFO L290 TraceCheckUtils]: 11: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume 0 == ~mode2~0 % 256; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,806 INFO L290 TraceCheckUtils]: 12: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume ~id3~0 >= 0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,806 INFO L290 TraceCheckUtils]: 13: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume 0 == ~st3~0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,807 INFO L290 TraceCheckUtils]: 14: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume ~send3~0 == ~id3~0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,807 INFO L290 TraceCheckUtils]: 15: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume 0 == ~mode3~0 % 256; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,814 INFO L290 TraceCheckUtils]: 16: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume ~id1~0 != ~id2~0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,815 INFO L290 TraceCheckUtils]: 17: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume ~id1~0 != ~id3~0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,815 INFO L290 TraceCheckUtils]: 18: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,816 INFO L290 TraceCheckUtils]: 19: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} init_#res#1 := init_~tmp~0#1; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,816 INFO L290 TraceCheckUtils]: 20: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,816 INFO L290 TraceCheckUtils]: 21: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume !(0 == assume_abort_if_not_~cond#1); {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,817 INFO L290 TraceCheckUtils]: 22: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,817 INFO L290 TraceCheckUtils]: 23: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,818 INFO L290 TraceCheckUtils]: 24: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume !(0 != ~mode1~0 % 256); {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} is VALID [2022-02-20 18:26:53,819 INFO L290 TraceCheckUtils]: 25: Hoare triple {4617#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) (* 256 (div ~alive1~0 256)) 1) (+ ~alive3~0 ~alive2~0 ~alive1~0))} assume !(0 != ~alive1~0 % 256); {4618#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) 1) (+ ~alive3~0 ~alive2~0))} is VALID [2022-02-20 18:26:53,819 INFO L290 TraceCheckUtils]: 26: Hoare triple {4618#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) 1) (+ ~alive3~0 ~alive2~0))} assume !(~send1~0 != ~id1~0); {4618#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) 1) (+ ~alive3~0 ~alive2~0))} is VALID [2022-02-20 18:26:53,821 INFO L290 TraceCheckUtils]: 27: Hoare triple {4618#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) 1) (+ ~alive3~0 ~alive2~0))} ~mode1~0 := 1; {4618#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) 1) (+ ~alive3~0 ~alive2~0))} is VALID [2022-02-20 18:26:53,821 INFO L290 TraceCheckUtils]: 28: Hoare triple {4618#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) 1) (+ ~alive3~0 ~alive2~0))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {4618#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) 1) (+ ~alive3~0 ~alive2~0))} is VALID [2022-02-20 18:26:53,822 INFO L290 TraceCheckUtils]: 29: Hoare triple {4618#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) 1) (+ ~alive3~0 ~alive2~0))} assume !(0 != ~mode2~0 % 256); {4618#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) 1) (+ ~alive3~0 ~alive2~0))} is VALID [2022-02-20 18:26:53,828 INFO L290 TraceCheckUtils]: 30: Hoare triple {4618#(<= (+ (* (div ~alive3~0 256) 256) (* 256 (div ~alive2~0 256)) 1) (+ ~alive3~0 ~alive2~0))} assume !(0 != ~alive2~0 % 256); {4619#(<= (+ (* (div ~alive3~0 256) 256) 1) ~alive3~0)} is VALID [2022-02-20 18:26:53,828 INFO L290 TraceCheckUtils]: 31: Hoare triple {4619#(<= (+ (* (div ~alive3~0 256) 256) 1) ~alive3~0)} assume !(~send2~0 != ~id2~0); {4619#(<= (+ (* (div ~alive3~0 256) 256) 1) ~alive3~0)} is VALID [2022-02-20 18:26:53,829 INFO L290 TraceCheckUtils]: 32: Hoare triple {4619#(<= (+ (* (div ~alive3~0 256) 256) 1) ~alive3~0)} ~mode2~0 := 1; {4619#(<= (+ (* (div ~alive3~0 256) 256) 1) ~alive3~0)} is VALID [2022-02-20 18:26:53,829 INFO L290 TraceCheckUtils]: 33: Hoare triple {4619#(<= (+ (* (div ~alive3~0 256) 256) 1) ~alive3~0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {4619#(<= (+ (* (div ~alive3~0 256) 256) 1) ~alive3~0)} is VALID [2022-02-20 18:26:53,830 INFO L290 TraceCheckUtils]: 34: Hoare triple {4619#(<= (+ (* (div ~alive3~0 256) 256) 1) ~alive3~0)} assume !(0 != ~mode3~0 % 256); {4619#(<= (+ (* (div ~alive3~0 256) 256) 1) ~alive3~0)} is VALID [2022-02-20 18:26:53,830 INFO L290 TraceCheckUtils]: 35: Hoare triple {4619#(<= (+ (* (div ~alive3~0 256) 256) 1) ~alive3~0)} assume !(0 != ~alive3~0 % 256); {4616#false} is VALID [2022-02-20 18:26:53,830 INFO L290 TraceCheckUtils]: 36: Hoare triple {4616#false} assume !(~send3~0 != ~id3~0); {4616#false} is VALID [2022-02-20 18:26:53,831 INFO L290 TraceCheckUtils]: 37: Hoare triple {4616#false} ~mode3~0 := 1; {4616#false} is VALID [2022-02-20 18:26:53,831 INFO L290 TraceCheckUtils]: 38: Hoare triple {4616#false} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {4616#false} is VALID [2022-02-20 18:26:53,832 INFO L290 TraceCheckUtils]: 39: Hoare triple {4616#false} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {4616#false} is VALID [2022-02-20 18:26:53,832 INFO L290 TraceCheckUtils]: 40: Hoare triple {4616#false} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {4616#false} is VALID [2022-02-20 18:26:53,832 INFO L290 TraceCheckUtils]: 41: Hoare triple {4616#false} check_#res#1 := check_~tmp~1#1; {4616#false} is VALID [2022-02-20 18:26:53,833 INFO L290 TraceCheckUtils]: 42: Hoare triple {4616#false} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {4616#false} is VALID [2022-02-20 18:26:53,833 INFO L290 TraceCheckUtils]: 43: Hoare triple {4616#false} assume 0 == assert_~arg#1 % 256; {4616#false} is VALID [2022-02-20 18:26:53,833 INFO L290 TraceCheckUtils]: 44: Hoare triple {4616#false} assume !false; {4616#false} is VALID [2022-02-20 18:26:53,833 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 18:26:53,834 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:26:53,834 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1689255443] [2022-02-20 18:26:53,835 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1689255443] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:26:53,835 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:26:53,835 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:26:53,835 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1516302050] [2022-02-20 18:26:53,835 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:26:53,837 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 9.0) internal successors, (45), 5 states have internal predecessors, (45), 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) Word has length 45 [2022-02-20 18:26:53,837 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:26:53,837 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 9.0) internal successors, (45), 5 states have internal predecessors, (45), 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-02-20 18:26:53,882 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:53,883 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:26:53,883 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:26:53,883 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:26:53,884 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:26:53,884 INFO L87 Difference]: Start difference. First operand 345 states and 520 transitions. Second operand has 5 states, 5 states have (on average 9.0) internal successors, (45), 5 states have internal predecessors, (45), 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-02-20 18:26:54,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:54,420 INFO L93 Difference]: Finished difference Result 1215 states and 1847 transitions. [2022-02-20 18:26:54,421 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 18:26:54,421 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 9.0) internal successors, (45), 5 states have internal predecessors, (45), 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) Word has length 45 [2022-02-20 18:26:54,421 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:26:54,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 9.0) internal successors, (45), 5 states have internal predecessors, (45), 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-02-20 18:26:54,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 327 transitions. [2022-02-20 18:26:54,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 9.0) internal successors, (45), 5 states have internal predecessors, (45), 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-02-20 18:26:54,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 327 transitions. [2022-02-20 18:26:54,425 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 327 transitions. [2022-02-20 18:26:54,644 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 327 edges. 327 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:54,672 INFO L225 Difference]: With dead ends: 1215 [2022-02-20 18:26:54,672 INFO L226 Difference]: Without dead ends: 893 [2022-02-20 18:26:54,673 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:26:54,673 INFO L933 BasicCegarLoop]: 163 mSDtfsCounter, 247 mSDsluCounter, 140 mSDsCounter, 0 mSdLazyCounter, 31 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 247 SdHoareTripleChecker+Valid, 303 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 31 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:26:54,674 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [247 Valid, 303 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 31 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:26:54,674 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 893 states. [2022-02-20 18:26:54,864 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 893 to 889. [2022-02-20 18:26:54,864 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:26:54,866 INFO L82 GeneralOperation]: Start isEquivalent. First operand 893 states. Second operand has 889 states, 888 states have (on average 1.509009009009009) internal successors, (1340), 888 states have internal predecessors, (1340), 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-02-20 18:26:54,867 INFO L74 IsIncluded]: Start isIncluded. First operand 893 states. Second operand has 889 states, 888 states have (on average 1.509009009009009) internal successors, (1340), 888 states have internal predecessors, (1340), 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-02-20 18:26:54,868 INFO L87 Difference]: Start difference. First operand 893 states. Second operand has 889 states, 888 states have (on average 1.509009009009009) internal successors, (1340), 888 states have internal predecessors, (1340), 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-02-20 18:26:54,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:54,894 INFO L93 Difference]: Finished difference Result 893 states and 1342 transitions. [2022-02-20 18:26:54,894 INFO L276 IsEmpty]: Start isEmpty. Operand 893 states and 1342 transitions. [2022-02-20 18:26:54,895 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:54,895 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:54,897 INFO L74 IsIncluded]: Start isIncluded. First operand has 889 states, 888 states have (on average 1.509009009009009) internal successors, (1340), 888 states have internal predecessors, (1340), 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 893 states. [2022-02-20 18:26:54,898 INFO L87 Difference]: Start difference. First operand has 889 states, 888 states have (on average 1.509009009009009) internal successors, (1340), 888 states have internal predecessors, (1340), 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 893 states. [2022-02-20 18:26:54,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:54,926 INFO L93 Difference]: Finished difference Result 893 states and 1342 transitions. [2022-02-20 18:26:54,926 INFO L276 IsEmpty]: Start isEmpty. Operand 893 states and 1342 transitions. [2022-02-20 18:26:54,931 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:54,931 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:54,931 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:26:54,931 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:26:54,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 889 states, 888 states have (on average 1.509009009009009) internal successors, (1340), 888 states have internal predecessors, (1340), 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-02-20 18:26:54,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 889 states to 889 states and 1340 transitions. [2022-02-20 18:26:54,962 INFO L78 Accepts]: Start accepts. Automaton has 889 states and 1340 transitions. Word has length 45 [2022-02-20 18:26:54,962 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:26:54,963 INFO L470 AbstractCegarLoop]: Abstraction has 889 states and 1340 transitions. [2022-02-20 18:26:54,963 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 9.0) internal successors, (45), 5 states have internal predecessors, (45), 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-02-20 18:26:54,963 INFO L276 IsEmpty]: Start isEmpty. Operand 889 states and 1340 transitions. [2022-02-20 18:26:54,963 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-02-20 18:26:54,964 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:26:54,964 INFO L514 BasicCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 18:26:54,964 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 18:26:54,964 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:26:54,964 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:26:54,964 INFO L85 PathProgramCache]: Analyzing trace with hash -1485202410, now seen corresponding path program 1 times [2022-02-20 18:26:54,965 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:26:54,965 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1759438958] [2022-02-20 18:26:54,965 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:26:54,965 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:26:54,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:26:54,998 INFO L290 TraceCheckUtils]: 0: Hoare triple {8794#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {8794#true} is VALID [2022-02-20 18:26:54,999 INFO L290 TraceCheckUtils]: 1: Hoare triple {8794#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {8794#true} is VALID [2022-02-20 18:26:54,999 INFO L290 TraceCheckUtils]: 2: Hoare triple {8794#true} assume 0 == ~r1~0 % 256; {8794#true} is VALID [2022-02-20 18:26:54,999 INFO L290 TraceCheckUtils]: 3: Hoare triple {8794#true} assume ~alive1~0 % 256 + ~alive2~0 % 256 + ~alive3~0 % 256 >= 1; {8794#true} is VALID [2022-02-20 18:26:54,999 INFO L290 TraceCheckUtils]: 4: Hoare triple {8794#true} assume ~id1~0 >= 0; {8794#true} is VALID [2022-02-20 18:26:54,999 INFO L290 TraceCheckUtils]: 5: Hoare triple {8794#true} assume 0 == ~st1~0; {8794#true} is VALID [2022-02-20 18:26:54,999 INFO L290 TraceCheckUtils]: 6: Hoare triple {8794#true} assume ~send1~0 == ~id1~0; {8794#true} is VALID [2022-02-20 18:26:55,000 INFO L290 TraceCheckUtils]: 7: Hoare triple {8794#true} assume 0 == ~mode1~0 % 256; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,000 INFO L290 TraceCheckUtils]: 8: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~id2~0 >= 0; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,001 INFO L290 TraceCheckUtils]: 9: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume 0 == ~st2~0; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,001 INFO L290 TraceCheckUtils]: 10: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~send2~0 == ~id2~0; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,001 INFO L290 TraceCheckUtils]: 11: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume 0 == ~mode2~0 % 256; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,002 INFO L290 TraceCheckUtils]: 12: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~id3~0 >= 0; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,002 INFO L290 TraceCheckUtils]: 13: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume 0 == ~st3~0; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,002 INFO L290 TraceCheckUtils]: 14: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~send3~0 == ~id3~0; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,003 INFO L290 TraceCheckUtils]: 15: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume 0 == ~mode3~0 % 256; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,003 INFO L290 TraceCheckUtils]: 16: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~id1~0 != ~id2~0; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,004 INFO L290 TraceCheckUtils]: 17: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~id1~0 != ~id3~0; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,004 INFO L290 TraceCheckUtils]: 18: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,004 INFO L290 TraceCheckUtils]: 19: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} init_#res#1 := init_~tmp~0#1; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,005 INFO L290 TraceCheckUtils]: 20: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,005 INFO L290 TraceCheckUtils]: 21: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,006 INFO L290 TraceCheckUtils]: 22: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,006 INFO L290 TraceCheckUtils]: 23: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:26:55,006 INFO L290 TraceCheckUtils]: 24: Hoare triple {8796#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume 0 != ~mode1~0 % 256; {8795#false} is VALID [2022-02-20 18:26:55,007 INFO L290 TraceCheckUtils]: 25: Hoare triple {8795#false} assume 255 == ~r1~0 % 256;~r1~0 := 2; {8795#false} is VALID [2022-02-20 18:26:55,007 INFO L290 TraceCheckUtils]: 26: Hoare triple {8795#false} ~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {8795#false} is VALID [2022-02-20 18:26:55,007 INFO L290 TraceCheckUtils]: 27: Hoare triple {8795#false} assume !(node1_~m1~0#1 != ~nomsg~0); {8795#false} is VALID [2022-02-20 18:26:55,007 INFO L290 TraceCheckUtils]: 28: Hoare triple {8795#false} ~mode1~0 := 0; {8795#false} is VALID [2022-02-20 18:26:55,007 INFO L290 TraceCheckUtils]: 29: Hoare triple {8795#false} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {8795#false} is VALID [2022-02-20 18:26:55,007 INFO L290 TraceCheckUtils]: 30: Hoare triple {8795#false} assume !(0 != ~mode2~0 % 256); {8795#false} is VALID [2022-02-20 18:26:55,008 INFO L290 TraceCheckUtils]: 31: Hoare triple {8795#false} assume !(0 != ~alive2~0 % 256); {8795#false} is VALID [2022-02-20 18:26:55,008 INFO L290 TraceCheckUtils]: 32: Hoare triple {8795#false} assume !(~send2~0 != ~id2~0); {8795#false} is VALID [2022-02-20 18:26:55,008 INFO L290 TraceCheckUtils]: 33: Hoare triple {8795#false} ~mode2~0 := 1; {8795#false} is VALID [2022-02-20 18:26:55,008 INFO L290 TraceCheckUtils]: 34: Hoare triple {8795#false} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {8795#false} is VALID [2022-02-20 18:26:55,008 INFO L290 TraceCheckUtils]: 35: Hoare triple {8795#false} assume !(0 != ~mode3~0 % 256); {8795#false} is VALID [2022-02-20 18:26:55,008 INFO L290 TraceCheckUtils]: 36: Hoare triple {8795#false} assume !(0 != ~alive3~0 % 256); {8795#false} is VALID [2022-02-20 18:26:55,008 INFO L290 TraceCheckUtils]: 37: Hoare triple {8795#false} assume !(~send3~0 != ~id3~0); {8795#false} is VALID [2022-02-20 18:26:55,009 INFO L290 TraceCheckUtils]: 38: Hoare triple {8795#false} ~mode3~0 := 1; {8795#false} is VALID [2022-02-20 18:26:55,009 INFO L290 TraceCheckUtils]: 39: Hoare triple {8795#false} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {8795#false} is VALID [2022-02-20 18:26:55,009 INFO L290 TraceCheckUtils]: 40: Hoare triple {8795#false} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {8795#false} is VALID [2022-02-20 18:26:55,009 INFO L290 TraceCheckUtils]: 41: Hoare triple {8795#false} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {8795#false} is VALID [2022-02-20 18:26:55,009 INFO L290 TraceCheckUtils]: 42: Hoare triple {8795#false} check_#res#1 := check_~tmp~1#1; {8795#false} is VALID [2022-02-20 18:26:55,009 INFO L290 TraceCheckUtils]: 43: Hoare triple {8795#false} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {8795#false} is VALID [2022-02-20 18:26:55,009 INFO L290 TraceCheckUtils]: 44: Hoare triple {8795#false} assume 0 == assert_~arg#1 % 256; {8795#false} is VALID [2022-02-20 18:26:55,010 INFO L290 TraceCheckUtils]: 45: Hoare triple {8795#false} assume !false; {8795#false} is VALID [2022-02-20 18:26:55,010 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 18:26:55,010 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:26:55,010 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1759438958] [2022-02-20 18:26:55,010 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1759438958] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:26:55,010 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:26:55,010 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 18:26:55,011 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [649550617] [2022-02-20 18:26:55,011 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:26:55,011 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 15.333333333333334) internal successors, (46), 3 states have internal predecessors, (46), 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) Word has length 46 [2022-02-20 18:26:55,011 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:26:55,012 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 15.333333333333334) internal successors, (46), 3 states have internal predecessors, (46), 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-02-20 18:26:55,039 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:55,039 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 18:26:55,039 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:26:55,041 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 18:26:55,042 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 18:26:55,042 INFO L87 Difference]: Start difference. First operand 889 states and 1340 transitions. Second operand has 3 states, 3 states have (on average 15.333333333333334) internal successors, (46), 3 states have internal predecessors, (46), 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-02-20 18:26:55,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:55,714 INFO L93 Difference]: Finished difference Result 2309 states and 3462 transitions. [2022-02-20 18:26:55,714 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 18:26:55,714 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 15.333333333333334) internal successors, (46), 3 states have internal predecessors, (46), 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) Word has length 46 [2022-02-20 18:26:55,714 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:26:55,714 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 15.333333333333334) internal successors, (46), 3 states have internal predecessors, (46), 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-02-20 18:26:55,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 255 transitions. [2022-02-20 18:26:55,716 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 15.333333333333334) internal successors, (46), 3 states have internal predecessors, (46), 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-02-20 18:26:55,717 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 255 transitions. [2022-02-20 18:26:55,717 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 255 transitions. [2022-02-20 18:26:55,860 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 255 edges. 255 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:55,931 INFO L225 Difference]: With dead ends: 2309 [2022-02-20 18:26:55,931 INFO L226 Difference]: Without dead ends: 1443 [2022-02-20 18:26:55,932 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 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-02-20 18:26:55,933 INFO L933 BasicCegarLoop]: 166 mSDtfsCounter, 70 mSDsluCounter, 76 mSDsCounter, 0 mSdLazyCounter, 4 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 242 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 4 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:26:55,933 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [70 Valid, 242 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 4 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:26:55,934 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1443 states. [2022-02-20 18:26:56,300 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1443 to 1441. [2022-02-20 18:26:56,301 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:26:56,303 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1443 states. Second operand has 1441 states, 1440 states have (on average 1.4722222222222223) internal successors, (2120), 1440 states have internal predecessors, (2120), 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-02-20 18:26:56,305 INFO L74 IsIncluded]: Start isIncluded. First operand 1443 states. Second operand has 1441 states, 1440 states have (on average 1.4722222222222223) internal successors, (2120), 1440 states have internal predecessors, (2120), 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-02-20 18:26:56,307 INFO L87 Difference]: Start difference. First operand 1443 states. Second operand has 1441 states, 1440 states have (on average 1.4722222222222223) internal successors, (2120), 1440 states have internal predecessors, (2120), 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-02-20 18:26:56,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:56,364 INFO L93 Difference]: Finished difference Result 1443 states and 2121 transitions. [2022-02-20 18:26:56,364 INFO L276 IsEmpty]: Start isEmpty. Operand 1443 states and 2121 transitions. [2022-02-20 18:26:56,366 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:56,366 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:56,368 INFO L74 IsIncluded]: Start isIncluded. First operand has 1441 states, 1440 states have (on average 1.4722222222222223) internal successors, (2120), 1440 states have internal predecessors, (2120), 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 1443 states. [2022-02-20 18:26:56,370 INFO L87 Difference]: Start difference. First operand has 1441 states, 1440 states have (on average 1.4722222222222223) internal successors, (2120), 1440 states have internal predecessors, (2120), 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 1443 states. [2022-02-20 18:26:56,431 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:56,431 INFO L93 Difference]: Finished difference Result 1443 states and 2121 transitions. [2022-02-20 18:26:56,432 INFO L276 IsEmpty]: Start isEmpty. Operand 1443 states and 2121 transitions. [2022-02-20 18:26:56,434 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:56,434 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:56,434 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:26:56,434 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:26:56,436 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1441 states, 1440 states have (on average 1.4722222222222223) internal successors, (2120), 1440 states have internal predecessors, (2120), 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-02-20 18:26:56,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1441 states to 1441 states and 2120 transitions. [2022-02-20 18:26:56,504 INFO L78 Accepts]: Start accepts. Automaton has 1441 states and 2120 transitions. Word has length 46 [2022-02-20 18:26:56,504 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:26:56,504 INFO L470 AbstractCegarLoop]: Abstraction has 1441 states and 2120 transitions. [2022-02-20 18:26:56,504 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 15.333333333333334) internal successors, (46), 3 states have internal predecessors, (46), 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-02-20 18:26:56,504 INFO L276 IsEmpty]: Start isEmpty. Operand 1441 states and 2120 transitions. [2022-02-20 18:26:56,505 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-02-20 18:26:56,505 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:26:56,505 INFO L514 BasicCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 18:26:56,505 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 18:26:56,505 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:26:56,506 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:26:56,506 INFO L85 PathProgramCache]: Analyzing trace with hash 1374629896, now seen corresponding path program 1 times [2022-02-20 18:26:56,506 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:26:56,506 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [502804002] [2022-02-20 18:26:56,506 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:26:56,506 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:26:56,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:26:56,582 INFO L290 TraceCheckUtils]: 0: Hoare triple {16037#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {16037#true} is VALID [2022-02-20 18:26:56,583 INFO L290 TraceCheckUtils]: 1: Hoare triple {16037#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {16037#true} is VALID [2022-02-20 18:26:56,583 INFO L290 TraceCheckUtils]: 2: Hoare triple {16037#true} assume 0 == ~r1~0 % 256; {16037#true} is VALID [2022-02-20 18:26:56,583 INFO L290 TraceCheckUtils]: 3: Hoare triple {16037#true} assume ~alive1~0 % 256 + ~alive2~0 % 256 + ~alive3~0 % 256 >= 1; {16037#true} is VALID [2022-02-20 18:26:56,583 INFO L290 TraceCheckUtils]: 4: Hoare triple {16037#true} assume ~id1~0 >= 0; {16037#true} is VALID [2022-02-20 18:26:56,583 INFO L290 TraceCheckUtils]: 5: Hoare triple {16037#true} assume 0 == ~st1~0; {16037#true} is VALID [2022-02-20 18:26:56,583 INFO L290 TraceCheckUtils]: 6: Hoare triple {16037#true} assume ~send1~0 == ~id1~0; {16037#true} is VALID [2022-02-20 18:26:56,584 INFO L290 TraceCheckUtils]: 7: Hoare triple {16037#true} assume 0 == ~mode1~0 % 256; {16037#true} is VALID [2022-02-20 18:26:56,584 INFO L290 TraceCheckUtils]: 8: Hoare triple {16037#true} assume ~id2~0 >= 0; {16037#true} is VALID [2022-02-20 18:26:56,584 INFO L290 TraceCheckUtils]: 9: Hoare triple {16037#true} assume 0 == ~st2~0; {16037#true} is VALID [2022-02-20 18:26:56,584 INFO L290 TraceCheckUtils]: 10: Hoare triple {16037#true} assume ~send2~0 == ~id2~0; {16037#true} is VALID [2022-02-20 18:26:56,584 INFO L290 TraceCheckUtils]: 11: Hoare triple {16037#true} assume 0 == ~mode2~0 % 256; {16037#true} is VALID [2022-02-20 18:26:56,584 INFO L290 TraceCheckUtils]: 12: Hoare triple {16037#true} assume ~id3~0 >= 0; {16037#true} is VALID [2022-02-20 18:26:56,584 INFO L290 TraceCheckUtils]: 13: Hoare triple {16037#true} assume 0 == ~st3~0; {16037#true} is VALID [2022-02-20 18:26:56,585 INFO L290 TraceCheckUtils]: 14: Hoare triple {16037#true} assume ~send3~0 == ~id3~0; {16037#true} is VALID [2022-02-20 18:26:56,585 INFO L290 TraceCheckUtils]: 15: Hoare triple {16037#true} assume 0 == ~mode3~0 % 256; {16037#true} is VALID [2022-02-20 18:26:56,585 INFO L290 TraceCheckUtils]: 16: Hoare triple {16037#true} assume ~id1~0 != ~id2~0; {16037#true} is VALID [2022-02-20 18:26:56,585 INFO L290 TraceCheckUtils]: 17: Hoare triple {16037#true} assume ~id1~0 != ~id3~0; {16037#true} is VALID [2022-02-20 18:26:56,585 INFO L290 TraceCheckUtils]: 18: Hoare triple {16037#true} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {16037#true} is VALID [2022-02-20 18:26:56,585 INFO L290 TraceCheckUtils]: 19: Hoare triple {16037#true} init_#res#1 := init_~tmp~0#1; {16037#true} is VALID [2022-02-20 18:26:56,585 INFO L290 TraceCheckUtils]: 20: Hoare triple {16037#true} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {16037#true} is VALID [2022-02-20 18:26:56,586 INFO L290 TraceCheckUtils]: 21: Hoare triple {16037#true} assume !(0 == assume_abort_if_not_~cond#1); {16037#true} is VALID [2022-02-20 18:26:56,586 INFO L290 TraceCheckUtils]: 22: Hoare triple {16037#true} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {16037#true} is VALID [2022-02-20 18:26:56,586 INFO L290 TraceCheckUtils]: 23: Hoare triple {16037#true} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {16037#true} is VALID [2022-02-20 18:26:56,586 INFO L290 TraceCheckUtils]: 24: Hoare triple {16037#true} assume !(0 != ~mode1~0 % 256); {16037#true} is VALID [2022-02-20 18:26:56,586 INFO L290 TraceCheckUtils]: 25: Hoare triple {16037#true} assume 0 != ~alive1~0 % 256; {16037#true} is VALID [2022-02-20 18:26:56,586 INFO L290 TraceCheckUtils]: 26: Hoare triple {16037#true} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {16037#true} is VALID [2022-02-20 18:26:56,586 INFO L290 TraceCheckUtils]: 27: Hoare triple {16037#true} ~p1_new~0 := (if node1_#t~ite4#1 % 256 <= 127 then node1_#t~ite4#1 % 256 else node1_#t~ite4#1 % 256 - 256);havoc node1_#t~ite4#1; {16037#true} is VALID [2022-02-20 18:26:56,587 INFO L290 TraceCheckUtils]: 28: Hoare triple {16037#true} ~mode1~0 := 1; {16037#true} is VALID [2022-02-20 18:26:56,587 INFO L290 TraceCheckUtils]: 29: Hoare triple {16037#true} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {16037#true} is VALID [2022-02-20 18:26:56,587 INFO L290 TraceCheckUtils]: 30: Hoare triple {16037#true} assume !(0 != ~mode2~0 % 256); {16037#true} is VALID [2022-02-20 18:26:56,587 INFO L290 TraceCheckUtils]: 31: Hoare triple {16037#true} assume !(0 != ~alive2~0 % 256); {16037#true} is VALID [2022-02-20 18:26:56,587 INFO L290 TraceCheckUtils]: 32: Hoare triple {16037#true} assume !(~send2~0 != ~id2~0); {16037#true} is VALID [2022-02-20 18:26:56,587 INFO L290 TraceCheckUtils]: 33: Hoare triple {16037#true} ~mode2~0 := 1; {16037#true} is VALID [2022-02-20 18:26:56,587 INFO L290 TraceCheckUtils]: 34: Hoare triple {16037#true} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {16037#true} is VALID [2022-02-20 18:26:56,588 INFO L290 TraceCheckUtils]: 35: Hoare triple {16037#true} assume !(0 != ~mode3~0 % 256); {16037#true} is VALID [2022-02-20 18:26:56,588 INFO L290 TraceCheckUtils]: 36: Hoare triple {16037#true} assume !(0 != ~alive3~0 % 256); {16037#true} is VALID [2022-02-20 18:26:56,588 INFO L290 TraceCheckUtils]: 37: Hoare triple {16037#true} assume !(~send3~0 != ~id3~0); {16037#true} is VALID [2022-02-20 18:26:56,588 INFO L290 TraceCheckUtils]: 38: Hoare triple {16037#true} ~mode3~0 := 1; {16037#true} is VALID [2022-02-20 18:26:56,588 INFO L290 TraceCheckUtils]: 39: Hoare triple {16037#true} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {16037#true} is VALID [2022-02-20 18:26:56,588 INFO L290 TraceCheckUtils]: 40: Hoare triple {16037#true} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {16037#true} is VALID [2022-02-20 18:26:56,589 INFO L290 TraceCheckUtils]: 41: Hoare triple {16037#true} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {16039#(= |ULTIMATE.start_check_~tmp~1#1| 1)} is VALID [2022-02-20 18:26:56,589 INFO L290 TraceCheckUtils]: 42: Hoare triple {16039#(= |ULTIMATE.start_check_~tmp~1#1| 1)} check_#res#1 := check_~tmp~1#1; {16040#(= 1 |ULTIMATE.start_check_#res#1|)} is VALID [2022-02-20 18:26:56,590 INFO L290 TraceCheckUtils]: 43: Hoare triple {16040#(= 1 |ULTIMATE.start_check_#res#1|)} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {16041#(and (<= (div |ULTIMATE.start_assert_~arg#1| 256) 0) (<= 1 |ULTIMATE.start_assert_~arg#1|))} is VALID [2022-02-20 18:26:56,590 INFO L290 TraceCheckUtils]: 44: Hoare triple {16041#(and (<= (div |ULTIMATE.start_assert_~arg#1| 256) 0) (<= 1 |ULTIMATE.start_assert_~arg#1|))} assume 0 == assert_~arg#1 % 256; {16038#false} is VALID [2022-02-20 18:26:56,590 INFO L290 TraceCheckUtils]: 45: Hoare triple {16038#false} assume !false; {16038#false} is VALID [2022-02-20 18:26:56,591 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 18:26:56,591 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:26:56,591 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [502804002] [2022-02-20 18:26:56,591 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [502804002] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:26:56,591 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:26:56,591 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:26:56,591 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1540874600] [2022-02-20 18:26:56,591 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:26:56,592 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 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) Word has length 46 [2022-02-20 18:26:56,592 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:26:56,592 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 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-02-20 18:26:56,617 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:56,618 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:26:56,618 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:26:56,618 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:26:56,618 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:26:56,618 INFO L87 Difference]: Start difference. First operand 1441 states and 2120 transitions. Second operand has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 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-02-20 18:26:58,316 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:58,316 INFO L93 Difference]: Finished difference Result 3051 states and 4409 transitions. [2022-02-20 18:26:58,316 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 18:26:58,317 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 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) Word has length 46 [2022-02-20 18:26:58,317 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:26:58,317 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 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-02-20 18:26:58,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 197 transitions. [2022-02-20 18:26:58,318 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 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-02-20 18:26:58,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 197 transitions. [2022-02-20 18:26:58,321 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 197 transitions. [2022-02-20 18:26:58,444 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 197 edges. 197 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:26:58,739 INFO L225 Difference]: With dead ends: 3051 [2022-02-20 18:26:58,740 INFO L226 Difference]: Without dead ends: 3049 [2022-02-20 18:26:58,740 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 18:26:58,741 INFO L933 BasicCegarLoop]: 149 mSDtfsCounter, 234 mSDsluCounter, 318 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 234 SdHoareTripleChecker+Valid, 467 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:26:58,741 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [234 Valid, 467 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:26:58,743 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3049 states. [2022-02-20 18:26:59,417 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3049 to 1585. [2022-02-20 18:26:59,417 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:26:59,420 INFO L82 GeneralOperation]: Start isEquivalent. First operand 3049 states. Second operand has 1585 states, 1584 states have (on average 1.4292929292929293) internal successors, (2264), 1584 states have internal predecessors, (2264), 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-02-20 18:26:59,422 INFO L74 IsIncluded]: Start isIncluded. First operand 3049 states. Second operand has 1585 states, 1584 states have (on average 1.4292929292929293) internal successors, (2264), 1584 states have internal predecessors, (2264), 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-02-20 18:26:59,424 INFO L87 Difference]: Start difference. First operand 3049 states. Second operand has 1585 states, 1584 states have (on average 1.4292929292929293) internal successors, (2264), 1584 states have internal predecessors, (2264), 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-02-20 18:26:59,666 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:59,667 INFO L93 Difference]: Finished difference Result 3049 states and 4360 transitions. [2022-02-20 18:26:59,667 INFO L276 IsEmpty]: Start isEmpty. Operand 3049 states and 4360 transitions. [2022-02-20 18:26:59,670 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:59,671 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:59,675 INFO L74 IsIncluded]: Start isIncluded. First operand has 1585 states, 1584 states have (on average 1.4292929292929293) internal successors, (2264), 1584 states have internal predecessors, (2264), 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 3049 states. [2022-02-20 18:26:59,686 INFO L87 Difference]: Start difference. First operand has 1585 states, 1584 states have (on average 1.4292929292929293) internal successors, (2264), 1584 states have internal predecessors, (2264), 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 3049 states. [2022-02-20 18:26:59,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:26:59,956 INFO L93 Difference]: Finished difference Result 3049 states and 4360 transitions. [2022-02-20 18:26:59,956 INFO L276 IsEmpty]: Start isEmpty. Operand 3049 states and 4360 transitions. [2022-02-20 18:26:59,960 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:26:59,960 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:26:59,960 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:26:59,960 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:26:59,963 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1585 states, 1584 states have (on average 1.4292929292929293) internal successors, (2264), 1584 states have internal predecessors, (2264), 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-02-20 18:27:00,061 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1585 states to 1585 states and 2264 transitions. [2022-02-20 18:27:00,062 INFO L78 Accepts]: Start accepts. Automaton has 1585 states and 2264 transitions. Word has length 46 [2022-02-20 18:27:00,062 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:27:00,062 INFO L470 AbstractCegarLoop]: Abstraction has 1585 states and 2264 transitions. [2022-02-20 18:27:00,062 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 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-02-20 18:27:00,062 INFO L276 IsEmpty]: Start isEmpty. Operand 1585 states and 2264 transitions. [2022-02-20 18:27:00,063 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-02-20 18:27:00,063 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:27:00,063 INFO L514 BasicCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 18:27:00,063 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 18:27:00,063 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:27:00,064 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:27:00,064 INFO L85 PathProgramCache]: Analyzing trace with hash -283567685, now seen corresponding path program 1 times [2022-02-20 18:27:00,064 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:27:00,064 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [992989946] [2022-02-20 18:27:00,064 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:27:00,064 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:27:00,087 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:27:00,130 INFO L290 TraceCheckUtils]: 0: Hoare triple {27651#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {27651#true} is VALID [2022-02-20 18:27:00,131 INFO L290 TraceCheckUtils]: 1: Hoare triple {27651#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {27651#true} is VALID [2022-02-20 18:27:00,131 INFO L290 TraceCheckUtils]: 2: Hoare triple {27651#true} assume 0 == ~r1~0 % 256; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,131 INFO L290 TraceCheckUtils]: 3: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~alive1~0 % 256 + ~alive2~0 % 256 + ~alive3~0 % 256 >= 1; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,132 INFO L290 TraceCheckUtils]: 4: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id1~0 >= 0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,132 INFO L290 TraceCheckUtils]: 5: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~st1~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,132 INFO L290 TraceCheckUtils]: 6: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~send1~0 == ~id1~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,133 INFO L290 TraceCheckUtils]: 7: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~mode1~0 % 256; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,133 INFO L290 TraceCheckUtils]: 8: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id2~0 >= 0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,133 INFO L290 TraceCheckUtils]: 9: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~st2~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,133 INFO L290 TraceCheckUtils]: 10: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~send2~0 == ~id2~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,134 INFO L290 TraceCheckUtils]: 11: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~mode2~0 % 256; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,134 INFO L290 TraceCheckUtils]: 12: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id3~0 >= 0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,134 INFO L290 TraceCheckUtils]: 13: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~st3~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,134 INFO L290 TraceCheckUtils]: 14: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~send3~0 == ~id3~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,135 INFO L290 TraceCheckUtils]: 15: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~mode3~0 % 256; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,135 INFO L290 TraceCheckUtils]: 16: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id1~0 != ~id2~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,135 INFO L290 TraceCheckUtils]: 17: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id1~0 != ~id3~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,136 INFO L290 TraceCheckUtils]: 18: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,136 INFO L290 TraceCheckUtils]: 19: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} init_#res#1 := init_~tmp~0#1; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,136 INFO L290 TraceCheckUtils]: 20: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,136 INFO L290 TraceCheckUtils]: 21: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(0 == assume_abort_if_not_~cond#1); {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,137 INFO L290 TraceCheckUtils]: 22: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,137 INFO L290 TraceCheckUtils]: 23: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,137 INFO L290 TraceCheckUtils]: 24: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(0 != ~mode1~0 % 256); {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,138 INFO L290 TraceCheckUtils]: 25: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 != ~alive1~0 % 256; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,138 INFO L290 TraceCheckUtils]: 26: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,138 INFO L290 TraceCheckUtils]: 27: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} ~p1_new~0 := (if node1_#t~ite4#1 % 256 <= 127 then node1_#t~ite4#1 % 256 else node1_#t~ite4#1 % 256 - 256);havoc node1_#t~ite4#1; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,138 INFO L290 TraceCheckUtils]: 28: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} ~mode1~0 := 1; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,139 INFO L290 TraceCheckUtils]: 29: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,139 INFO L290 TraceCheckUtils]: 30: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(0 != ~mode2~0 % 256); {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,139 INFO L290 TraceCheckUtils]: 31: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(0 != ~alive2~0 % 256); {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,140 INFO L290 TraceCheckUtils]: 32: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(~send2~0 != ~id2~0); {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,140 INFO L290 TraceCheckUtils]: 33: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} ~mode2~0 := 1; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,140 INFO L290 TraceCheckUtils]: 34: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,140 INFO L290 TraceCheckUtils]: 35: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(0 != ~mode3~0 % 256); {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,141 INFO L290 TraceCheckUtils]: 36: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(0 != ~alive3~0 % 256); {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,141 INFO L290 TraceCheckUtils]: 37: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(~send3~0 != ~id3~0); {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,141 INFO L290 TraceCheckUtils]: 38: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} ~mode3~0 := 1; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,141 INFO L290 TraceCheckUtils]: 39: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,142 INFO L290 TraceCheckUtils]: 40: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:27:00,142 INFO L290 TraceCheckUtils]: 41: Hoare triple {27653#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(~r1~0 % 256 < 3); {27652#false} is VALID [2022-02-20 18:27:00,142 INFO L290 TraceCheckUtils]: 42: Hoare triple {27652#false} assume !(1 == ~st1~0 + ~st2~0 + ~st3~0);check_~tmp~1#1 := 0; {27652#false} is VALID [2022-02-20 18:27:00,143 INFO L290 TraceCheckUtils]: 43: Hoare triple {27652#false} check_#res#1 := check_~tmp~1#1; {27652#false} is VALID [2022-02-20 18:27:00,143 INFO L290 TraceCheckUtils]: 44: Hoare triple {27652#false} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {27652#false} is VALID [2022-02-20 18:27:00,143 INFO L290 TraceCheckUtils]: 45: Hoare triple {27652#false} assume 0 == assert_~arg#1 % 256; {27652#false} is VALID [2022-02-20 18:27:00,144 INFO L290 TraceCheckUtils]: 46: Hoare triple {27652#false} assume !false; {27652#false} is VALID [2022-02-20 18:27:00,144 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 18:27:00,144 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:27:00,144 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [992989946] [2022-02-20 18:27:00,144 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [992989946] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:27:00,144 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:27:00,145 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 18:27:00,145 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1572849902] [2022-02-20 18:27:00,145 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:27:00,145 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 15.666666666666666) internal successors, (47), 3 states have internal predecessors, (47), 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) Word has length 47 [2022-02-20 18:27:00,145 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:27:00,146 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 15.666666666666666) internal successors, (47), 3 states have internal predecessors, (47), 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-02-20 18:27:00,170 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:27:00,171 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 18:27:00,171 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:27:00,172 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 18:27:00,172 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 18:27:00,172 INFO L87 Difference]: Start difference. First operand 1585 states and 2264 transitions. Second operand has 3 states, 3 states have (on average 15.666666666666666) internal successors, (47), 3 states have internal predecessors, (47), 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-02-20 18:27:01,652 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:27:01,652 INFO L93 Difference]: Finished difference Result 3787 states and 5424 transitions. [2022-02-20 18:27:01,652 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 18:27:01,652 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 15.666666666666666) internal successors, (47), 3 states have internal predecessors, (47), 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) Word has length 47 [2022-02-20 18:27:01,653 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:27:01,653 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 15.666666666666666) internal successors, (47), 3 states have internal predecessors, (47), 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-02-20 18:27:01,654 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 267 transitions. [2022-02-20 18:27:01,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 15.666666666666666) internal successors, (47), 3 states have internal predecessors, (47), 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-02-20 18:27:01,655 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 267 transitions. [2022-02-20 18:27:01,655 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 267 transitions. [2022-02-20 18:27:01,829 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 267 edges. 267 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:27:02,013 INFO L225 Difference]: With dead ends: 3787 [2022-02-20 18:27:02,014 INFO L226 Difference]: Without dead ends: 2225 [2022-02-20 18:27:02,015 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 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-02-20 18:27:02,015 INFO L933 BasicCegarLoop]: 107 mSDtfsCounter, 53 mSDsluCounter, 80 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 53 SdHoareTripleChecker+Valid, 187 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:27:02,016 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [53 Valid, 187 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:27:02,017 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2225 states. [2022-02-20 18:27:02,972 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2225 to 2203. [2022-02-20 18:27:02,972 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:27:02,975 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2225 states. Second operand has 2203 states, 2202 states have (on average 1.4178019981834695) internal successors, (3122), 2202 states have internal predecessors, (3122), 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-02-20 18:27:02,978 INFO L74 IsIncluded]: Start isIncluded. First operand 2225 states. Second operand has 2203 states, 2202 states have (on average 1.4178019981834695) internal successors, (3122), 2202 states have internal predecessors, (3122), 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-02-20 18:27:02,982 INFO L87 Difference]: Start difference. First operand 2225 states. Second operand has 2203 states, 2202 states have (on average 1.4178019981834695) internal successors, (3122), 2202 states have internal predecessors, (3122), 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-02-20 18:27:03,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:27:03,115 INFO L93 Difference]: Finished difference Result 2225 states and 3143 transitions. [2022-02-20 18:27:03,115 INFO L276 IsEmpty]: Start isEmpty. Operand 2225 states and 3143 transitions. [2022-02-20 18:27:03,118 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:27:03,118 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:27:03,120 INFO L74 IsIncluded]: Start isIncluded. First operand has 2203 states, 2202 states have (on average 1.4178019981834695) internal successors, (3122), 2202 states have internal predecessors, (3122), 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 2225 states. [2022-02-20 18:27:03,122 INFO L87 Difference]: Start difference. First operand has 2203 states, 2202 states have (on average 1.4178019981834695) internal successors, (3122), 2202 states have internal predecessors, (3122), 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 2225 states. [2022-02-20 18:27:03,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:27:03,257 INFO L93 Difference]: Finished difference Result 2225 states and 3143 transitions. [2022-02-20 18:27:03,258 INFO L276 IsEmpty]: Start isEmpty. Operand 2225 states and 3143 transitions. [2022-02-20 18:27:03,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:27:03,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:27:03,260 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:27:03,260 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:27:03,262 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2203 states, 2202 states have (on average 1.4178019981834695) internal successors, (3122), 2202 states have internal predecessors, (3122), 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-02-20 18:27:03,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2203 states to 2203 states and 3122 transitions. [2022-02-20 18:27:03,415 INFO L78 Accepts]: Start accepts. Automaton has 2203 states and 3122 transitions. Word has length 47 [2022-02-20 18:27:03,415 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:27:03,415 INFO L470 AbstractCegarLoop]: Abstraction has 2203 states and 3122 transitions. [2022-02-20 18:27:03,416 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 15.666666666666666) internal successors, (47), 3 states have internal predecessors, (47), 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-02-20 18:27:03,416 INFO L276 IsEmpty]: Start isEmpty. Operand 2203 states and 3122 transitions. [2022-02-20 18:27:03,417 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-02-20 18:27:03,417 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:27:03,417 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 18:27:03,417 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 18:27:03,417 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:27:03,417 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:27:03,417 INFO L85 PathProgramCache]: Analyzing trace with hash 613343109, now seen corresponding path program 1 times [2022-02-20 18:27:03,418 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:27:03,418 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [246675878] [2022-02-20 18:27:03,418 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:27:03,418 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:27:03,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:27:03,638 INFO L290 TraceCheckUtils]: 0: Hoare triple {39180#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {39182#(and (<= (+ ~nomsg~0 1) 0) (<= 0 (+ ~nomsg~0 1)))} is VALID [2022-02-20 18:27:03,639 INFO L290 TraceCheckUtils]: 1: Hoare triple {39182#(and (<= (+ ~nomsg~0 1) 0) (<= 0 (+ ~nomsg~0 1)))} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {39183#(and (<= (+ ~nomsg~0 1) 0) (<= ~id1~0 (+ ~nomsg~0 128)) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,640 INFO L290 TraceCheckUtils]: 2: Hoare triple {39183#(and (<= (+ ~nomsg~0 1) 0) (<= ~id1~0 (+ ~nomsg~0 128)) (<= ~send1~0 (+ ~nomsg~0 128)))} assume 0 == ~r1~0 % 256; {39183#(and (<= (+ ~nomsg~0 1) 0) (<= ~id1~0 (+ ~nomsg~0 128)) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,640 INFO L290 TraceCheckUtils]: 3: Hoare triple {39183#(and (<= (+ ~nomsg~0 1) 0) (<= ~id1~0 (+ ~nomsg~0 128)) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~alive1~0 % 256 + ~alive2~0 % 256 + ~alive3~0 % 256 >= 1; {39183#(and (<= (+ ~nomsg~0 1) 0) (<= ~id1~0 (+ ~nomsg~0 128)) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,641 INFO L290 TraceCheckUtils]: 4: Hoare triple {39183#(and (<= (+ ~nomsg~0 1) 0) (<= ~id1~0 (+ ~nomsg~0 128)) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~id1~0 >= 0; {39184#(and (<= (+ ~nomsg~0 1) ~id1~0) (<= ~id1~0 (+ ~nomsg~0 128)) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,641 INFO L290 TraceCheckUtils]: 5: Hoare triple {39184#(and (<= (+ ~nomsg~0 1) ~id1~0) (<= ~id1~0 (+ ~nomsg~0 128)) (<= ~send1~0 (+ ~nomsg~0 128)))} assume 0 == ~st1~0; {39184#(and (<= (+ ~nomsg~0 1) ~id1~0) (<= ~id1~0 (+ ~nomsg~0 128)) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,642 INFO L290 TraceCheckUtils]: 6: Hoare triple {39184#(and (<= (+ ~nomsg~0 1) ~id1~0) (<= ~id1~0 (+ ~nomsg~0 128)) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~send1~0 == ~id1~0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,642 INFO L290 TraceCheckUtils]: 7: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume 0 == ~mode1~0 % 256; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,642 INFO L290 TraceCheckUtils]: 8: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~id2~0 >= 0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,643 INFO L290 TraceCheckUtils]: 9: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume 0 == ~st2~0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,643 INFO L290 TraceCheckUtils]: 10: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~send2~0 == ~id2~0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,644 INFO L290 TraceCheckUtils]: 11: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume 0 == ~mode2~0 % 256; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,644 INFO L290 TraceCheckUtils]: 12: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~id3~0 >= 0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,644 INFO L290 TraceCheckUtils]: 13: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume 0 == ~st3~0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,645 INFO L290 TraceCheckUtils]: 14: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~send3~0 == ~id3~0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,645 INFO L290 TraceCheckUtils]: 15: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume 0 == ~mode3~0 % 256; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,646 INFO L290 TraceCheckUtils]: 16: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~id1~0 != ~id2~0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,646 INFO L290 TraceCheckUtils]: 17: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~id1~0 != ~id3~0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,647 INFO L290 TraceCheckUtils]: 18: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,647 INFO L290 TraceCheckUtils]: 19: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} init_#res#1 := init_~tmp~0#1; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,647 INFO L290 TraceCheckUtils]: 20: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,648 INFO L290 TraceCheckUtils]: 21: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume !(0 == assume_abort_if_not_~cond#1); {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,648 INFO L290 TraceCheckUtils]: 22: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,649 INFO L290 TraceCheckUtils]: 23: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,649 INFO L290 TraceCheckUtils]: 24: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume !(0 != ~mode1~0 % 256); {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,650 INFO L290 TraceCheckUtils]: 25: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume 0 != ~alive1~0 % 256; {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} is VALID [2022-02-20 18:27:03,650 INFO L290 TraceCheckUtils]: 26: Hoare triple {39185#(and (<= (+ ~nomsg~0 1) ~send1~0) (<= ~send1~0 (+ ~nomsg~0 128)))} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {39186#(and (or (<= |ULTIMATE.start_node1_#t~ite4#1| (+ (* 256 (div |ULTIMATE.start_node1_#t~ite4#1| 256)) 127)) (not (= (+ (* (- 1) |ULTIMATE.start_node1_#t~ite4#1|) ~nomsg~0 (* 256 (div |ULTIMATE.start_node1_#t~ite4#1| 256)) 256) 0))) (or (not (<= |ULTIMATE.start_node1_#t~ite4#1| (+ (* 256 (div |ULTIMATE.start_node1_#t~ite4#1| 256)) 127))) (not (= (+ (* (- 1) |ULTIMATE.start_node1_#t~ite4#1|) ~nomsg~0 (* 256 (div |ULTIMATE.start_node1_#t~ite4#1| 256))) 0))))} is VALID [2022-02-20 18:27:03,651 INFO L290 TraceCheckUtils]: 27: Hoare triple {39186#(and (or (<= |ULTIMATE.start_node1_#t~ite4#1| (+ (* 256 (div |ULTIMATE.start_node1_#t~ite4#1| 256)) 127)) (not (= (+ (* (- 1) |ULTIMATE.start_node1_#t~ite4#1|) ~nomsg~0 (* 256 (div |ULTIMATE.start_node1_#t~ite4#1| 256)) 256) 0))) (or (not (<= |ULTIMATE.start_node1_#t~ite4#1| (+ (* 256 (div |ULTIMATE.start_node1_#t~ite4#1| 256)) 127))) (not (= (+ (* (- 1) |ULTIMATE.start_node1_#t~ite4#1|) ~nomsg~0 (* 256 (div |ULTIMATE.start_node1_#t~ite4#1| 256))) 0))))} ~p1_new~0 := (if node1_#t~ite4#1 % 256 <= 127 then node1_#t~ite4#1 % 256 else node1_#t~ite4#1 % 256 - 256);havoc node1_#t~ite4#1; {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,651 INFO L290 TraceCheckUtils]: 28: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} ~mode1~0 := 1; {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,652 INFO L290 TraceCheckUtils]: 29: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,652 INFO L290 TraceCheckUtils]: 30: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} assume !(0 != ~mode2~0 % 256); {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,652 INFO L290 TraceCheckUtils]: 31: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} assume !(0 != ~alive2~0 % 256); {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,653 INFO L290 TraceCheckUtils]: 32: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} assume !(~send2~0 != ~id2~0); {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,653 INFO L290 TraceCheckUtils]: 33: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} ~mode2~0 := 1; {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,653 INFO L290 TraceCheckUtils]: 34: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,656 INFO L290 TraceCheckUtils]: 35: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} assume !(0 != ~mode3~0 % 256); {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,657 INFO L290 TraceCheckUtils]: 36: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} assume !(0 != ~alive3~0 % 256); {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,657 INFO L290 TraceCheckUtils]: 37: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} assume !(~send3~0 != ~id3~0); {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,657 INFO L290 TraceCheckUtils]: 38: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} ~mode3~0 := 1; {39187#(not (= ~nomsg~0 ~p1_new~0))} is VALID [2022-02-20 18:27:03,658 INFO L290 TraceCheckUtils]: 39: Hoare triple {39187#(not (= ~nomsg~0 ~p1_new~0))} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,658 INFO L290 TraceCheckUtils]: 40: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,658 INFO L290 TraceCheckUtils]: 41: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,659 INFO L290 TraceCheckUtils]: 42: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} check_#res#1 := check_~tmp~1#1; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,659 INFO L290 TraceCheckUtils]: 43: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,659 INFO L290 TraceCheckUtils]: 44: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} assume !(0 == assert_~arg#1 % 256); {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,660 INFO L290 TraceCheckUtils]: 45: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} assume { :end_inline_assert } true; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,660 INFO L290 TraceCheckUtils]: 46: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,660 INFO L290 TraceCheckUtils]: 47: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} assume 0 != ~mode1~0 % 256; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,661 INFO L290 TraceCheckUtils]: 48: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} assume !(255 == ~r1~0 % 256); {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,661 INFO L290 TraceCheckUtils]: 49: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} ~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,661 INFO L290 TraceCheckUtils]: 50: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} assume !(node1_~m1~0#1 != ~nomsg~0); {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,662 INFO L290 TraceCheckUtils]: 51: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} ~mode1~0 := 0; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,662 INFO L290 TraceCheckUtils]: 52: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {39188#(not (= ~nomsg~0 ~p1_old~0))} is VALID [2022-02-20 18:27:03,663 INFO L290 TraceCheckUtils]: 53: Hoare triple {39188#(not (= ~nomsg~0 ~p1_old~0))} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {39189#(not (= ~nomsg~0 |ULTIMATE.start_node2_~m2~0#1|))} is VALID [2022-02-20 18:27:03,663 INFO L290 TraceCheckUtils]: 54: Hoare triple {39189#(not (= ~nomsg~0 |ULTIMATE.start_node2_~m2~0#1|))} assume !(node2_~m2~0#1 != ~nomsg~0); {39181#false} is VALID [2022-02-20 18:27:03,663 INFO L290 TraceCheckUtils]: 55: Hoare triple {39181#false} ~mode2~0 := 0; {39181#false} is VALID [2022-02-20 18:27:03,663 INFO L290 TraceCheckUtils]: 56: Hoare triple {39181#false} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {39181#false} is VALID [2022-02-20 18:27:03,663 INFO L290 TraceCheckUtils]: 57: Hoare triple {39181#false} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {39181#false} is VALID [2022-02-20 18:27:03,663 INFO L290 TraceCheckUtils]: 58: Hoare triple {39181#false} assume !(node3_~m3~0#1 != ~nomsg~0); {39181#false} is VALID [2022-02-20 18:27:03,664 INFO L290 TraceCheckUtils]: 59: Hoare triple {39181#false} ~mode3~0 := 0; {39181#false} is VALID [2022-02-20 18:27:03,664 INFO L290 TraceCheckUtils]: 60: Hoare triple {39181#false} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {39181#false} is VALID [2022-02-20 18:27:03,664 INFO L290 TraceCheckUtils]: 61: Hoare triple {39181#false} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {39181#false} is VALID [2022-02-20 18:27:03,664 INFO L290 TraceCheckUtils]: 62: Hoare triple {39181#false} assume !(~r1~0 % 256 < 3); {39181#false} is VALID [2022-02-20 18:27:03,664 INFO L290 TraceCheckUtils]: 63: Hoare triple {39181#false} assume !(1 == ~st1~0 + ~st2~0 + ~st3~0);check_~tmp~1#1 := 0; {39181#false} is VALID [2022-02-20 18:27:03,664 INFO L290 TraceCheckUtils]: 64: Hoare triple {39181#false} check_#res#1 := check_~tmp~1#1; {39181#false} is VALID [2022-02-20 18:27:03,664 INFO L290 TraceCheckUtils]: 65: Hoare triple {39181#false} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {39181#false} is VALID [2022-02-20 18:27:03,664 INFO L290 TraceCheckUtils]: 66: Hoare triple {39181#false} assume 0 == assert_~arg#1 % 256; {39181#false} is VALID [2022-02-20 18:27:03,665 INFO L290 TraceCheckUtils]: 67: Hoare triple {39181#false} assume !false; {39181#false} is VALID [2022-02-20 18:27:03,665 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 8 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 18:27:03,665 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:27:03,665 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [246675878] [2022-02-20 18:27:03,666 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [246675878] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 18:27:03,666 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [42326295] [2022-02-20 18:27:03,666 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:27:03,666 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 18:27:03,666 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 18:27:03,668 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-02-20 18:27:03,673 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-02-20 18:27:03,756 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:27:03,758 INFO L263 TraceCheckSpWp]: Trace formula consists of 279 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 18:27:03,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:27:03,825 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 18:27:04,737 INFO L290 TraceCheckUtils]: 0: Hoare triple {39180#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {39180#true} is VALID [2022-02-20 18:27:04,737 INFO L290 TraceCheckUtils]: 1: Hoare triple {39180#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {39180#true} is VALID [2022-02-20 18:27:04,738 INFO L290 TraceCheckUtils]: 2: Hoare triple {39180#true} assume 0 == ~r1~0 % 256; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,738 INFO L290 TraceCheckUtils]: 3: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~alive1~0 % 256 + ~alive2~0 % 256 + ~alive3~0 % 256 >= 1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,739 INFO L290 TraceCheckUtils]: 4: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~id1~0 >= 0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,739 INFO L290 TraceCheckUtils]: 5: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume 0 == ~st1~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,739 INFO L290 TraceCheckUtils]: 6: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~send1~0 == ~id1~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,740 INFO L290 TraceCheckUtils]: 7: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume 0 == ~mode1~0 % 256; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,740 INFO L290 TraceCheckUtils]: 8: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~id2~0 >= 0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,740 INFO L290 TraceCheckUtils]: 9: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume 0 == ~st2~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,741 INFO L290 TraceCheckUtils]: 10: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~send2~0 == ~id2~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,741 INFO L290 TraceCheckUtils]: 11: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume 0 == ~mode2~0 % 256; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,741 INFO L290 TraceCheckUtils]: 12: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~id3~0 >= 0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,742 INFO L290 TraceCheckUtils]: 13: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume 0 == ~st3~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,742 INFO L290 TraceCheckUtils]: 14: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~send3~0 == ~id3~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,742 INFO L290 TraceCheckUtils]: 15: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume 0 == ~mode3~0 % 256; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,743 INFO L290 TraceCheckUtils]: 16: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~id1~0 != ~id2~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,743 INFO L290 TraceCheckUtils]: 17: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~id1~0 != ~id3~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,743 INFO L290 TraceCheckUtils]: 18: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,744 INFO L290 TraceCheckUtils]: 19: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} init_#res#1 := init_~tmp~0#1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,746 INFO L290 TraceCheckUtils]: 20: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,746 INFO L290 TraceCheckUtils]: 21: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !(0 == assume_abort_if_not_~cond#1); {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,746 INFO L290 TraceCheckUtils]: 22: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,747 INFO L290 TraceCheckUtils]: 23: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,747 INFO L290 TraceCheckUtils]: 24: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !(0 != ~mode1~0 % 256); {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,747 INFO L290 TraceCheckUtils]: 25: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume 0 != ~alive1~0 % 256; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,748 INFO L290 TraceCheckUtils]: 26: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,748 INFO L290 TraceCheckUtils]: 27: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} ~p1_new~0 := (if node1_#t~ite4#1 % 256 <= 127 then node1_#t~ite4#1 % 256 else node1_#t~ite4#1 % 256 - 256);havoc node1_#t~ite4#1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,748 INFO L290 TraceCheckUtils]: 28: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} ~mode1~0 := 1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,749 INFO L290 TraceCheckUtils]: 29: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,749 INFO L290 TraceCheckUtils]: 30: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !(0 != ~mode2~0 % 256); {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,749 INFO L290 TraceCheckUtils]: 31: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !(0 != ~alive2~0 % 256); {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,750 INFO L290 TraceCheckUtils]: 32: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !(~send2~0 != ~id2~0); {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,750 INFO L290 TraceCheckUtils]: 33: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} ~mode2~0 := 1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,750 INFO L290 TraceCheckUtils]: 34: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,751 INFO L290 TraceCheckUtils]: 35: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !(0 != ~mode3~0 % 256); {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,751 INFO L290 TraceCheckUtils]: 36: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !(0 != ~alive3~0 % 256); {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,751 INFO L290 TraceCheckUtils]: 37: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !(~send3~0 != ~id3~0); {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,752 INFO L290 TraceCheckUtils]: 38: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} ~mode3~0 := 1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,752 INFO L290 TraceCheckUtils]: 39: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,752 INFO L290 TraceCheckUtils]: 40: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,753 INFO L290 TraceCheckUtils]: 41: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,753 INFO L290 TraceCheckUtils]: 42: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} check_#res#1 := check_~tmp~1#1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,753 INFO L290 TraceCheckUtils]: 43: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,753 INFO L290 TraceCheckUtils]: 44: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !(0 == assert_~arg#1 % 256); {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,754 INFO L290 TraceCheckUtils]: 45: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume { :end_inline_assert } true; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,754 INFO L290 TraceCheckUtils]: 46: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,754 INFO L290 TraceCheckUtils]: 47: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume 0 != ~mode1~0 % 256; {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,755 INFO L290 TraceCheckUtils]: 48: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} assume !(255 == ~r1~0 % 256); {39199#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:27:04,756 INFO L290 TraceCheckUtils]: 49: Hoare triple {39199#(<= (mod ~r1~0 256) 0)} ~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,756 INFO L290 TraceCheckUtils]: 50: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume !(node1_~m1~0#1 != ~nomsg~0); {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,757 INFO L290 TraceCheckUtils]: 51: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} ~mode1~0 := 0; {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,757 INFO L290 TraceCheckUtils]: 52: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,757 INFO L290 TraceCheckUtils]: 53: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,758 INFO L290 TraceCheckUtils]: 54: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume !(node2_~m2~0#1 != ~nomsg~0); {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,758 INFO L290 TraceCheckUtils]: 55: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} ~mode2~0 := 0; {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,759 INFO L290 TraceCheckUtils]: 56: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,759 INFO L290 TraceCheckUtils]: 57: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,760 INFO L290 TraceCheckUtils]: 58: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume !(node3_~m3~0#1 != ~nomsg~0); {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,760 INFO L290 TraceCheckUtils]: 59: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} ~mode3~0 := 0; {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,761 INFO L290 TraceCheckUtils]: 60: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,761 INFO L290 TraceCheckUtils]: 61: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:27:04,762 INFO L290 TraceCheckUtils]: 62: Hoare triple {39341#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume !(~r1~0 % 256 < 3); {39181#false} is VALID [2022-02-20 18:27:04,762 INFO L290 TraceCheckUtils]: 63: Hoare triple {39181#false} assume !(1 == ~st1~0 + ~st2~0 + ~st3~0);check_~tmp~1#1 := 0; {39181#false} is VALID [2022-02-20 18:27:04,762 INFO L290 TraceCheckUtils]: 64: Hoare triple {39181#false} check_#res#1 := check_~tmp~1#1; {39181#false} is VALID [2022-02-20 18:27:04,762 INFO L290 TraceCheckUtils]: 65: Hoare triple {39181#false} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {39181#false} is VALID [2022-02-20 18:27:04,763 INFO L290 TraceCheckUtils]: 66: Hoare triple {39181#false} assume 0 == assert_~arg#1 % 256; {39181#false} is VALID [2022-02-20 18:27:04,763 INFO L290 TraceCheckUtils]: 67: Hoare triple {39181#false} assume !false; {39181#false} is VALID [2022-02-20 18:27:04,763 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 7 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 18:27:04,763 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 18:27:06,838 INFO L290 TraceCheckUtils]: 67: Hoare triple {39181#false} assume !false; {39181#false} is VALID [2022-02-20 18:27:06,839 INFO L290 TraceCheckUtils]: 66: Hoare triple {39181#false} assume 0 == assert_~arg#1 % 256; {39181#false} is VALID [2022-02-20 18:27:06,839 INFO L290 TraceCheckUtils]: 65: Hoare triple {39181#false} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {39181#false} is VALID [2022-02-20 18:27:06,839 INFO L290 TraceCheckUtils]: 64: Hoare triple {39181#false} check_#res#1 := check_~tmp~1#1; {39181#false} is VALID [2022-02-20 18:27:06,839 INFO L290 TraceCheckUtils]: 63: Hoare triple {39181#false} assume !(1 == ~st1~0 + ~st2~0 + ~st3~0);check_~tmp~1#1 := 0; {39181#false} is VALID [2022-02-20 18:27:06,839 INFO L290 TraceCheckUtils]: 62: Hoare triple {39411#(< (mod ~r1~0 256) 3)} assume !(~r1~0 % 256 < 3); {39181#false} is VALID [2022-02-20 18:27:06,840 INFO L290 TraceCheckUtils]: 61: Hoare triple {39411#(< (mod ~r1~0 256) 3)} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,840 INFO L290 TraceCheckUtils]: 60: Hoare triple {39411#(< (mod ~r1~0 256) 3)} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,840 INFO L290 TraceCheckUtils]: 59: Hoare triple {39411#(< (mod ~r1~0 256) 3)} ~mode3~0 := 0; {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,841 INFO L290 TraceCheckUtils]: 58: Hoare triple {39411#(< (mod ~r1~0 256) 3)} assume !(node3_~m3~0#1 != ~nomsg~0); {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,841 INFO L290 TraceCheckUtils]: 57: Hoare triple {39411#(< (mod ~r1~0 256) 3)} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,841 INFO L290 TraceCheckUtils]: 56: Hoare triple {39411#(< (mod ~r1~0 256) 3)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,842 INFO L290 TraceCheckUtils]: 55: Hoare triple {39411#(< (mod ~r1~0 256) 3)} ~mode2~0 := 0; {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,842 INFO L290 TraceCheckUtils]: 54: Hoare triple {39411#(< (mod ~r1~0 256) 3)} assume !(node2_~m2~0#1 != ~nomsg~0); {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,842 INFO L290 TraceCheckUtils]: 53: Hoare triple {39411#(< (mod ~r1~0 256) 3)} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,843 INFO L290 TraceCheckUtils]: 52: Hoare triple {39411#(< (mod ~r1~0 256) 3)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,843 INFO L290 TraceCheckUtils]: 51: Hoare triple {39411#(< (mod ~r1~0 256) 3)} ~mode1~0 := 0; {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,843 INFO L290 TraceCheckUtils]: 50: Hoare triple {39411#(< (mod ~r1~0 256) 3)} assume !(node1_~m1~0#1 != ~nomsg~0); {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,844 INFO L290 TraceCheckUtils]: 49: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} ~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {39411#(< (mod ~r1~0 256) 3)} is VALID [2022-02-20 18:27:06,844 INFO L290 TraceCheckUtils]: 48: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !(255 == ~r1~0 % 256); {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,845 INFO L290 TraceCheckUtils]: 47: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume 0 != ~mode1~0 % 256; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,845 INFO L290 TraceCheckUtils]: 46: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,845 INFO L290 TraceCheckUtils]: 45: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume { :end_inline_assert } true; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,846 INFO L290 TraceCheckUtils]: 44: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !(0 == assert_~arg#1 % 256); {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,846 INFO L290 TraceCheckUtils]: 43: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} main_#t~ret27#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret27#1 && main_#t~ret27#1 <= 2147483647;main_~c1~0#1 := main_#t~ret27#1;havoc main_#t~ret27#1;assume { :begin_inline_assert } true;assert_#in~arg#1 := (if 0 == main_~c1~0#1 then 0 else 1);havoc assert_~arg#1;assert_~arg#1 := assert_#in~arg#1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,846 INFO L290 TraceCheckUtils]: 42: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} check_#res#1 := check_~tmp~1#1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,847 INFO L290 TraceCheckUtils]: 41: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,847 INFO L290 TraceCheckUtils]: 40: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,847 INFO L290 TraceCheckUtils]: 39: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume { :end_inline_node3 } true;~p1_old~0 := ~p1_new~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~p2_new~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~p3_new~0;~p3_new~0 := ~nomsg~0;assume { :begin_inline_check } true;havoc check_#res#1;havoc check_~tmp~1#1;havoc check_~tmp~1#1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,848 INFO L290 TraceCheckUtils]: 38: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} ~mode3~0 := 1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,848 INFO L290 TraceCheckUtils]: 37: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !(~send3~0 != ~id3~0); {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,848 INFO L290 TraceCheckUtils]: 36: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !(0 != ~alive3~0 % 256); {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,849 INFO L290 TraceCheckUtils]: 35: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !(0 != ~mode3~0 % 256); {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,849 INFO L290 TraceCheckUtils]: 34: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite8#1, node3_#t~ite9#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,849 INFO L290 TraceCheckUtils]: 33: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} ~mode2~0 := 1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,849 INFO L290 TraceCheckUtils]: 32: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !(~send2~0 != ~id2~0); {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,850 INFO L290 TraceCheckUtils]: 31: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !(0 != ~alive2~0 % 256); {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,850 INFO L290 TraceCheckUtils]: 30: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !(0 != ~mode2~0 % 256); {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,850 INFO L290 TraceCheckUtils]: 29: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite6#1, node2_#t~ite7#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,851 INFO L290 TraceCheckUtils]: 28: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} ~mode1~0 := 1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,851 INFO L290 TraceCheckUtils]: 27: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} ~p1_new~0 := (if node1_#t~ite4#1 % 256 <= 127 then node1_#t~ite4#1 % 256 else node1_#t~ite4#1 % 256 - 256);havoc node1_#t~ite4#1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,851 INFO L290 TraceCheckUtils]: 26: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,851 INFO L290 TraceCheckUtils]: 25: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume 0 != ~alive1~0 % 256; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,852 INFO L290 TraceCheckUtils]: 24: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !(0 != ~mode1~0 % 256); {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,852 INFO L290 TraceCheckUtils]: 23: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_#t~ite5#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,852 INFO L290 TraceCheckUtils]: 22: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume { :end_inline_assume_abort_if_not } true;~p1_old~0 := ~nomsg~0;~p1_new~0 := ~nomsg~0;~p2_old~0 := ~nomsg~0;~p2_new~0 := ~nomsg~0;~p3_old~0 := ~nomsg~0;~p3_new~0 := ~nomsg~0;main_~i2~0#1 := 0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,853 INFO L290 TraceCheckUtils]: 21: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume !(0 == assume_abort_if_not_~cond#1); {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,853 INFO L290 TraceCheckUtils]: 20: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} main_#t~ret26#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret26#1 && main_#t~ret26#1 <= 2147483647;main_~i2~0#1 := main_#t~ret26#1;havoc main_#t~ret26#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := main_~i2~0#1;havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,853 INFO L290 TraceCheckUtils]: 19: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} init_#res#1 := init_~tmp~0#1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,853 INFO L290 TraceCheckUtils]: 18: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,854 INFO L290 TraceCheckUtils]: 17: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~id1~0 != ~id3~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,854 INFO L290 TraceCheckUtils]: 16: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~id1~0 != ~id2~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,854 INFO L290 TraceCheckUtils]: 15: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume 0 == ~mode3~0 % 256; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,855 INFO L290 TraceCheckUtils]: 14: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~send3~0 == ~id3~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,855 INFO L290 TraceCheckUtils]: 13: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume 0 == ~st3~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,855 INFO L290 TraceCheckUtils]: 12: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~id3~0 >= 0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,855 INFO L290 TraceCheckUtils]: 11: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume 0 == ~mode2~0 % 256; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,856 INFO L290 TraceCheckUtils]: 10: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~send2~0 == ~id2~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,856 INFO L290 TraceCheckUtils]: 9: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume 0 == ~st2~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,856 INFO L290 TraceCheckUtils]: 8: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~id2~0 >= 0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,856 INFO L290 TraceCheckUtils]: 7: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume 0 == ~mode1~0 % 256; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,857 INFO L290 TraceCheckUtils]: 6: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~send1~0 == ~id1~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,857 INFO L290 TraceCheckUtils]: 5: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume 0 == ~st1~0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,857 INFO L290 TraceCheckUtils]: 4: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~id1~0 >= 0; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,858 INFO L290 TraceCheckUtils]: 3: Hoare triple {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} assume ~alive1~0 % 256 + ~alive2~0 % 256 + ~alive3~0 % 256 >= 1; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,858 INFO L290 TraceCheckUtils]: 2: Hoare triple {39180#true} assume 0 == ~r1~0 % 256; {39451#(< (mod (+ (mod ~r1~0 256) 1) 256) 3)} is VALID [2022-02-20 18:27:06,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {39180#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~nondet12#1, main_#t~nondet13#1, main_#t~nondet14#1, main_#t~nondet15#1, main_#t~nondet16#1, main_#t~nondet17#1, main_#t~nondet18#1, main_#t~nondet19#1, main_#t~nondet20#1, main_#t~nondet21#1, main_#t~nondet22#1, main_#t~nondet23#1, main_#t~nondet24#1, main_#t~nondet25#1, main_#t~ret26#1, main_#t~ret27#1, main_~c1~0#1, main_~i2~0#1;havoc main_~c1~0#1;havoc main_~i2~0#1;main_~c1~0#1 := 0;~r1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -128 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 127;~id1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~st1~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~send1~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;~mode1~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~alive1~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id2~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st2~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send2~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode2~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;~alive2~0 := main_#t~nondet20#1;havoc main_#t~nondet20#1;assume -128 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 127;~id3~0 := main_#t~nondet21#1;havoc main_#t~nondet21#1;assume -128 <= main_#t~nondet22#1 && main_#t~nondet22#1 <= 127;~st3~0 := main_#t~nondet22#1;havoc main_#t~nondet22#1;assume -128 <= main_#t~nondet23#1 && main_#t~nondet23#1 <= 127;~send3~0 := main_#t~nondet23#1;havoc main_#t~nondet23#1;~mode3~0 := main_#t~nondet24#1;havoc main_#t~nondet24#1;~alive3~0 := main_#t~nondet25#1;havoc main_#t~nondet25#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {39180#true} is VALID [2022-02-20 18:27:06,859 INFO L290 TraceCheckUtils]: 0: Hoare triple {39180#true} assume { :begin_inline_ULTIMATE.init } 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(49, 2);call #Ultimate.allocInit(12, 3);~nomsg~0 := -1;~r1~0 := 0;~p1~0 := 0;~p1_old~0 := 0;~p1_new~0 := 0;~id1~0 := 0;~st1~0 := 0;~send1~0 := 0;~mode1~0 := 0;~alive1~0 := 0;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~0 := 0;~alive2~0 := 0;~p3~0 := 0;~p3_old~0 := 0;~p3_new~0 := 0;~id3~0 := 0;~st3~0 := 0;~send3~0 := 0;~mode3~0 := 0;~alive3~0 := 0; {39180#true} is VALID [2022-02-20 18:27:06,859 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 7 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 18:27:06,859 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [42326295] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 18:27:06,859 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 18:27:06,860 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 4, 4] total 14 [2022-02-20 18:27:06,860 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [393785131] [2022-02-20 18:27:06,860 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 18:27:06,860 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 13.571428571428571) internal successors, (190), 14 states have internal predecessors, (190), 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) Word has length 68 [2022-02-20 18:27:06,861 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:27:06,861 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 13.571428571428571) internal successors, (190), 14 states have internal predecessors, (190), 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-02-20 18:27:06,976 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 190 edges. 190 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:27:06,976 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 18:27:06,976 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:27:06,977 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 18:27:06,977 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=153, Unknown=0, NotChecked=0, Total=182 [2022-02-20 18:27:06,977 INFO L87 Difference]: Start difference. First operand 2203 states and 3122 transitions. Second operand has 14 states, 14 states have (on average 13.571428571428571) internal successors, (190), 14 states have internal predecessors, (190), 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-02-20 18:27:51,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:27:51,227 INFO L93 Difference]: Finished difference Result 23583 states and 33190 transitions. [2022-02-20 18:27:51,227 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 65 states. [2022-02-20 18:27:51,227 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 13.571428571428571) internal successors, (190), 14 states have internal predecessors, (190), 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) Word has length 68 [2022-02-20 18:27:51,227 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:27:51,228 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 13.571428571428571) internal successors, (190), 14 states have internal predecessors, (190), 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-02-20 18:27:51,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 2160 transitions. [2022-02-20 18:27:51,235 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 13.571428571428571) internal successors, (190), 14 states have internal predecessors, (190), 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-02-20 18:27:51,242 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 2160 transitions. [2022-02-20 18:27:51,242 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 65 states and 2160 transitions. [2022-02-20 18:27:52,973 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2160 edges. 2160 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity.