./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/seq-mthreaded/pals_lcr.3_overflow.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.3_overflow.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 e5878b7d2af5fd4b66050c0dbed52215fb6ea8477622dc26391a98be7bc7f1ca --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 18:29:03,665 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 18:29:03,667 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 18:29:03,708 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 18:29:03,708 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 18:29:03,710 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 18:29:03,711 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 18:29:03,714 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 18:29:03,716 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 18:29:03,720 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 18:29:03,720 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 18:29:03,722 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 18:29:03,722 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 18:29:03,724 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 18:29:03,726 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 18:29:03,728 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 18:29:03,728 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 18:29:03,729 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 18:29:03,730 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 18:29:03,735 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 18:29:03,736 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 18:29:03,737 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 18:29:03,739 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 18:29:03,740 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 18:29:03,747 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 18:29:03,748 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 18:29:03,748 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 18:29:03,749 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 18:29:03,750 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 18:29:03,750 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 18:29:03,751 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 18:29:03,752 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 18:29:03,753 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 18:29:03,754 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 18:29:03,755 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 18:29:03,755 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 18:29:03,756 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 18:29:03,756 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 18:29:03,756 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 18:29:03,757 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 18:29:03,758 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 18:29:03,758 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:29:03,788 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 18:29:03,789 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 18:29:03,789 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 18:29:03,790 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 18:29:03,790 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 18:29:03,791 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 18:29:03,791 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 18:29:03,791 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 18:29:03,792 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 18:29:03,792 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 18:29:03,793 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 18:29:03,793 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 18:29:03,793 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 18:29:03,793 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 18:29:03,793 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 18:29:03,794 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 18:29:03,794 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 18:29:03,794 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 18:29:03,794 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 18:29:03,794 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 18:29:03,795 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 18:29:03,795 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 18:29:03,795 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 18:29:03,795 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 18:29:03,795 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 18:29:03,796 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 18:29:03,796 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 18:29:03,797 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 18:29:03,797 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 18:29:03,797 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 18:29:03,798 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 18:29:03,798 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 18:29:03,798 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 18:29:03,798 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 -> e5878b7d2af5fd4b66050c0dbed52215fb6ea8477622dc26391a98be7bc7f1ca [2022-02-20 18:29:04,027 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 18:29:04,046 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 18:29:04,048 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 18:29:04,049 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 18:29:04,050 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 18:29:04,051 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/seq-mthreaded/pals_lcr.3_overflow.ufo.UNBOUNDED.pals.c [2022-02-20 18:29:04,118 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e7e126b18/020c7408a2c049a0918f4c45b2274569/FLAGfb8883c5d [2022-02-20 18:29:04,589 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 18:29:04,589 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/seq-mthreaded/pals_lcr.3_overflow.ufo.UNBOUNDED.pals.c [2022-02-20 18:29:04,603 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e7e126b18/020c7408a2c049a0918f4c45b2274569/FLAGfb8883c5d [2022-02-20 18:29:05,108 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e7e126b18/020c7408a2c049a0918f4c45b2274569 [2022-02-20 18:29:05,110 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 18:29:05,112 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 18:29:05,115 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 18:29:05,116 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 18:29:05,118 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 18:29:05,120 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 06:29:05" (1/1) ... [2022-02-20 18:29:05,121 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@9fb33a8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05, skipping insertion in model container [2022-02-20 18:29:05,121 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 06:29:05" (1/1) ... [2022-02-20 18:29:05,127 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 18:29:05,160 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 18:29:05,329 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.3_overflow.ufo.UNBOUNDED.pals.c[6117,6130] [2022-02-20 18:29:05,332 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 18:29:05,340 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 18:29:05,371 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.3_overflow.ufo.UNBOUNDED.pals.c[6117,6130] [2022-02-20 18:29:05,372 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 18:29:05,384 INFO L208 MainTranslator]: Completed translation [2022-02-20 18:29:05,385 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05 WrapperNode [2022-02-20 18:29:05,385 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 18:29:05,386 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 18:29:05,386 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 18:29:05,387 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 18:29:05,392 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:29:05" (1/1) ... [2022-02-20 18:29:05,400 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:29:05" (1/1) ... [2022-02-20 18:29:05,424 INFO L137 Inliner]: procedures = 23, calls = 14, calls flagged for inlining = 9, calls inlined = 9, statements flattened = 217 [2022-02-20 18:29:05,425 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 18:29:05,425 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 18:29:05,426 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 18:29:05,426 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 18:29:05,432 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05" (1/1) ... [2022-02-20 18:29:05,432 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05" (1/1) ... [2022-02-20 18:29:05,434 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05" (1/1) ... [2022-02-20 18:29:05,434 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05" (1/1) ... [2022-02-20 18:29:05,438 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05" (1/1) ... [2022-02-20 18:29:05,442 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05" (1/1) ... [2022-02-20 18:29:05,444 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05" (1/1) ... [2022-02-20 18:29:05,446 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 18:29:05,447 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 18:29:05,447 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 18:29:05,447 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 18:29:05,448 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05" (1/1) ... [2022-02-20 18:29:05,466 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 18:29:05,476 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 18:29:05,492 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:29:05,519 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:29:05,534 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 18:29:05,534 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 18:29:05,535 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 18:29:05,535 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 18:29:05,622 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 18:29:05,624 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 18:29:06,046 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 18:29:06,052 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 18:29:06,052 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-02-20 18:29:06,054 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 06:29:06 BoogieIcfgContainer [2022-02-20 18:29:06,054 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 18:29:06,055 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 18:29:06,055 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 18:29:06,060 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 18:29:06,060 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 06:29:05" (1/3) ... [2022-02-20 18:29:06,061 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68a38813 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 06:29:06, skipping insertion in model container [2022-02-20 18:29:06,061 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 06:29:05" (2/3) ... [2022-02-20 18:29:06,061 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68a38813 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 06:29:06, skipping insertion in model container [2022-02-20 18:29:06,062 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 06:29:06" (3/3) ... [2022-02-20 18:29:06,063 INFO L111 eAbstractionObserver]: Analyzing ICFG pals_lcr.3_overflow.ufo.UNBOUNDED.pals.c [2022-02-20 18:29:06,067 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 18:29:06,067 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 18:29:06,121 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 18:29:06,136 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:29:06,136 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 18:29:06,153 INFO L276 IsEmpty]: Start isEmpty. Operand has 62 states, 60 states have (on average 1.6833333333333333) internal successors, (101), 61 states have internal predecessors, (101), 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:29:06,159 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 18:29:06,159 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:06,160 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] [2022-02-20 18:29:06,161 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:06,166 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:06,167 INFO L85 PathProgramCache]: Analyzing trace with hash 1133243219, now seen corresponding path program 1 times [2022-02-20 18:29:06,175 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:06,176 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1853313171] [2022-02-20 18:29:06,176 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:06,177 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:06,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:06,451 INFO L290 TraceCheckUtils]: 0: Hoare triple {65#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {65#true} is VALID [2022-02-20 18:29:06,452 INFO L290 TraceCheckUtils]: 1: Hoare triple {65#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {65#true} is VALID [2022-02-20 18:29:06,453 INFO L290 TraceCheckUtils]: 2: Hoare triple {65#true} assume !(0 == ~r1~0 % 256);init_~tmp~0#1 := 0; {65#true} is VALID [2022-02-20 18:29:06,454 INFO L290 TraceCheckUtils]: 3: Hoare triple {65#true} init_#res#1 := init_~tmp~0#1; {65#true} is VALID [2022-02-20 18:29:06,454 INFO L290 TraceCheckUtils]: 4: Hoare triple {65#true} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {65#true} is VALID [2022-02-20 18:29:06,455 INFO L290 TraceCheckUtils]: 5: Hoare triple {65#true} assume 0 == assume_abort_if_not_~cond#1;assume false; {66#false} is VALID [2022-02-20 18:29:06,456 INFO L290 TraceCheckUtils]: 6: Hoare triple {66#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; {66#false} is VALID [2022-02-20 18:29:06,456 INFO L290 TraceCheckUtils]: 7: Hoare triple {66#false} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {66#false} is VALID [2022-02-20 18:29:06,456 INFO L290 TraceCheckUtils]: 8: Hoare triple {66#false} assume 0 != ~mode1~0 % 256;~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {66#false} is VALID [2022-02-20 18:29:06,456 INFO L290 TraceCheckUtils]: 9: Hoare triple {66#false} assume !(node1_~m1~0#1 != ~nomsg~0); {66#false} is VALID [2022-02-20 18:29:06,457 INFO L290 TraceCheckUtils]: 10: Hoare triple {66#false} ~mode1~0 := 0; {66#false} is VALID [2022-02-20 18:29:06,457 INFO L290 TraceCheckUtils]: 11: Hoare triple {66#false} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {66#false} is VALID [2022-02-20 18:29:06,457 INFO L290 TraceCheckUtils]: 12: Hoare triple {66#false} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {66#false} is VALID [2022-02-20 18:29:06,458 INFO L290 TraceCheckUtils]: 13: Hoare triple {66#false} assume !(node2_~m2~0#1 != ~nomsg~0); {66#false} is VALID [2022-02-20 18:29:06,458 INFO L290 TraceCheckUtils]: 14: Hoare triple {66#false} ~mode2~0 := 0; {66#false} is VALID [2022-02-20 18:29:06,458 INFO L290 TraceCheckUtils]: 15: Hoare triple {66#false} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {66#false} is VALID [2022-02-20 18:29:06,459 INFO L290 TraceCheckUtils]: 16: Hoare triple {66#false} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {66#false} is VALID [2022-02-20 18:29:06,459 INFO L290 TraceCheckUtils]: 17: Hoare triple {66#false} assume !(node3_~m3~0#1 != ~nomsg~0); {66#false} is VALID [2022-02-20 18:29:06,460 INFO L290 TraceCheckUtils]: 18: Hoare triple {66#false} ~mode3~0 := 0; {66#false} is VALID [2022-02-20 18:29:06,461 INFO L290 TraceCheckUtils]: 19: Hoare triple {66#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; {66#false} is VALID [2022-02-20 18:29:06,461 INFO L290 TraceCheckUtils]: 20: Hoare triple {66#false} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {66#false} is VALID [2022-02-20 18:29:06,462 INFO L290 TraceCheckUtils]: 21: Hoare triple {66#false} check_#res#1 := check_~tmp~1#1; {66#false} is VALID [2022-02-20 18:29:06,462 INFO L290 TraceCheckUtils]: 22: Hoare triple {66#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {66#false} is VALID [2022-02-20 18:29:06,463 INFO L290 TraceCheckUtils]: 23: Hoare triple {66#false} assume 0 == assert_~arg#1 % 256; {66#false} is VALID [2022-02-20 18:29:06,463 INFO L290 TraceCheckUtils]: 24: Hoare triple {66#false} assume !false; {66#false} is VALID [2022-02-20 18:29:06,464 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:29:06,465 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:06,465 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1853313171] [2022-02-20 18:29:06,466 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1853313171] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:06,466 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:06,466 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 18:29:06,469 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1870625969] [2022-02-20 18:29:06,469 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:06,474 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 12.5) internal successors, (25), 2 states have internal predecessors, (25), 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 25 [2022-02-20 18:29:06,476 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:06,479 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 12.5) internal successors, (25), 2 states have internal predecessors, (25), 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:29:06,521 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:06,521 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 18:29:06,522 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:06,542 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 18:29:06,544 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 18:29:06,548 INFO L87 Difference]: Start difference. First operand has 62 states, 60 states have (on average 1.6833333333333333) internal successors, (101), 61 states have internal predecessors, (101), 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 2 states, 2 states have (on average 12.5) internal successors, (25), 2 states have internal predecessors, (25), 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:29:06,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:06,644 INFO L93 Difference]: Finished difference Result 99 states and 161 transitions. [2022-02-20 18:29:06,644 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 18:29:06,645 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 12.5) internal successors, (25), 2 states have internal predecessors, (25), 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 25 [2022-02-20 18:29:06,645 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:06,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 12.5) internal successors, (25), 2 states have internal predecessors, (25), 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:29:06,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 161 transitions. [2022-02-20 18:29:06,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 12.5) internal successors, (25), 2 states have internal predecessors, (25), 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:29:06,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 161 transitions. [2022-02-20 18:29:06,661 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 161 transitions. [2022-02-20 18:29:06,807 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:06,828 INFO L225 Difference]: With dead ends: 99 [2022-02-20 18:29:06,829 INFO L226 Difference]: Without dead ends: 58 [2022-02-20 18:29:06,831 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 18:29:06,836 INFO L933 BasicCegarLoop]: 94 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:29:06,837 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 94 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:06,851 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2022-02-20 18:29:06,865 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 58. [2022-02-20 18:29:06,865 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:06,867 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand has 58 states, 57 states have (on average 1.6491228070175439) internal successors, (94), 57 states have internal predecessors, (94), 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:29:06,869 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand has 58 states, 57 states have (on average 1.6491228070175439) internal successors, (94), 57 states have internal predecessors, (94), 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:29:06,871 INFO L87 Difference]: Start difference. First operand 58 states. Second operand has 58 states, 57 states have (on average 1.6491228070175439) internal successors, (94), 57 states have internal predecessors, (94), 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:29:06,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:06,880 INFO L93 Difference]: Finished difference Result 58 states and 94 transitions. [2022-02-20 18:29:06,880 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 94 transitions. [2022-02-20 18:29:06,881 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:06,881 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:06,882 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 57 states have (on average 1.6491228070175439) internal successors, (94), 57 states have internal predecessors, (94), 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 58 states. [2022-02-20 18:29:06,883 INFO L87 Difference]: Start difference. First operand has 58 states, 57 states have (on average 1.6491228070175439) internal successors, (94), 57 states have internal predecessors, (94), 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 58 states. [2022-02-20 18:29:06,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:06,888 INFO L93 Difference]: Finished difference Result 58 states and 94 transitions. [2022-02-20 18:29:06,888 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 94 transitions. [2022-02-20 18:29:06,889 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:06,889 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:06,889 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:06,890 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:06,890 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 57 states have (on average 1.6491228070175439) internal successors, (94), 57 states have internal predecessors, (94), 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:29:06,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 94 transitions. [2022-02-20 18:29:06,901 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 94 transitions. Word has length 25 [2022-02-20 18:29:06,901 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:06,901 INFO L470 AbstractCegarLoop]: Abstraction has 58 states and 94 transitions. [2022-02-20 18:29:06,902 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 12.5) internal successors, (25), 2 states have internal predecessors, (25), 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:29:06,902 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 94 transitions. [2022-02-20 18:29:06,904 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 18:29:06,904 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:06,905 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] [2022-02-20 18:29:06,905 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 18:29:06,909 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:06,910 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:06,911 INFO L85 PathProgramCache]: Analyzing trace with hash 315594769, now seen corresponding path program 1 times [2022-02-20 18:29:06,911 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:06,911 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1916042197] [2022-02-20 18:29:06,911 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:06,911 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:06,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:07,013 INFO L290 TraceCheckUtils]: 0: Hoare triple {363#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {363#true} is VALID [2022-02-20 18:29:07,013 INFO L290 TraceCheckUtils]: 1: Hoare triple {363#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {363#true} is VALID [2022-02-20 18:29:07,014 INFO L290 TraceCheckUtils]: 2: Hoare triple {363#true} assume !(0 == ~r1~0 % 256);init_~tmp~0#1 := 0; {365#(= |ULTIMATE.start_init_~tmp~0#1| 0)} is VALID [2022-02-20 18:29:07,015 INFO L290 TraceCheckUtils]: 3: Hoare triple {365#(= |ULTIMATE.start_init_~tmp~0#1| 0)} init_#res#1 := init_~tmp~0#1; {366#(= |ULTIMATE.start_init_#res#1| 0)} is VALID [2022-02-20 18:29:07,015 INFO L290 TraceCheckUtils]: 4: Hoare triple {366#(= |ULTIMATE.start_init_#res#1| 0)} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {367#(= |ULTIMATE.start_assume_abort_if_not_~cond#1| 0)} is VALID [2022-02-20 18:29:07,020 INFO L290 TraceCheckUtils]: 5: Hoare triple {367#(= |ULTIMATE.start_assume_abort_if_not_~cond#1| 0)} assume !(0 == assume_abort_if_not_~cond#1); {364#false} is VALID [2022-02-20 18:29:07,020 INFO L290 TraceCheckUtils]: 6: Hoare triple {364#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; {364#false} is VALID [2022-02-20 18:29:07,021 INFO L290 TraceCheckUtils]: 7: Hoare triple {364#false} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {364#false} is VALID [2022-02-20 18:29:07,021 INFO L290 TraceCheckUtils]: 8: Hoare triple {364#false} assume 0 != ~mode1~0 % 256;~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {364#false} is VALID [2022-02-20 18:29:07,021 INFO L290 TraceCheckUtils]: 9: Hoare triple {364#false} assume !(node1_~m1~0#1 != ~nomsg~0); {364#false} is VALID [2022-02-20 18:29:07,021 INFO L290 TraceCheckUtils]: 10: Hoare triple {364#false} ~mode1~0 := 0; {364#false} is VALID [2022-02-20 18:29:07,021 INFO L290 TraceCheckUtils]: 11: Hoare triple {364#false} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {364#false} is VALID [2022-02-20 18:29:07,022 INFO L290 TraceCheckUtils]: 12: Hoare triple {364#false} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {364#false} is VALID [2022-02-20 18:29:07,022 INFO L290 TraceCheckUtils]: 13: Hoare triple {364#false} assume !(node2_~m2~0#1 != ~nomsg~0); {364#false} is VALID [2022-02-20 18:29:07,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {364#false} ~mode2~0 := 0; {364#false} is VALID [2022-02-20 18:29:07,022 INFO L290 TraceCheckUtils]: 15: Hoare triple {364#false} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {364#false} is VALID [2022-02-20 18:29:07,023 INFO L290 TraceCheckUtils]: 16: Hoare triple {364#false} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {364#false} is VALID [2022-02-20 18:29:07,023 INFO L290 TraceCheckUtils]: 17: Hoare triple {364#false} assume !(node3_~m3~0#1 != ~nomsg~0); {364#false} is VALID [2022-02-20 18:29:07,023 INFO L290 TraceCheckUtils]: 18: Hoare triple {364#false} ~mode3~0 := 0; {364#false} is VALID [2022-02-20 18:29:07,024 INFO L290 TraceCheckUtils]: 19: Hoare triple {364#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; {364#false} is VALID [2022-02-20 18:29:07,024 INFO L290 TraceCheckUtils]: 20: Hoare triple {364#false} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {364#false} is VALID [2022-02-20 18:29:07,024 INFO L290 TraceCheckUtils]: 21: Hoare triple {364#false} check_#res#1 := check_~tmp~1#1; {364#false} is VALID [2022-02-20 18:29:07,025 INFO L290 TraceCheckUtils]: 22: Hoare triple {364#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {364#false} is VALID [2022-02-20 18:29:07,025 INFO L290 TraceCheckUtils]: 23: Hoare triple {364#false} assume 0 == assert_~arg#1 % 256; {364#false} is VALID [2022-02-20 18:29:07,029 INFO L290 TraceCheckUtils]: 24: Hoare triple {364#false} assume !false; {364#false} is VALID [2022-02-20 18:29:07,029 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:29:07,030 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:07,030 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1916042197] [2022-02-20 18:29:07,030 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1916042197] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:07,031 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:07,031 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:29:07,031 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1838466305] [2022-02-20 18:29:07,031 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:07,033 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 25 [2022-02-20 18:29:07,033 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:07,033 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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:29:07,055 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:07,055 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:29:07,057 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:07,057 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:29:07,058 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:29:07,058 INFO L87 Difference]: Start difference. First operand 58 states and 94 transitions. Second operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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:29:07,315 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:07,315 INFO L93 Difference]: Finished difference Result 98 states and 154 transitions. [2022-02-20 18:29:07,316 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 18:29:07,316 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 25 [2022-02-20 18:29:07,316 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:07,316 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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:29:07,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 154 transitions. [2022-02-20 18:29:07,318 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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:29:07,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 154 transitions. [2022-02-20 18:29:07,320 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 154 transitions. [2022-02-20 18:29:07,483 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 154 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:07,484 INFO L225 Difference]: With dead ends: 98 [2022-02-20 18:29:07,485 INFO L226 Difference]: Without dead ends: 58 [2022-02-20 18:29:07,485 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:29:07,486 INFO L933 BasicCegarLoop]: 92 mSDtfsCounter, 3 mSDsluCounter, 257 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 349 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:29:07,487 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [3 Valid, 349 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:07,488 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2022-02-20 18:29:07,491 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 58. [2022-02-20 18:29:07,491 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:07,491 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand has 58 states, 57 states have (on average 1.368421052631579) internal successors, (78), 57 states have internal predecessors, (78), 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:29:07,492 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand has 58 states, 57 states have (on average 1.368421052631579) internal successors, (78), 57 states have internal predecessors, (78), 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:29:07,492 INFO L87 Difference]: Start difference. First operand 58 states. Second operand has 58 states, 57 states have (on average 1.368421052631579) internal successors, (78), 57 states have internal predecessors, (78), 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:29:07,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:07,494 INFO L93 Difference]: Finished difference Result 58 states and 78 transitions. [2022-02-20 18:29:07,494 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 78 transitions. [2022-02-20 18:29:07,494 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:07,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:07,495 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 57 states have (on average 1.368421052631579) internal successors, (78), 57 states have internal predecessors, (78), 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 58 states. [2022-02-20 18:29:07,495 INFO L87 Difference]: Start difference. First operand has 58 states, 57 states have (on average 1.368421052631579) internal successors, (78), 57 states have internal predecessors, (78), 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 58 states. [2022-02-20 18:29:07,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:07,497 INFO L93 Difference]: Finished difference Result 58 states and 78 transitions. [2022-02-20 18:29:07,497 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 78 transitions. [2022-02-20 18:29:07,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:07,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:07,498 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:07,498 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:07,498 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 57 states have (on average 1.368421052631579) internal successors, (78), 57 states have internal predecessors, (78), 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:29:07,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 78 transitions. [2022-02-20 18:29:07,500 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 78 transitions. Word has length 25 [2022-02-20 18:29:07,500 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:07,500 INFO L470 AbstractCegarLoop]: Abstraction has 58 states and 78 transitions. [2022-02-20 18:29:07,500 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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:29:07,500 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 78 transitions. [2022-02-20 18:29:07,501 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-02-20 18:29:07,501 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:07,501 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] [2022-02-20 18:29:07,502 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 18:29:07,502 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:07,502 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:07,502 INFO L85 PathProgramCache]: Analyzing trace with hash -278543826, now seen corresponding path program 1 times [2022-02-20 18:29:07,503 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:07,503 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1144845982] [2022-02-20 18:29:07,503 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:07,503 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:07,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:07,609 INFO L290 TraceCheckUtils]: 0: Hoare triple {667#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {667#true} is VALID [2022-02-20 18:29:07,609 INFO L290 TraceCheckUtils]: 1: Hoare triple {667#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {667#true} is VALID [2022-02-20 18:29:07,609 INFO L290 TraceCheckUtils]: 2: Hoare triple {667#true} assume 0 == ~r1~0 % 256; {667#true} is VALID [2022-02-20 18:29:07,610 INFO L290 TraceCheckUtils]: 3: Hoare triple {667#true} assume ~id1~0 >= 0; {667#true} is VALID [2022-02-20 18:29:07,610 INFO L290 TraceCheckUtils]: 4: Hoare triple {667#true} assume 0 == ~st1~0; {667#true} is VALID [2022-02-20 18:29:07,610 INFO L290 TraceCheckUtils]: 5: Hoare triple {667#true} assume ~send1~0 == ~id1~0; {667#true} is VALID [2022-02-20 18:29:07,611 INFO L290 TraceCheckUtils]: 6: Hoare triple {667#true} assume 0 == ~mode1~0 % 256; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,612 INFO L290 TraceCheckUtils]: 7: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~id2~0 >= 0; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,612 INFO L290 TraceCheckUtils]: 8: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume 0 == ~st2~0; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,613 INFO L290 TraceCheckUtils]: 9: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~send2~0 == ~id2~0; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,613 INFO L290 TraceCheckUtils]: 10: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume 0 == ~mode2~0 % 256; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,614 INFO L290 TraceCheckUtils]: 11: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~id3~0 >= 0; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,615 INFO L290 TraceCheckUtils]: 12: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume 0 == ~st3~0; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,615 INFO L290 TraceCheckUtils]: 13: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~send3~0 == ~id3~0; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,616 INFO L290 TraceCheckUtils]: 14: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume 0 == ~mode3~0 % 256; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,616 INFO L290 TraceCheckUtils]: 15: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~id1~0 != ~id2~0; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,617 INFO L290 TraceCheckUtils]: 16: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~id1~0 != ~id3~0; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,617 INFO L290 TraceCheckUtils]: 17: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,618 INFO L290 TraceCheckUtils]: 18: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} init_#res#1 := init_~tmp~0#1; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,626 INFO L290 TraceCheckUtils]: 19: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,626 INFO L290 TraceCheckUtils]: 20: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,627 INFO L290 TraceCheckUtils]: 21: Hoare triple {669#(= (+ (* (- 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; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,628 INFO L290 TraceCheckUtils]: 22: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} is VALID [2022-02-20 18:29:07,629 INFO L290 TraceCheckUtils]: 23: Hoare triple {669#(= (+ (* (- 256) (div ~mode1~0 256)) ~mode1~0) 0)} assume 0 != ~mode1~0 % 256;~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {668#false} is VALID [2022-02-20 18:29:07,629 INFO L290 TraceCheckUtils]: 24: Hoare triple {668#false} assume !(node1_~m1~0#1 != ~nomsg~0); {668#false} is VALID [2022-02-20 18:29:07,629 INFO L290 TraceCheckUtils]: 25: Hoare triple {668#false} ~mode1~0 := 0; {668#false} is VALID [2022-02-20 18:29:07,629 INFO L290 TraceCheckUtils]: 26: Hoare triple {668#false} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {668#false} is VALID [2022-02-20 18:29:07,630 INFO L290 TraceCheckUtils]: 27: Hoare triple {668#false} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {668#false} is VALID [2022-02-20 18:29:07,630 INFO L290 TraceCheckUtils]: 28: Hoare triple {668#false} assume !(node2_~m2~0#1 != ~nomsg~0); {668#false} is VALID [2022-02-20 18:29:07,630 INFO L290 TraceCheckUtils]: 29: Hoare triple {668#false} ~mode2~0 := 0; {668#false} is VALID [2022-02-20 18:29:07,630 INFO L290 TraceCheckUtils]: 30: Hoare triple {668#false} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {668#false} is VALID [2022-02-20 18:29:07,630 INFO L290 TraceCheckUtils]: 31: Hoare triple {668#false} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {668#false} is VALID [2022-02-20 18:29:07,631 INFO L290 TraceCheckUtils]: 32: Hoare triple {668#false} assume !(node3_~m3~0#1 != ~nomsg~0); {668#false} is VALID [2022-02-20 18:29:07,631 INFO L290 TraceCheckUtils]: 33: Hoare triple {668#false} ~mode3~0 := 0; {668#false} is VALID [2022-02-20 18:29:07,631 INFO L290 TraceCheckUtils]: 34: Hoare triple {668#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; {668#false} is VALID [2022-02-20 18:29:07,631 INFO L290 TraceCheckUtils]: 35: Hoare triple {668#false} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {668#false} is VALID [2022-02-20 18:29:07,632 INFO L290 TraceCheckUtils]: 36: Hoare triple {668#false} check_#res#1 := check_~tmp~1#1; {668#false} is VALID [2022-02-20 18:29:07,632 INFO L290 TraceCheckUtils]: 37: Hoare triple {668#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {668#false} is VALID [2022-02-20 18:29:07,632 INFO L290 TraceCheckUtils]: 38: Hoare triple {668#false} assume 0 == assert_~arg#1 % 256; {668#false} is VALID [2022-02-20 18:29:07,632 INFO L290 TraceCheckUtils]: 39: Hoare triple {668#false} assume !false; {668#false} is VALID [2022-02-20 18:29:07,633 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:29:07,633 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:07,634 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1144845982] [2022-02-20 18:29:07,634 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1144845982] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:07,634 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:07,634 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 18:29:07,634 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [711007439] [2022-02-20 18:29:07,635 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:07,635 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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 40 [2022-02-20 18:29:07,635 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:07,636 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:07,677 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:07,678 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 18:29:07,678 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:07,679 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 18:29:07,679 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 18:29:07,679 INFO L87 Difference]: Start difference. First operand 58 states and 78 transitions. Second operand has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:07,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:07,844 INFO L93 Difference]: Finished difference Result 124 states and 180 transitions. [2022-02-20 18:29:07,844 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 18:29:07,845 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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 40 [2022-02-20 18:29:07,845 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:07,845 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:07,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 180 transitions. [2022-02-20 18:29:07,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:07,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 180 transitions. [2022-02-20 18:29:07,850 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 180 transitions. [2022-02-20 18:29:08,011 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 180 edges. 180 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:08,013 INFO L225 Difference]: With dead ends: 124 [2022-02-20 18:29:08,014 INFO L226 Difference]: Without dead ends: 88 [2022-02-20 18:29:08,014 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:29:08,015 INFO L933 BasicCegarLoop]: 120 mSDtfsCounter, 46 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 4 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 174 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:29:08,016 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 174 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 4 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:08,017 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 88 states. [2022-02-20 18:29:08,023 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 88 to 86. [2022-02-20 18:29:08,023 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:08,023 INFO L82 GeneralOperation]: Start isEquivalent. First operand 88 states. Second operand has 86 states, 85 states have (on average 1.4352941176470588) internal successors, (122), 85 states have internal predecessors, (122), 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:29:08,024 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand has 86 states, 85 states have (on average 1.4352941176470588) internal successors, (122), 85 states have internal predecessors, (122), 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:29:08,024 INFO L87 Difference]: Start difference. First operand 88 states. Second operand has 86 states, 85 states have (on average 1.4352941176470588) internal successors, (122), 85 states have internal predecessors, (122), 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:29:08,027 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:08,027 INFO L93 Difference]: Finished difference Result 88 states and 123 transitions. [2022-02-20 18:29:08,027 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 123 transitions. [2022-02-20 18:29:08,027 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:08,028 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:08,028 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 85 states have (on average 1.4352941176470588) internal successors, (122), 85 states have internal predecessors, (122), 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 88 states. [2022-02-20 18:29:08,028 INFO L87 Difference]: Start difference. First operand has 86 states, 85 states have (on average 1.4352941176470588) internal successors, (122), 85 states have internal predecessors, (122), 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 88 states. [2022-02-20 18:29:08,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:08,031 INFO L93 Difference]: Finished difference Result 88 states and 123 transitions. [2022-02-20 18:29:08,031 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 123 transitions. [2022-02-20 18:29:08,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:08,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:08,032 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:08,032 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:08,033 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 85 states have (on average 1.4352941176470588) internal successors, (122), 85 states have internal predecessors, (122), 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:29:08,035 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 122 transitions. [2022-02-20 18:29:08,035 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 122 transitions. Word has length 40 [2022-02-20 18:29:08,036 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:08,036 INFO L470 AbstractCegarLoop]: Abstraction has 86 states and 122 transitions. [2022-02-20 18:29:08,036 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,036 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 122 transitions. [2022-02-20 18:29:08,037 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-02-20 18:29:08,037 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:08,037 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] [2022-02-20 18:29:08,038 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 18:29:08,038 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:08,038 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:08,038 INFO L85 PathProgramCache]: Analyzing trace with hash 1401070434, now seen corresponding path program 1 times [2022-02-20 18:29:08,039 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:08,039 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2062490865] [2022-02-20 18:29:08,039 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:08,039 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:08,073 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:08,131 INFO L290 TraceCheckUtils]: 0: Hoare triple {1090#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {1090#true} is VALID [2022-02-20 18:29:08,131 INFO L290 TraceCheckUtils]: 1: Hoare triple {1090#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {1090#true} is VALID [2022-02-20 18:29:08,132 INFO L290 TraceCheckUtils]: 2: Hoare triple {1090#true} assume 0 == ~r1~0 % 256; {1090#true} is VALID [2022-02-20 18:29:08,132 INFO L290 TraceCheckUtils]: 3: Hoare triple {1090#true} assume ~id1~0 >= 0; {1090#true} is VALID [2022-02-20 18:29:08,132 INFO L290 TraceCheckUtils]: 4: Hoare triple {1090#true} assume 0 == ~st1~0; {1090#true} is VALID [2022-02-20 18:29:08,132 INFO L290 TraceCheckUtils]: 5: Hoare triple {1090#true} assume ~send1~0 == ~id1~0; {1090#true} is VALID [2022-02-20 18:29:08,133 INFO L290 TraceCheckUtils]: 6: Hoare triple {1090#true} assume 0 == ~mode1~0 % 256; {1090#true} is VALID [2022-02-20 18:29:08,133 INFO L290 TraceCheckUtils]: 7: Hoare triple {1090#true} assume ~id2~0 >= 0; {1090#true} is VALID [2022-02-20 18:29:08,134 INFO L290 TraceCheckUtils]: 8: Hoare triple {1090#true} assume 0 == ~st2~0; {1090#true} is VALID [2022-02-20 18:29:08,134 INFO L290 TraceCheckUtils]: 9: Hoare triple {1090#true} assume ~send2~0 == ~id2~0; {1090#true} is VALID [2022-02-20 18:29:08,135 INFO L290 TraceCheckUtils]: 10: Hoare triple {1090#true} assume 0 == ~mode2~0 % 256; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,135 INFO L290 TraceCheckUtils]: 11: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume ~id3~0 >= 0; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,136 INFO L290 TraceCheckUtils]: 12: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume 0 == ~st3~0; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,136 INFO L290 TraceCheckUtils]: 13: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume ~send3~0 == ~id3~0; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,139 INFO L290 TraceCheckUtils]: 14: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume 0 == ~mode3~0 % 256; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,139 INFO L290 TraceCheckUtils]: 15: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume ~id1~0 != ~id2~0; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,140 INFO L290 TraceCheckUtils]: 16: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume ~id1~0 != ~id3~0; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,141 INFO L290 TraceCheckUtils]: 17: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,142 INFO L290 TraceCheckUtils]: 18: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} init_#res#1 := init_~tmp~0#1; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,143 INFO L290 TraceCheckUtils]: 19: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,143 INFO L290 TraceCheckUtils]: 20: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,145 INFO L290 TraceCheckUtils]: 21: Hoare triple {1092#(= (+ (* (- 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; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,146 INFO L290 TraceCheckUtils]: 22: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,154 INFO L290 TraceCheckUtils]: 23: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume !(0 != ~mode1~0 % 256); {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,155 INFO L290 TraceCheckUtils]: 24: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume !(~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0);node1_#t~ite4#1 := ~p1_new~0; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,156 INFO L290 TraceCheckUtils]: 25: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 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;~mode1~0 := 1; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,158 INFO L290 TraceCheckUtils]: 26: Hoare triple {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {1092#(= (+ (* (- 256) (div ~mode2~0 256)) ~mode2~0) 0)} is VALID [2022-02-20 18:29:08,159 INFO L290 TraceCheckUtils]: 27: Hoare triple {1092#(= (+ (* (- 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; {1091#false} is VALID [2022-02-20 18:29:08,160 INFO L290 TraceCheckUtils]: 28: Hoare triple {1091#false} assume !(node2_~m2~0#1 != ~nomsg~0); {1091#false} is VALID [2022-02-20 18:29:08,160 INFO L290 TraceCheckUtils]: 29: Hoare triple {1091#false} ~mode2~0 := 0; {1091#false} is VALID [2022-02-20 18:29:08,160 INFO L290 TraceCheckUtils]: 30: Hoare triple {1091#false} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {1091#false} is VALID [2022-02-20 18:29:08,160 INFO L290 TraceCheckUtils]: 31: Hoare triple {1091#false} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {1091#false} is VALID [2022-02-20 18:29:08,160 INFO L290 TraceCheckUtils]: 32: Hoare triple {1091#false} assume !(node3_~m3~0#1 != ~nomsg~0); {1091#false} is VALID [2022-02-20 18:29:08,161 INFO L290 TraceCheckUtils]: 33: Hoare triple {1091#false} ~mode3~0 := 0; {1091#false} is VALID [2022-02-20 18:29:08,161 INFO L290 TraceCheckUtils]: 34: Hoare triple {1091#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; {1091#false} is VALID [2022-02-20 18:29:08,161 INFO L290 TraceCheckUtils]: 35: Hoare triple {1091#false} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {1091#false} is VALID [2022-02-20 18:29:08,164 INFO L290 TraceCheckUtils]: 36: Hoare triple {1091#false} check_#res#1 := check_~tmp~1#1; {1091#false} is VALID [2022-02-20 18:29:08,164 INFO L290 TraceCheckUtils]: 37: Hoare triple {1091#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {1091#false} is VALID [2022-02-20 18:29:08,164 INFO L290 TraceCheckUtils]: 38: Hoare triple {1091#false} assume 0 == assert_~arg#1 % 256; {1091#false} is VALID [2022-02-20 18:29:08,165 INFO L290 TraceCheckUtils]: 39: Hoare triple {1091#false} assume !false; {1091#false} is VALID [2022-02-20 18:29:08,165 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:29:08,165 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:08,165 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2062490865] [2022-02-20 18:29:08,166 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2062490865] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:08,166 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:08,166 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 18:29:08,166 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1969197761] [2022-02-20 18:29:08,166 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:08,167 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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 40 [2022-02-20 18:29:08,169 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:08,169 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,201 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:08,201 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 18:29:08,202 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:08,203 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 18:29:08,207 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 18:29:08,207 INFO L87 Difference]: Start difference. First operand 86 states and 122 transitions. Second operand has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:08,331 INFO L93 Difference]: Finished difference Result 202 states and 302 transitions. [2022-02-20 18:29:08,331 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 18:29:08,331 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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 40 [2022-02-20 18:29:08,331 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:08,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 180 transitions. [2022-02-20 18:29:08,334 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 180 transitions. [2022-02-20 18:29:08,336 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 180 transitions. [2022-02-20 18:29:08,467 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 180 edges. 180 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:08,470 INFO L225 Difference]: With dead ends: 202 [2022-02-20 18:29:08,470 INFO L226 Difference]: Without dead ends: 138 [2022-02-20 18:29:08,471 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:29:08,472 INFO L933 BasicCegarLoop]: 115 mSDtfsCounter, 42 mSDsluCounter, 58 mSDsCounter, 0 mSdLazyCounter, 4 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 173 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:29:08,472 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 173 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 4 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:08,473 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 138 states. [2022-02-20 18:29:08,481 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 138 to 136. [2022-02-20 18:29:08,481 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:08,482 INFO L82 GeneralOperation]: Start isEquivalent. First operand 138 states. Second operand has 136 states, 135 states have (on average 1.474074074074074) internal successors, (199), 135 states have internal predecessors, (199), 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:29:08,482 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand has 136 states, 135 states have (on average 1.474074074074074) internal successors, (199), 135 states have internal predecessors, (199), 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:29:08,483 INFO L87 Difference]: Start difference. First operand 138 states. Second operand has 136 states, 135 states have (on average 1.474074074074074) internal successors, (199), 135 states have internal predecessors, (199), 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:29:08,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:08,487 INFO L93 Difference]: Finished difference Result 138 states and 200 transitions. [2022-02-20 18:29:08,487 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 200 transitions. [2022-02-20 18:29:08,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:08,488 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:08,488 INFO L74 IsIncluded]: Start isIncluded. First operand has 136 states, 135 states have (on average 1.474074074074074) internal successors, (199), 135 states have internal predecessors, (199), 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 138 states. [2022-02-20 18:29:08,488 INFO L87 Difference]: Start difference. First operand has 136 states, 135 states have (on average 1.474074074074074) internal successors, (199), 135 states have internal predecessors, (199), 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 138 states. [2022-02-20 18:29:08,493 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:08,493 INFO L93 Difference]: Finished difference Result 138 states and 200 transitions. [2022-02-20 18:29:08,493 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 200 transitions. [2022-02-20 18:29:08,494 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:08,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:08,494 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:08,494 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:08,495 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 136 states, 135 states have (on average 1.474074074074074) internal successors, (199), 135 states have internal predecessors, (199), 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:29:08,498 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 136 states to 136 states and 199 transitions. [2022-02-20 18:29:08,499 INFO L78 Accepts]: Start accepts. Automaton has 136 states and 199 transitions. Word has length 40 [2022-02-20 18:29:08,499 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:08,499 INFO L470 AbstractCegarLoop]: Abstraction has 136 states and 199 transitions. [2022-02-20 18:29:08,499 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,499 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 199 transitions. [2022-02-20 18:29:08,500 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-02-20 18:29:08,500 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:08,500 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] [2022-02-20 18:29:08,501 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 18:29:08,501 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:08,501 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:08,501 INFO L85 PathProgramCache]: Analyzing trace with hash 1738863576, now seen corresponding path program 1 times [2022-02-20 18:29:08,502 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:08,502 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [606197760] [2022-02-20 18:29:08,502 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:08,502 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:08,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:08,559 INFO L290 TraceCheckUtils]: 0: Hoare triple {1771#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {1771#true} is VALID [2022-02-20 18:29:08,559 INFO L290 TraceCheckUtils]: 1: Hoare triple {1771#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {1771#true} is VALID [2022-02-20 18:29:08,560 INFO L290 TraceCheckUtils]: 2: Hoare triple {1771#true} assume 0 == ~r1~0 % 256; {1771#true} is VALID [2022-02-20 18:29:08,560 INFO L290 TraceCheckUtils]: 3: Hoare triple {1771#true} assume ~id1~0 >= 0; {1771#true} is VALID [2022-02-20 18:29:08,560 INFO L290 TraceCheckUtils]: 4: Hoare triple {1771#true} assume 0 == ~st1~0; {1771#true} is VALID [2022-02-20 18:29:08,560 INFO L290 TraceCheckUtils]: 5: Hoare triple {1771#true} assume ~send1~0 == ~id1~0; {1771#true} is VALID [2022-02-20 18:29:08,560 INFO L290 TraceCheckUtils]: 6: Hoare triple {1771#true} assume 0 == ~mode1~0 % 256; {1771#true} is VALID [2022-02-20 18:29:08,561 INFO L290 TraceCheckUtils]: 7: Hoare triple {1771#true} assume ~id2~0 >= 0; {1771#true} is VALID [2022-02-20 18:29:08,561 INFO L290 TraceCheckUtils]: 8: Hoare triple {1771#true} assume 0 == ~st2~0; {1771#true} is VALID [2022-02-20 18:29:08,561 INFO L290 TraceCheckUtils]: 9: Hoare triple {1771#true} assume ~send2~0 == ~id2~0; {1771#true} is VALID [2022-02-20 18:29:08,561 INFO L290 TraceCheckUtils]: 10: Hoare triple {1771#true} assume 0 == ~mode2~0 % 256; {1771#true} is VALID [2022-02-20 18:29:08,561 INFO L290 TraceCheckUtils]: 11: Hoare triple {1771#true} assume ~id3~0 >= 0; {1771#true} is VALID [2022-02-20 18:29:08,561 INFO L290 TraceCheckUtils]: 12: Hoare triple {1771#true} assume 0 == ~st3~0; {1771#true} is VALID [2022-02-20 18:29:08,562 INFO L290 TraceCheckUtils]: 13: Hoare triple {1771#true} assume ~send3~0 == ~id3~0; {1771#true} is VALID [2022-02-20 18:29:08,562 INFO L290 TraceCheckUtils]: 14: Hoare triple {1771#true} assume 0 == ~mode3~0 % 256; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,563 INFO L290 TraceCheckUtils]: 15: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume ~id1~0 != ~id2~0; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,563 INFO L290 TraceCheckUtils]: 16: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume ~id1~0 != ~id3~0; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,564 INFO L290 TraceCheckUtils]: 17: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,564 INFO L290 TraceCheckUtils]: 18: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} init_#res#1 := init_~tmp~0#1; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,565 INFO L290 TraceCheckUtils]: 19: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,565 INFO L290 TraceCheckUtils]: 20: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,566 INFO L290 TraceCheckUtils]: 21: Hoare triple {1773#(= (+ (* (- 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; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,566 INFO L290 TraceCheckUtils]: 22: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,567 INFO L290 TraceCheckUtils]: 23: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(0 != ~mode1~0 % 256); {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,567 INFO L290 TraceCheckUtils]: 24: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0);node1_#t~ite4#1 := ~p1_new~0; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,568 INFO L290 TraceCheckUtils]: 25: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 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;~mode1~0 := 1; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,568 INFO L290 TraceCheckUtils]: 26: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,569 INFO L290 TraceCheckUtils]: 27: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume !(0 != ~mode2~0 % 256); {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,570 INFO L290 TraceCheckUtils]: 28: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,570 INFO L290 TraceCheckUtils]: 29: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,571 INFO L290 TraceCheckUtils]: 30: Hoare triple {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {1773#(= (+ (* (- 256) (div ~mode3~0 256)) ~mode3~0) 0)} is VALID [2022-02-20 18:29:08,571 INFO L290 TraceCheckUtils]: 31: Hoare triple {1773#(= (+ (* (- 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; {1772#false} is VALID [2022-02-20 18:29:08,571 INFO L290 TraceCheckUtils]: 32: Hoare triple {1772#false} assume !(node3_~m3~0#1 != ~nomsg~0); {1772#false} is VALID [2022-02-20 18:29:08,572 INFO L290 TraceCheckUtils]: 33: Hoare triple {1772#false} ~mode3~0 := 0; {1772#false} is VALID [2022-02-20 18:29:08,572 INFO L290 TraceCheckUtils]: 34: Hoare triple {1772#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; {1772#false} is VALID [2022-02-20 18:29:08,572 INFO L290 TraceCheckUtils]: 35: Hoare triple {1772#false} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {1772#false} is VALID [2022-02-20 18:29:08,572 INFO L290 TraceCheckUtils]: 36: Hoare triple {1772#false} check_#res#1 := check_~tmp~1#1; {1772#false} is VALID [2022-02-20 18:29:08,572 INFO L290 TraceCheckUtils]: 37: Hoare triple {1772#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {1772#false} is VALID [2022-02-20 18:29:08,573 INFO L290 TraceCheckUtils]: 38: Hoare triple {1772#false} assume 0 == assert_~arg#1 % 256; {1772#false} is VALID [2022-02-20 18:29:08,573 INFO L290 TraceCheckUtils]: 39: Hoare triple {1772#false} assume !false; {1772#false} is VALID [2022-02-20 18:29:08,573 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:29:08,573 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:08,574 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [606197760] [2022-02-20 18:29:08,574 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [606197760] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:08,574 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:08,574 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 18:29:08,574 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [222894680] [2022-02-20 18:29:08,574 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:08,575 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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 40 [2022-02-20 18:29:08,575 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:08,575 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,606 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:08,606 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 18:29:08,606 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:08,607 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 18:29:08,607 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 18:29:08,607 INFO L87 Difference]: Start difference. First operand 136 states and 199 transitions. Second operand has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:08,728 INFO L93 Difference]: Finished difference Result 340 states and 513 transitions. [2022-02-20 18:29:08,728 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 18:29:08,729 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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 40 [2022-02-20 18:29:08,729 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:08,729 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 180 transitions. [2022-02-20 18:29:08,731 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 180 transitions. [2022-02-20 18:29:08,733 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 180 transitions. [2022-02-20 18:29:08,888 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 180 edges. 180 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:08,893 INFO L225 Difference]: With dead ends: 340 [2022-02-20 18:29:08,893 INFO L226 Difference]: Without dead ends: 226 [2022-02-20 18:29:08,894 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:29:08,895 INFO L933 BasicCegarLoop]: 110 mSDtfsCounter, 38 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 4 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 38 SdHoareTripleChecker+Valid, 172 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:29:08,895 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [38 Valid, 172 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 4 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:08,896 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 226 states. [2022-02-20 18:29:08,910 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 226 to 224. [2022-02-20 18:29:08,913 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:08,915 INFO L82 GeneralOperation]: Start isEquivalent. First operand 226 states. Second operand has 224 states, 223 states have (on average 1.484304932735426) internal successors, (331), 223 states have internal predecessors, (331), 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:29:08,916 INFO L74 IsIncluded]: Start isIncluded. First operand 226 states. Second operand has 224 states, 223 states have (on average 1.484304932735426) internal successors, (331), 223 states have internal predecessors, (331), 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:29:08,917 INFO L87 Difference]: Start difference. First operand 226 states. Second operand has 224 states, 223 states have (on average 1.484304932735426) internal successors, (331), 223 states have internal predecessors, (331), 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:29:08,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:08,926 INFO L93 Difference]: Finished difference Result 226 states and 332 transitions. [2022-02-20 18:29:08,926 INFO L276 IsEmpty]: Start isEmpty. Operand 226 states and 332 transitions. [2022-02-20 18:29:08,926 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:08,927 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:08,927 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 223 states have (on average 1.484304932735426) internal successors, (331), 223 states have internal predecessors, (331), 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 226 states. [2022-02-20 18:29:08,928 INFO L87 Difference]: Start difference. First operand has 224 states, 223 states have (on average 1.484304932735426) internal successors, (331), 223 states have internal predecessors, (331), 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 226 states. [2022-02-20 18:29:08,935 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:08,935 INFO L93 Difference]: Finished difference Result 226 states and 332 transitions. [2022-02-20 18:29:08,935 INFO L276 IsEmpty]: Start isEmpty. Operand 226 states and 332 transitions. [2022-02-20 18:29:08,935 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:08,935 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:08,936 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:08,936 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:08,936 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 223 states have (on average 1.484304932735426) internal successors, (331), 223 states have internal predecessors, (331), 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:29:08,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 331 transitions. [2022-02-20 18:29:08,944 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 331 transitions. Word has length 40 [2022-02-20 18:29:08,944 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:08,944 INFO L470 AbstractCegarLoop]: Abstraction has 224 states and 331 transitions. [2022-02-20 18:29:08,944 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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:29:08,945 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 331 transitions. [2022-02-20 18:29:08,945 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-02-20 18:29:08,945 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:08,945 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] [2022-02-20 18:29:08,945 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 18:29:08,945 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:08,946 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:08,946 INFO L85 PathProgramCache]: Analyzing trace with hash -1338118322, now seen corresponding path program 1 times [2022-02-20 18:29:08,947 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:08,947 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [460815107] [2022-02-20 18:29:08,947 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:08,947 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:08,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:09,016 INFO L290 TraceCheckUtils]: 0: Hoare triple {2914#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {2914#true} is VALID [2022-02-20 18:29:09,017 INFO L290 TraceCheckUtils]: 1: Hoare triple {2914#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {2914#true} is VALID [2022-02-20 18:29:09,017 INFO L290 TraceCheckUtils]: 2: Hoare triple {2914#true} assume 0 == ~r1~0 % 256; {2914#true} is VALID [2022-02-20 18:29:09,017 INFO L290 TraceCheckUtils]: 3: Hoare triple {2914#true} assume ~id1~0 >= 0; {2914#true} is VALID [2022-02-20 18:29:09,017 INFO L290 TraceCheckUtils]: 4: Hoare triple {2914#true} assume 0 == ~st1~0; {2916#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:09,018 INFO L290 TraceCheckUtils]: 5: Hoare triple {2916#(<= ~st1~0 0)} assume ~send1~0 == ~id1~0; {2916#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:09,018 INFO L290 TraceCheckUtils]: 6: Hoare triple {2916#(<= ~st1~0 0)} assume 0 == ~mode1~0 % 256; {2916#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:09,018 INFO L290 TraceCheckUtils]: 7: Hoare triple {2916#(<= ~st1~0 0)} assume ~id2~0 >= 0; {2916#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:09,019 INFO L290 TraceCheckUtils]: 8: Hoare triple {2916#(<= ~st1~0 0)} assume 0 == ~st2~0; {2917#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,019 INFO L290 TraceCheckUtils]: 9: Hoare triple {2917#(<= (+ ~st2~0 ~st1~0) 0)} assume ~send2~0 == ~id2~0; {2917#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,020 INFO L290 TraceCheckUtils]: 10: Hoare triple {2917#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 == ~mode2~0 % 256; {2917#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,020 INFO L290 TraceCheckUtils]: 11: Hoare triple {2917#(<= (+ ~st2~0 ~st1~0) 0)} assume ~id3~0 >= 0; {2917#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,020 INFO L290 TraceCheckUtils]: 12: Hoare triple {2917#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 == ~st3~0; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,021 INFO L290 TraceCheckUtils]: 13: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume ~send3~0 == ~id3~0; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,021 INFO L290 TraceCheckUtils]: 14: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume 0 == ~mode3~0 % 256; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,021 INFO L290 TraceCheckUtils]: 15: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume ~id1~0 != ~id2~0; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,022 INFO L290 TraceCheckUtils]: 16: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume ~id1~0 != ~id3~0; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,022 INFO L290 TraceCheckUtils]: 17: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,022 INFO L290 TraceCheckUtils]: 18: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} init_#res#1 := init_~tmp~0#1; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,023 INFO L290 TraceCheckUtils]: 19: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,023 INFO L290 TraceCheckUtils]: 20: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,023 INFO L290 TraceCheckUtils]: 21: Hoare triple {2918#(<= (+ ~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; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,024 INFO L290 TraceCheckUtils]: 22: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,024 INFO L290 TraceCheckUtils]: 23: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 != ~mode1~0 % 256); {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,024 INFO L290 TraceCheckUtils]: 24: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0);node1_#t~ite4#1 := ~p1_new~0; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,025 INFO L290 TraceCheckUtils]: 25: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 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;~mode1~0 := 1; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,025 INFO L290 TraceCheckUtils]: 26: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,025 INFO L290 TraceCheckUtils]: 27: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 != ~mode2~0 % 256); {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,026 INFO L290 TraceCheckUtils]: 28: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,026 INFO L290 TraceCheckUtils]: 29: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,026 INFO L290 TraceCheckUtils]: 30: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,027 INFO L290 TraceCheckUtils]: 31: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(0 != ~mode3~0 % 256); {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,027 INFO L290 TraceCheckUtils]: 32: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,028 INFO L290 TraceCheckUtils]: 33: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,028 INFO L290 TraceCheckUtils]: 34: Hoare triple {2918#(<= (+ ~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; {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:09,028 INFO L290 TraceCheckUtils]: 35: Hoare triple {2918#(<= (+ ~st3~0 ~st2~0 ~st1~0) 0)} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {2915#false} is VALID [2022-02-20 18:29:09,029 INFO L290 TraceCheckUtils]: 36: Hoare triple {2915#false} check_#res#1 := check_~tmp~1#1; {2915#false} is VALID [2022-02-20 18:29:09,029 INFO L290 TraceCheckUtils]: 37: Hoare triple {2915#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {2915#false} is VALID [2022-02-20 18:29:09,029 INFO L290 TraceCheckUtils]: 38: Hoare triple {2915#false} assume 0 == assert_~arg#1 % 256; {2915#false} is VALID [2022-02-20 18:29:09,029 INFO L290 TraceCheckUtils]: 39: Hoare triple {2915#false} assume !false; {2915#false} is VALID [2022-02-20 18:29:09,029 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:29:09,029 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:09,030 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [460815107] [2022-02-20 18:29:09,030 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [460815107] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:09,030 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:09,030 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:29:09,030 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [175595897] [2022-02-20 18:29:09,030 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:09,031 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 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 40 [2022-02-20 18:29:09,031 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:09,031 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 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:29:09,058 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:09,058 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:29:09,058 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:09,059 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:29:09,059 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:29:09,059 INFO L87 Difference]: Start difference. First operand 224 states and 331 transitions. Second operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 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:29:09,847 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:09,847 INFO L93 Difference]: Finished difference Result 1436 states and 2185 transitions. [2022-02-20 18:29:09,847 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 18:29:09,847 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 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 40 [2022-02-20 18:29:09,848 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:09,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 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:29:09,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 414 transitions. [2022-02-20 18:29:09,853 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 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:29:09,856 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 414 transitions. [2022-02-20 18:29:09,856 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 414 transitions. [2022-02-20 18:29:10,174 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 414 edges. 414 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:10,256 INFO L225 Difference]: With dead ends: 1436 [2022-02-20 18:29:10,257 INFO L226 Difference]: Without dead ends: 1234 [2022-02-20 18:29:10,257 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 18:29:10,258 INFO L933 BasicCegarLoop]: 72 mSDtfsCounter, 385 mSDsluCounter, 299 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 385 SdHoareTripleChecker+Valid, 371 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:29:10,259 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [385 Valid, 371 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:10,260 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1234 states. [2022-02-20 18:29:10,405 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1234 to 424. [2022-02-20 18:29:10,405 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:10,406 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1234 states. Second operand has 424 states, 423 states have (on average 1.4728132387706856) internal successors, (623), 423 states have internal predecessors, (623), 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:29:10,407 INFO L74 IsIncluded]: Start isIncluded. First operand 1234 states. Second operand has 424 states, 423 states have (on average 1.4728132387706856) internal successors, (623), 423 states have internal predecessors, (623), 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:29:10,408 INFO L87 Difference]: Start difference. First operand 1234 states. Second operand has 424 states, 423 states have (on average 1.4728132387706856) internal successors, (623), 423 states have internal predecessors, (623), 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:29:10,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:10,479 INFO L93 Difference]: Finished difference Result 1234 states and 1828 transitions. [2022-02-20 18:29:10,479 INFO L276 IsEmpty]: Start isEmpty. Operand 1234 states and 1828 transitions. [2022-02-20 18:29:10,481 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:10,481 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:10,482 INFO L74 IsIncluded]: Start isIncluded. First operand has 424 states, 423 states have (on average 1.4728132387706856) internal successors, (623), 423 states have internal predecessors, (623), 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 1234 states. [2022-02-20 18:29:10,483 INFO L87 Difference]: Start difference. First operand has 424 states, 423 states have (on average 1.4728132387706856) internal successors, (623), 423 states have internal predecessors, (623), 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 1234 states. [2022-02-20 18:29:10,553 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:10,554 INFO L93 Difference]: Finished difference Result 1234 states and 1828 transitions. [2022-02-20 18:29:10,554 INFO L276 IsEmpty]: Start isEmpty. Operand 1234 states and 1828 transitions. [2022-02-20 18:29:10,556 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:10,556 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:10,556 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:10,556 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:10,557 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 424 states, 423 states have (on average 1.4728132387706856) internal successors, (623), 423 states have internal predecessors, (623), 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:29:10,569 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 424 states to 424 states and 623 transitions. [2022-02-20 18:29:10,570 INFO L78 Accepts]: Start accepts. Automaton has 424 states and 623 transitions. Word has length 40 [2022-02-20 18:29:10,570 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:10,570 INFO L470 AbstractCegarLoop]: Abstraction has 424 states and 623 transitions. [2022-02-20 18:29:10,570 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 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:29:10,570 INFO L276 IsEmpty]: Start isEmpty. Operand 424 states and 623 transitions. [2022-02-20 18:29:10,571 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-02-20 18:29:10,571 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:10,571 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:29:10,571 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 18:29:10,572 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:10,572 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:10,572 INFO L85 PathProgramCache]: Analyzing trace with hash 1209274118, now seen corresponding path program 1 times [2022-02-20 18:29:10,572 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:10,573 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1478599355] [2022-02-20 18:29:10,573 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:10,573 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:10,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:10,697 INFO L290 TraceCheckUtils]: 0: Hoare triple {7690#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {7690#true} is VALID [2022-02-20 18:29:10,698 INFO L290 TraceCheckUtils]: 1: Hoare triple {7690#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {7690#true} is VALID [2022-02-20 18:29:10,698 INFO L290 TraceCheckUtils]: 2: Hoare triple {7690#true} assume 0 == ~r1~0 % 256; {7690#true} is VALID [2022-02-20 18:29:10,698 INFO L290 TraceCheckUtils]: 3: Hoare triple {7690#true} assume ~id1~0 >= 0; {7690#true} is VALID [2022-02-20 18:29:10,699 INFO L290 TraceCheckUtils]: 4: Hoare triple {7690#true} assume 0 == ~st1~0; {7692#(and (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 ~st1~0)) (or (<= ~st1~0 0) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0)))} is VALID [2022-02-20 18:29:10,699 INFO L290 TraceCheckUtils]: 5: Hoare triple {7692#(and (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 ~st1~0)) (or (<= ~st1~0 0) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0)))} assume ~send1~0 == ~id1~0; {7692#(and (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 ~st1~0)) (or (<= ~st1~0 0) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0)))} is VALID [2022-02-20 18:29:10,700 INFO L290 TraceCheckUtils]: 6: Hoare triple {7692#(and (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 ~st1~0)) (or (<= ~st1~0 0) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0)))} assume 0 == ~mode1~0 % 256; {7692#(and (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 ~st1~0)) (or (<= ~st1~0 0) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0)))} is VALID [2022-02-20 18:29:10,701 INFO L290 TraceCheckUtils]: 7: Hoare triple {7692#(and (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 ~st1~0)) (or (<= ~st1~0 0) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0)))} assume ~id2~0 >= 0; {7692#(and (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 ~st1~0)) (or (<= ~st1~0 0) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0)))} is VALID [2022-02-20 18:29:10,701 INFO L290 TraceCheckUtils]: 8: Hoare triple {7692#(and (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 ~st1~0)) (or (<= ~st1~0 0) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0)))} assume 0 == ~st2~0; {7693#(and (or (<= (+ ~st3~0 ~st2~0 ~st1~0) 0) (<= (+ ~st2~0 ~st1~0) 0)) (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 (+ ~st2~0 ~st1~0))))} is VALID [2022-02-20 18:29:10,702 INFO L290 TraceCheckUtils]: 9: Hoare triple {7693#(and (or (<= (+ ~st3~0 ~st2~0 ~st1~0) 0) (<= (+ ~st2~0 ~st1~0) 0)) (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 (+ ~st2~0 ~st1~0))))} assume ~send2~0 == ~id2~0; {7693#(and (or (<= (+ ~st3~0 ~st2~0 ~st1~0) 0) (<= (+ ~st2~0 ~st1~0) 0)) (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 (+ ~st2~0 ~st1~0))))} is VALID [2022-02-20 18:29:10,702 INFO L290 TraceCheckUtils]: 10: Hoare triple {7693#(and (or (<= (+ ~st3~0 ~st2~0 ~st1~0) 0) (<= (+ ~st2~0 ~st1~0) 0)) (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 (+ ~st2~0 ~st1~0))))} assume 0 == ~mode2~0 % 256; {7693#(and (or (<= (+ ~st3~0 ~st2~0 ~st1~0) 0) (<= (+ ~st2~0 ~st1~0) 0)) (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 (+ ~st2~0 ~st1~0))))} is VALID [2022-02-20 18:29:10,703 INFO L290 TraceCheckUtils]: 11: Hoare triple {7693#(and (or (<= (+ ~st3~0 ~st2~0 ~st1~0) 0) (<= (+ ~st2~0 ~st1~0) 0)) (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 (+ ~st2~0 ~st1~0))))} assume ~id3~0 >= 0; {7693#(and (or (<= (+ ~st3~0 ~st2~0 ~st1~0) 0) (<= (+ ~st2~0 ~st1~0) 0)) (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 (+ ~st2~0 ~st1~0))))} is VALID [2022-02-20 18:29:10,704 INFO L290 TraceCheckUtils]: 12: Hoare triple {7693#(and (or (<= (+ ~st3~0 ~st2~0 ~st1~0) 0) (<= (+ ~st2~0 ~st1~0) 0)) (or (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= 0 (+ ~st2~0 ~st1~0))))} assume 0 == ~st3~0; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,704 INFO L290 TraceCheckUtils]: 13: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume ~send3~0 == ~id3~0; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,704 INFO L290 TraceCheckUtils]: 14: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume 0 == ~mode3~0 % 256; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,705 INFO L290 TraceCheckUtils]: 15: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume ~id1~0 != ~id2~0; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,706 INFO L290 TraceCheckUtils]: 16: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume ~id1~0 != ~id3~0; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,706 INFO L290 TraceCheckUtils]: 17: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,707 INFO L290 TraceCheckUtils]: 18: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} init_#res#1 := init_~tmp~0#1; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,707 INFO L290 TraceCheckUtils]: 19: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,708 INFO L290 TraceCheckUtils]: 20: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume !(0 == assume_abort_if_not_~cond#1); {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,708 INFO L290 TraceCheckUtils]: 21: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~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; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,709 INFO L290 TraceCheckUtils]: 22: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,709 INFO L290 TraceCheckUtils]: 23: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume !(0 != ~mode1~0 % 256); {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,710 INFO L290 TraceCheckUtils]: 24: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume !(~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0);node1_#t~ite4#1 := ~p1_new~0; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,710 INFO L290 TraceCheckUtils]: 25: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 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;~mode1~0 := 1; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,711 INFO L290 TraceCheckUtils]: 26: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,716 INFO L290 TraceCheckUtils]: 27: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume !(0 != ~mode2~0 % 256); {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,717 INFO L290 TraceCheckUtils]: 28: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,717 INFO L290 TraceCheckUtils]: 29: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,718 INFO L290 TraceCheckUtils]: 30: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,723 INFO L290 TraceCheckUtils]: 31: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume !(0 != ~mode3~0 % 256); {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,725 INFO L290 TraceCheckUtils]: 32: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,726 INFO L290 TraceCheckUtils]: 33: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,727 INFO L290 TraceCheckUtils]: 34: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~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; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,728 INFO L290 TraceCheckUtils]: 35: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,728 INFO L290 TraceCheckUtils]: 36: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume !(~r1~0 % 256 >= 3); {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:10,730 INFO L290 TraceCheckUtils]: 37: Hoare triple {7694#(and (< 0 (+ ~st3~0 ~st2~0 ~st1~0 1)) (<= (+ ~st3~0 ~st2~0 ~st1~0) 0))} assume !(0 == ~st1~0 + ~st2~0 + ~st3~0);check_~tmp~1#1 := 0; {7691#false} is VALID [2022-02-20 18:29:10,730 INFO L290 TraceCheckUtils]: 38: Hoare triple {7691#false} check_#res#1 := check_~tmp~1#1; {7691#false} is VALID [2022-02-20 18:29:10,730 INFO L290 TraceCheckUtils]: 39: Hoare triple {7691#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {7691#false} is VALID [2022-02-20 18:29:10,730 INFO L290 TraceCheckUtils]: 40: Hoare triple {7691#false} assume 0 == assert_~arg#1 % 256; {7691#false} is VALID [2022-02-20 18:29:10,730 INFO L290 TraceCheckUtils]: 41: Hoare triple {7691#false} assume !false; {7691#false} is VALID [2022-02-20 18:29:10,731 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:29:10,731 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:10,731 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1478599355] [2022-02-20 18:29:10,732 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1478599355] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:10,732 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:10,732 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:29:10,732 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [104847963] [2022-02-20 18:29:10,732 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:10,733 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 8.4) internal successors, (42), 5 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:29:10,733 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:10,733 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 8.4) internal successors, (42), 5 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:29:10,772 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:29:10,773 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:29:10,773 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:10,773 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:29:10,774 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:29:10,774 INFO L87 Difference]: Start difference. First operand 424 states and 623 transitions. Second operand has 5 states, 5 states have (on average 8.4) internal successors, (42), 5 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:29:11,243 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:11,244 INFO L93 Difference]: Finished difference Result 828 states and 1225 transitions. [2022-02-20 18:29:11,244 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 18:29:11,244 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 8.4) internal successors, (42), 5 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:29:11,244 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:11,245 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.4) internal successors, (42), 5 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:29:11,246 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 188 transitions. [2022-02-20 18:29:11,246 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.4) internal successors, (42), 5 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:29:11,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 188 transitions. [2022-02-20 18:29:11,248 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 188 transitions. [2022-02-20 18:29:11,378 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 188 edges. 188 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:11,390 INFO L225 Difference]: With dead ends: 828 [2022-02-20 18:29:11,390 INFO L226 Difference]: Without dead ends: 426 [2022-02-20 18:29:11,391 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2022-02-20 18:29:11,391 INFO L933 BasicCegarLoop]: 73 mSDtfsCounter, 89 mSDsluCounter, 156 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 229 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:29:11,392 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [89 Valid, 229 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 35 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:11,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 426 states. [2022-02-20 18:29:11,535 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 426 to 424. [2022-02-20 18:29:11,535 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:11,536 INFO L82 GeneralOperation]: Start isEquivalent. First operand 426 states. Second operand has 424 states, 423 states have (on average 1.4539007092198581) internal successors, (615), 423 states have internal predecessors, (615), 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:29:11,537 INFO L74 IsIncluded]: Start isIncluded. First operand 426 states. Second operand has 424 states, 423 states have (on average 1.4539007092198581) internal successors, (615), 423 states have internal predecessors, (615), 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:29:11,538 INFO L87 Difference]: Start difference. First operand 426 states. Second operand has 424 states, 423 states have (on average 1.4539007092198581) internal successors, (615), 423 states have internal predecessors, (615), 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:29:11,549 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:11,550 INFO L93 Difference]: Finished difference Result 426 states and 616 transitions. [2022-02-20 18:29:11,550 INFO L276 IsEmpty]: Start isEmpty. Operand 426 states and 616 transitions. [2022-02-20 18:29:11,550 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:11,551 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:11,552 INFO L74 IsIncluded]: Start isIncluded. First operand has 424 states, 423 states have (on average 1.4539007092198581) internal successors, (615), 423 states have internal predecessors, (615), 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 426 states. [2022-02-20 18:29:11,552 INFO L87 Difference]: Start difference. First operand has 424 states, 423 states have (on average 1.4539007092198581) internal successors, (615), 423 states have internal predecessors, (615), 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 426 states. [2022-02-20 18:29:11,563 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:11,564 INFO L93 Difference]: Finished difference Result 426 states and 616 transitions. [2022-02-20 18:29:11,564 INFO L276 IsEmpty]: Start isEmpty. Operand 426 states and 616 transitions. [2022-02-20 18:29:11,565 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:11,565 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:11,565 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:11,565 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:11,566 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 424 states, 423 states have (on average 1.4539007092198581) internal successors, (615), 423 states have internal predecessors, (615), 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:29:11,578 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 424 states to 424 states and 615 transitions. [2022-02-20 18:29:11,578 INFO L78 Accepts]: Start accepts. Automaton has 424 states and 615 transitions. Word has length 42 [2022-02-20 18:29:11,578 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:11,579 INFO L470 AbstractCegarLoop]: Abstraction has 424 states and 615 transitions. [2022-02-20 18:29:11,579 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 8.4) internal successors, (42), 5 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:29:11,579 INFO L276 IsEmpty]: Start isEmpty. Operand 424 states and 615 transitions. [2022-02-20 18:29:11,579 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-02-20 18:29:11,579 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:11,580 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:29:11,580 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 18:29:11,580 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:11,580 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:11,581 INFO L85 PathProgramCache]: Analyzing trace with hash 1142780606, now seen corresponding path program 1 times [2022-02-20 18:29:11,581 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:11,581 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [759540483] [2022-02-20 18:29:11,581 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:11,581 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:11,626 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:11,681 INFO L290 TraceCheckUtils]: 0: Hoare triple {10093#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {10093#true} is VALID [2022-02-20 18:29:11,681 INFO L290 TraceCheckUtils]: 1: Hoare triple {10093#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {10093#true} is VALID [2022-02-20 18:29:11,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {10093#true} assume 0 == ~r1~0 % 256; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,682 INFO L290 TraceCheckUtils]: 3: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id1~0 >= 0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,683 INFO L290 TraceCheckUtils]: 4: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~st1~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,687 INFO L290 TraceCheckUtils]: 5: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~send1~0 == ~id1~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,687 INFO L290 TraceCheckUtils]: 6: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~mode1~0 % 256; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,688 INFO L290 TraceCheckUtils]: 7: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id2~0 >= 0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,688 INFO L290 TraceCheckUtils]: 8: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~st2~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,688 INFO L290 TraceCheckUtils]: 9: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~send2~0 == ~id2~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,689 INFO L290 TraceCheckUtils]: 10: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~mode2~0 % 256; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,689 INFO L290 TraceCheckUtils]: 11: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id3~0 >= 0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,690 INFO L290 TraceCheckUtils]: 12: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~st3~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,690 INFO L290 TraceCheckUtils]: 13: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~send3~0 == ~id3~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,690 INFO L290 TraceCheckUtils]: 14: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume 0 == ~mode3~0 % 256; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,691 INFO L290 TraceCheckUtils]: 15: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id1~0 != ~id2~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,691 INFO L290 TraceCheckUtils]: 16: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id1~0 != ~id3~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,692 INFO L290 TraceCheckUtils]: 17: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,692 INFO L290 TraceCheckUtils]: 18: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} init_#res#1 := init_~tmp~0#1; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,692 INFO L290 TraceCheckUtils]: 19: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,693 INFO L290 TraceCheckUtils]: 20: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(0 == assume_abort_if_not_~cond#1); {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,693 INFO L290 TraceCheckUtils]: 21: Hoare triple {10095#(<= ~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; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,695 INFO L290 TraceCheckUtils]: 22: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,695 INFO L290 TraceCheckUtils]: 23: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(0 != ~mode1~0 % 256); {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,696 INFO L290 TraceCheckUtils]: 24: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0);node1_#t~ite4#1 := ~p1_new~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,696 INFO L290 TraceCheckUtils]: 25: Hoare triple {10095#(<= ~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;~mode1~0 := 1; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,696 INFO L290 TraceCheckUtils]: 26: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,697 INFO L290 TraceCheckUtils]: 27: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(0 != ~mode2~0 % 256); {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,698 INFO L290 TraceCheckUtils]: 28: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,698 INFO L290 TraceCheckUtils]: 29: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,698 INFO L290 TraceCheckUtils]: 30: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,699 INFO L290 TraceCheckUtils]: 31: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume !(0 != ~mode3~0 % 256); {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,699 INFO L290 TraceCheckUtils]: 32: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,700 INFO L290 TraceCheckUtils]: 33: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,700 INFO L290 TraceCheckUtils]: 34: Hoare triple {10095#(<= ~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; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,700 INFO L290 TraceCheckUtils]: 35: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} is VALID [2022-02-20 18:29:11,701 INFO L290 TraceCheckUtils]: 36: Hoare triple {10095#(<= ~r1~0 (* (div ~r1~0 256) 256))} assume ~r1~0 % 256 >= 3; {10094#false} is VALID [2022-02-20 18:29:11,701 INFO L290 TraceCheckUtils]: 37: Hoare triple {10094#false} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {10094#false} is VALID [2022-02-20 18:29:11,701 INFO L290 TraceCheckUtils]: 38: Hoare triple {10094#false} check_#res#1 := check_~tmp~1#1; {10094#false} is VALID [2022-02-20 18:29:11,702 INFO L290 TraceCheckUtils]: 39: Hoare triple {10094#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {10094#false} is VALID [2022-02-20 18:29:11,702 INFO L290 TraceCheckUtils]: 40: Hoare triple {10094#false} assume 0 == assert_~arg#1 % 256; {10094#false} is VALID [2022-02-20 18:29:11,702 INFO L290 TraceCheckUtils]: 41: Hoare triple {10094#false} assume !false; {10094#false} is VALID [2022-02-20 18:29:11,702 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:29:11,704 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:11,704 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [759540483] [2022-02-20 18:29:11,704 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [759540483] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:11,704 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:11,704 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 18:29:11,705 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [728487292] [2022-02-20 18:29:11,705 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:11,705 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:29:11,706 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:11,707 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:29:11,736 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:29:11,736 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 18:29:11,736 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:11,737 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 18:29:11,737 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 18:29:11,737 INFO L87 Difference]: Start difference. First operand 424 states and 615 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:29:12,161 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:12,162 INFO L93 Difference]: Finished difference Result 1010 states and 1475 transitions. [2022-02-20 18:29:12,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 18:29:12,162 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:29:12,163 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:12,163 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:29:12,164 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 181 transitions. [2022-02-20 18:29:12,164 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:29:12,165 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 181 transitions. [2022-02-20 18:29:12,166 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 181 transitions. [2022-02-20 18:29:12,289 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 181 edges. 181 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:12,311 INFO L225 Difference]: With dead ends: 1010 [2022-02-20 18:29:12,311 INFO L226 Difference]: Without dead ends: 608 [2022-02-20 18:29:12,312 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:29:12,313 INFO L933 BasicCegarLoop]: 93 mSDtfsCounter, 30 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 144 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:29:12,313 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [30 Valid, 144 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:12,314 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 608 states. [2022-02-20 18:29:12,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 608 to 606. [2022-02-20 18:29:12,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:12,566 INFO L82 GeneralOperation]: Start isEquivalent. First operand 608 states. Second operand has 606 states, 605 states have (on average 1.4363636363636363) internal successors, (869), 605 states have internal predecessors, (869), 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:29:12,567 INFO L74 IsIncluded]: Start isIncluded. First operand 608 states. Second operand has 606 states, 605 states have (on average 1.4363636363636363) internal successors, (869), 605 states have internal predecessors, (869), 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:29:12,568 INFO L87 Difference]: Start difference. First operand 608 states. Second operand has 606 states, 605 states have (on average 1.4363636363636363) internal successors, (869), 605 states have internal predecessors, (869), 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:29:12,588 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:12,589 INFO L93 Difference]: Finished difference Result 608 states and 870 transitions. [2022-02-20 18:29:12,589 INFO L276 IsEmpty]: Start isEmpty. Operand 608 states and 870 transitions. [2022-02-20 18:29:12,590 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:12,590 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:12,593 INFO L74 IsIncluded]: Start isIncluded. First operand has 606 states, 605 states have (on average 1.4363636363636363) internal successors, (869), 605 states have internal predecessors, (869), 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 608 states. [2022-02-20 18:29:12,594 INFO L87 Difference]: Start difference. First operand has 606 states, 605 states have (on average 1.4363636363636363) internal successors, (869), 605 states have internal predecessors, (869), 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 608 states. [2022-02-20 18:29:12,612 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:12,613 INFO L93 Difference]: Finished difference Result 608 states and 870 transitions. [2022-02-20 18:29:12,613 INFO L276 IsEmpty]: Start isEmpty. Operand 608 states and 870 transitions. [2022-02-20 18:29:12,614 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:12,614 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:12,614 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:12,614 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:12,616 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 606 states, 605 states have (on average 1.4363636363636363) internal successors, (869), 605 states have internal predecessors, (869), 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:29:12,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 606 states to 606 states and 869 transitions. [2022-02-20 18:29:12,637 INFO L78 Accepts]: Start accepts. Automaton has 606 states and 869 transitions. Word has length 42 [2022-02-20 18:29:12,637 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:12,638 INFO L470 AbstractCegarLoop]: Abstraction has 606 states and 869 transitions. [2022-02-20 18:29:12,638 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:29:12,638 INFO L276 IsEmpty]: Start isEmpty. Operand 606 states and 869 transitions. [2022-02-20 18:29:12,638 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-02-20 18:29:12,638 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:12,639 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:29:12,639 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 18:29:12,641 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:12,641 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:12,641 INFO L85 PathProgramCache]: Analyzing trace with hash -1581931209, now seen corresponding path program 1 times [2022-02-20 18:29:12,641 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:12,642 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [74716576] [2022-02-20 18:29:12,642 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:12,642 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:12,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:12,731 INFO L290 TraceCheckUtils]: 0: Hoare triple {13310#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {13312#(<= (+ ~nomsg~0 1) 0)} is VALID [2022-02-20 18:29:12,732 INFO L290 TraceCheckUtils]: 1: Hoare triple {13312#(<= (+ ~nomsg~0 1) 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {13312#(<= (+ ~nomsg~0 1) 0)} is VALID [2022-02-20 18:29:12,732 INFO L290 TraceCheckUtils]: 2: Hoare triple {13312#(<= (+ ~nomsg~0 1) 0)} assume 0 == ~r1~0 % 256; {13312#(<= (+ ~nomsg~0 1) 0)} is VALID [2022-02-20 18:29:12,733 INFO L290 TraceCheckUtils]: 3: Hoare triple {13312#(<= (+ ~nomsg~0 1) 0)} assume ~id1~0 >= 0; {13313#(<= (+ ~nomsg~0 1) ~id1~0)} is VALID [2022-02-20 18:29:12,733 INFO L290 TraceCheckUtils]: 4: Hoare triple {13313#(<= (+ ~nomsg~0 1) ~id1~0)} assume 0 == ~st1~0; {13313#(<= (+ ~nomsg~0 1) ~id1~0)} is VALID [2022-02-20 18:29:12,733 INFO L290 TraceCheckUtils]: 5: Hoare triple {13313#(<= (+ ~nomsg~0 1) ~id1~0)} assume ~send1~0 == ~id1~0; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,734 INFO L290 TraceCheckUtils]: 6: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume 0 == ~mode1~0 % 256; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,734 INFO L290 TraceCheckUtils]: 7: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume ~id2~0 >= 0; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,735 INFO L290 TraceCheckUtils]: 8: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume 0 == ~st2~0; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,735 INFO L290 TraceCheckUtils]: 9: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume ~send2~0 == ~id2~0; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,735 INFO L290 TraceCheckUtils]: 10: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume 0 == ~mode2~0 % 256; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,737 INFO L290 TraceCheckUtils]: 11: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume ~id3~0 >= 0; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,737 INFO L290 TraceCheckUtils]: 12: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume 0 == ~st3~0; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,737 INFO L290 TraceCheckUtils]: 13: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume ~send3~0 == ~id3~0; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,738 INFO L290 TraceCheckUtils]: 14: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume 0 == ~mode3~0 % 256; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,738 INFO L290 TraceCheckUtils]: 15: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume ~id1~0 != ~id2~0; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,738 INFO L290 TraceCheckUtils]: 16: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume ~id1~0 != ~id3~0; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,739 INFO L290 TraceCheckUtils]: 17: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,739 INFO L290 TraceCheckUtils]: 18: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} init_#res#1 := init_~tmp~0#1; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,739 INFO L290 TraceCheckUtils]: 19: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,740 INFO L290 TraceCheckUtils]: 20: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~0)} assume !(0 == assume_abort_if_not_~cond#1); {13314#(<= (+ ~nomsg~0 1) ~send1~0)} is VALID [2022-02-20 18:29:12,740 INFO L290 TraceCheckUtils]: 21: Hoare triple {13314#(<= (+ ~nomsg~0 1) ~send1~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; {13315#(and (= (+ (* (- 1) ~p1_new~0) ~nomsg~0) 0) (<= (+ ~nomsg~0 1) ~send1~0))} is VALID [2022-02-20 18:29:12,741 INFO L290 TraceCheckUtils]: 22: Hoare triple {13315#(and (= (+ (* (- 1) ~p1_new~0) ~nomsg~0) 0) (<= (+ ~nomsg~0 1) ~send1~0))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {13315#(and (= (+ (* (- 1) ~p1_new~0) ~nomsg~0) 0) (<= (+ ~nomsg~0 1) ~send1~0))} is VALID [2022-02-20 18:29:12,741 INFO L290 TraceCheckUtils]: 23: Hoare triple {13315#(and (= (+ (* (- 1) ~p1_new~0) ~nomsg~0) 0) (<= (+ ~nomsg~0 1) ~send1~0))} assume !(0 != ~mode1~0 % 256); {13315#(and (= (+ (* (- 1) ~p1_new~0) ~nomsg~0) 0) (<= (+ ~nomsg~0 1) ~send1~0))} is VALID [2022-02-20 18:29:12,742 INFO L290 TraceCheckUtils]: 24: Hoare triple {13315#(and (= (+ (* (- 1) ~p1_new~0) ~nomsg~0) 0) (<= (+ ~nomsg~0 1) ~send1~0))} assume !(~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0);node1_#t~ite4#1 := ~p1_new~0; {13311#false} is VALID [2022-02-20 18:29:12,742 INFO L290 TraceCheckUtils]: 25: Hoare triple {13311#false} ~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;~mode1~0 := 1; {13311#false} is VALID [2022-02-20 18:29:12,742 INFO L290 TraceCheckUtils]: 26: Hoare triple {13311#false} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {13311#false} is VALID [2022-02-20 18:29:12,742 INFO L290 TraceCheckUtils]: 27: Hoare triple {13311#false} assume !(0 != ~mode2~0 % 256); {13311#false} is VALID [2022-02-20 18:29:12,742 INFO L290 TraceCheckUtils]: 28: Hoare triple {13311#false} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {13311#false} is VALID [2022-02-20 18:29:12,743 INFO L290 TraceCheckUtils]: 29: Hoare triple {13311#false} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {13311#false} is VALID [2022-02-20 18:29:12,743 INFO L290 TraceCheckUtils]: 30: Hoare triple {13311#false} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {13311#false} is VALID [2022-02-20 18:29:12,743 INFO L290 TraceCheckUtils]: 31: Hoare triple {13311#false} assume !(0 != ~mode3~0 % 256); {13311#false} is VALID [2022-02-20 18:29:12,743 INFO L290 TraceCheckUtils]: 32: Hoare triple {13311#false} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {13311#false} is VALID [2022-02-20 18:29:12,743 INFO L290 TraceCheckUtils]: 33: Hoare triple {13311#false} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {13311#false} is VALID [2022-02-20 18:29:12,743 INFO L290 TraceCheckUtils]: 34: Hoare triple {13311#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; {13311#false} is VALID [2022-02-20 18:29:12,744 INFO L290 TraceCheckUtils]: 35: Hoare triple {13311#false} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {13311#false} is VALID [2022-02-20 18:29:12,744 INFO L290 TraceCheckUtils]: 36: Hoare triple {13311#false} assume !(~r1~0 % 256 >= 3); {13311#false} is VALID [2022-02-20 18:29:12,744 INFO L290 TraceCheckUtils]: 37: Hoare triple {13311#false} assume 0 == ~st1~0 + ~st2~0 + ~st3~0; {13311#false} is VALID [2022-02-20 18:29:12,744 INFO L290 TraceCheckUtils]: 38: Hoare triple {13311#false} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {13311#false} is VALID [2022-02-20 18:29:12,744 INFO L290 TraceCheckUtils]: 39: Hoare triple {13311#false} check_#res#1 := check_~tmp~1#1; {13311#false} is VALID [2022-02-20 18:29:12,745 INFO L290 TraceCheckUtils]: 40: Hoare triple {13311#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {13311#false} is VALID [2022-02-20 18:29:12,745 INFO L290 TraceCheckUtils]: 41: Hoare triple {13311#false} assume 0 == assert_~arg#1 % 256; {13311#false} is VALID [2022-02-20 18:29:12,745 INFO L290 TraceCheckUtils]: 42: Hoare triple {13311#false} assume !false; {13311#false} is VALID [2022-02-20 18:29:12,745 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:29:12,745 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:12,746 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [74716576] [2022-02-20 18:29:12,746 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [74716576] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:12,746 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:12,746 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:29:12,746 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [596964476] [2022-02-20 18:29:12,746 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:12,747 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 7.166666666666667) internal successors, (43), 5 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:29:12,747 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:12,747 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 7.166666666666667) internal successors, (43), 5 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:29:12,775 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:29:12,775 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 18:29:12,775 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:12,776 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 18:29:12,776 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 18:29:12,776 INFO L87 Difference]: Start difference. First operand 606 states and 869 transitions. Second operand has 6 states, 6 states have (on average 7.166666666666667) internal successors, (43), 5 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:29:13,605 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:13,606 INFO L93 Difference]: Finished difference Result 1188 states and 1714 transitions. [2022-02-20 18:29:13,606 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 18:29:13,606 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 7.166666666666667) internal successors, (43), 5 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:29:13,606 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:13,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 7.166666666666667) internal successors, (43), 5 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:29:13,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 161 transitions. [2022-02-20 18:29:13,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 7.166666666666667) internal successors, (43), 5 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:29:13,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 161 transitions. [2022-02-20 18:29:13,609 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 161 transitions. [2022-02-20 18:29:13,745 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:13,772 INFO L225 Difference]: With dead ends: 1188 [2022-02-20 18:29:13,772 INFO L226 Difference]: Without dead ends: 606 [2022-02-20 18:29:13,773 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=44, Unknown=0, NotChecked=0, Total=72 [2022-02-20 18:29:13,775 INFO L933 BasicCegarLoop]: 55 mSDtfsCounter, 256 mSDsluCounter, 34 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 256 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 59 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 18:29:13,775 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [256 Valid, 89 Invalid, 59 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 53 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 18:29:13,777 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 606 states. [2022-02-20 18:29:14,236 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 606 to 606. [2022-02-20 18:29:14,236 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:14,238 INFO L82 GeneralOperation]: Start isEquivalent. First operand 606 states. Second operand has 606 states, 605 states have (on average 1.4099173553719009) internal successors, (853), 605 states have internal predecessors, (853), 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:29:14,239 INFO L74 IsIncluded]: Start isIncluded. First operand 606 states. Second operand has 606 states, 605 states have (on average 1.4099173553719009) internal successors, (853), 605 states have internal predecessors, (853), 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:29:14,240 INFO L87 Difference]: Start difference. First operand 606 states. Second operand has 606 states, 605 states have (on average 1.4099173553719009) internal successors, (853), 605 states have internal predecessors, (853), 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:29:14,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:14,258 INFO L93 Difference]: Finished difference Result 606 states and 853 transitions. [2022-02-20 18:29:14,259 INFO L276 IsEmpty]: Start isEmpty. Operand 606 states and 853 transitions. [2022-02-20 18:29:14,259 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:14,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:14,261 INFO L74 IsIncluded]: Start isIncluded. First operand has 606 states, 605 states have (on average 1.4099173553719009) internal successors, (853), 605 states have internal predecessors, (853), 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 606 states. [2022-02-20 18:29:14,262 INFO L87 Difference]: Start difference. First operand has 606 states, 605 states have (on average 1.4099173553719009) internal successors, (853), 605 states have internal predecessors, (853), 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 606 states. [2022-02-20 18:29:14,281 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:14,281 INFO L93 Difference]: Finished difference Result 606 states and 853 transitions. [2022-02-20 18:29:14,281 INFO L276 IsEmpty]: Start isEmpty. Operand 606 states and 853 transitions. [2022-02-20 18:29:14,282 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:14,282 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:14,282 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:14,283 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:14,284 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 606 states, 605 states have (on average 1.4099173553719009) internal successors, (853), 605 states have internal predecessors, (853), 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:29:14,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 606 states to 606 states and 853 transitions. [2022-02-20 18:29:14,305 INFO L78 Accepts]: Start accepts. Automaton has 606 states and 853 transitions. Word has length 43 [2022-02-20 18:29:14,306 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:14,306 INFO L470 AbstractCegarLoop]: Abstraction has 606 states and 853 transitions. [2022-02-20 18:29:14,306 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 7.166666666666667) internal successors, (43), 5 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:29:14,306 INFO L276 IsEmpty]: Start isEmpty. Operand 606 states and 853 transitions. [2022-02-20 18:29:14,307 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-02-20 18:29:14,307 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:14,307 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:29:14,307 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 18:29:14,307 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:14,308 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:14,308 INFO L85 PathProgramCache]: Analyzing trace with hash 107012533, now seen corresponding path program 1 times [2022-02-20 18:29:14,308 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:14,308 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [270142805] [2022-02-20 18:29:14,308 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:14,309 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:14,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:14,409 INFO L290 TraceCheckUtils]: 0: Hoare triple {16754#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {16754#true} is VALID [2022-02-20 18:29:14,409 INFO L290 TraceCheckUtils]: 1: Hoare triple {16754#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {16754#true} is VALID [2022-02-20 18:29:14,412 INFO L290 TraceCheckUtils]: 2: Hoare triple {16754#true} assume 0 == ~r1~0 % 256; {16754#true} is VALID [2022-02-20 18:29:14,415 INFO L290 TraceCheckUtils]: 3: Hoare triple {16754#true} assume ~id1~0 >= 0; {16754#true} is VALID [2022-02-20 18:29:14,415 INFO L290 TraceCheckUtils]: 4: Hoare triple {16754#true} assume 0 == ~st1~0; {16754#true} is VALID [2022-02-20 18:29:14,415 INFO L290 TraceCheckUtils]: 5: Hoare triple {16754#true} assume ~send1~0 == ~id1~0; {16754#true} is VALID [2022-02-20 18:29:14,415 INFO L290 TraceCheckUtils]: 6: Hoare triple {16754#true} assume 0 == ~mode1~0 % 256; {16754#true} is VALID [2022-02-20 18:29:14,416 INFO L290 TraceCheckUtils]: 7: Hoare triple {16754#true} assume ~id2~0 >= 0; {16754#true} is VALID [2022-02-20 18:29:14,416 INFO L290 TraceCheckUtils]: 8: Hoare triple {16754#true} assume 0 == ~st2~0; {16754#true} is VALID [2022-02-20 18:29:14,416 INFO L290 TraceCheckUtils]: 9: Hoare triple {16754#true} assume ~send2~0 == ~id2~0; {16754#true} is VALID [2022-02-20 18:29:14,416 INFO L290 TraceCheckUtils]: 10: Hoare triple {16754#true} assume 0 == ~mode2~0 % 256; {16754#true} is VALID [2022-02-20 18:29:14,416 INFO L290 TraceCheckUtils]: 11: Hoare triple {16754#true} assume ~id3~0 >= 0; {16754#true} is VALID [2022-02-20 18:29:14,417 INFO L290 TraceCheckUtils]: 12: Hoare triple {16754#true} assume 0 == ~st3~0; {16754#true} is VALID [2022-02-20 18:29:14,417 INFO L290 TraceCheckUtils]: 13: Hoare triple {16754#true} assume ~send3~0 == ~id3~0; {16754#true} is VALID [2022-02-20 18:29:14,417 INFO L290 TraceCheckUtils]: 14: Hoare triple {16754#true} assume 0 == ~mode3~0 % 256; {16754#true} is VALID [2022-02-20 18:29:14,417 INFO L290 TraceCheckUtils]: 15: Hoare triple {16754#true} assume ~id1~0 != ~id2~0; {16754#true} is VALID [2022-02-20 18:29:14,417 INFO L290 TraceCheckUtils]: 16: Hoare triple {16754#true} assume ~id1~0 != ~id3~0; {16754#true} is VALID [2022-02-20 18:29:14,417 INFO L290 TraceCheckUtils]: 17: Hoare triple {16754#true} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {16754#true} is VALID [2022-02-20 18:29:14,418 INFO L290 TraceCheckUtils]: 18: Hoare triple {16754#true} init_#res#1 := init_~tmp~0#1; {16754#true} is VALID [2022-02-20 18:29:14,418 INFO L290 TraceCheckUtils]: 19: Hoare triple {16754#true} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {16754#true} is VALID [2022-02-20 18:29:14,418 INFO L290 TraceCheckUtils]: 20: Hoare triple {16754#true} assume !(0 == assume_abort_if_not_~cond#1); {16754#true} is VALID [2022-02-20 18:29:14,418 INFO L290 TraceCheckUtils]: 21: Hoare triple {16754#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; {16754#true} is VALID [2022-02-20 18:29:14,418 INFO L290 TraceCheckUtils]: 22: Hoare triple {16754#true} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {16754#true} is VALID [2022-02-20 18:29:14,418 INFO L290 TraceCheckUtils]: 23: Hoare triple {16754#true} assume !(0 != ~mode1~0 % 256); {16754#true} is VALID [2022-02-20 18:29:14,419 INFO L290 TraceCheckUtils]: 24: Hoare triple {16754#true} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {16754#true} is VALID [2022-02-20 18:29:14,419 INFO L290 TraceCheckUtils]: 25: Hoare triple {16754#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;~mode1~0 := 1; {16754#true} is VALID [2022-02-20 18:29:14,419 INFO L290 TraceCheckUtils]: 26: Hoare triple {16754#true} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {16754#true} is VALID [2022-02-20 18:29:14,419 INFO L290 TraceCheckUtils]: 27: Hoare triple {16754#true} assume !(0 != ~mode2~0 % 256); {16754#true} is VALID [2022-02-20 18:29:14,420 INFO L290 TraceCheckUtils]: 28: Hoare triple {16754#true} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {16754#true} is VALID [2022-02-20 18:29:14,420 INFO L290 TraceCheckUtils]: 29: Hoare triple {16754#true} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {16754#true} is VALID [2022-02-20 18:29:14,420 INFO L290 TraceCheckUtils]: 30: Hoare triple {16754#true} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {16754#true} is VALID [2022-02-20 18:29:14,421 INFO L290 TraceCheckUtils]: 31: Hoare triple {16754#true} assume !(0 != ~mode3~0 % 256); {16754#true} is VALID [2022-02-20 18:29:14,425 INFO L290 TraceCheckUtils]: 32: Hoare triple {16754#true} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {16754#true} is VALID [2022-02-20 18:29:14,425 INFO L290 TraceCheckUtils]: 33: Hoare triple {16754#true} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {16754#true} is VALID [2022-02-20 18:29:14,425 INFO L290 TraceCheckUtils]: 34: Hoare triple {16754#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; {16754#true} is VALID [2022-02-20 18:29:14,425 INFO L290 TraceCheckUtils]: 35: Hoare triple {16754#true} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {16754#true} is VALID [2022-02-20 18:29:14,426 INFO L290 TraceCheckUtils]: 36: Hoare triple {16754#true} assume !(~r1~0 % 256 >= 3); {16754#true} is VALID [2022-02-20 18:29:14,426 INFO L290 TraceCheckUtils]: 37: Hoare triple {16754#true} assume 0 == ~st1~0 + ~st2~0 + ~st3~0; {16754#true} is VALID [2022-02-20 18:29:14,427 INFO L290 TraceCheckUtils]: 38: Hoare triple {16754#true} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {16756#(= |ULTIMATE.start_check_~tmp~1#1| 1)} is VALID [2022-02-20 18:29:14,427 INFO L290 TraceCheckUtils]: 39: Hoare triple {16756#(= |ULTIMATE.start_check_~tmp~1#1| 1)} check_#res#1 := check_~tmp~1#1; {16757#(= 1 |ULTIMATE.start_check_#res#1|)} is VALID [2022-02-20 18:29:14,428 INFO L290 TraceCheckUtils]: 40: Hoare triple {16757#(= 1 |ULTIMATE.start_check_#res#1|)} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {16758#(and (<= (div |ULTIMATE.start_assert_~arg#1| 256) 0) (<= 1 |ULTIMATE.start_assert_~arg#1|))} is VALID [2022-02-20 18:29:14,433 INFO L290 TraceCheckUtils]: 41: Hoare triple {16758#(and (<= (div |ULTIMATE.start_assert_~arg#1| 256) 0) (<= 1 |ULTIMATE.start_assert_~arg#1|))} assume 0 == assert_~arg#1 % 256; {16755#false} is VALID [2022-02-20 18:29:14,433 INFO L290 TraceCheckUtils]: 42: Hoare triple {16755#false} assume !false; {16755#false} is VALID [2022-02-20 18:29:14,433 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:29:14,434 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:14,434 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [270142805] [2022-02-20 18:29:14,435 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [270142805] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:14,435 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:14,435 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:29:14,435 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2117962067] [2022-02-20 18:29:14,435 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:14,436 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 8.6) internal successors, (43), 5 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:29:14,436 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:14,436 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 8.6) internal successors, (43), 5 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:29:14,465 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:29:14,466 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:29:14,466 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:14,466 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:29:14,466 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:29:14,467 INFO L87 Difference]: Start difference. First operand 606 states and 853 transitions. Second operand has 5 states, 5 states have (on average 8.6) internal successors, (43), 5 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:29:15,836 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:15,836 INFO L93 Difference]: Finished difference Result 1129 states and 1572 transitions. [2022-02-20 18:29:15,837 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 18:29:15,837 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 8.6) internal successors, (43), 5 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:29:15,837 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:15,837 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.6) internal successors, (43), 5 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:29:15,838 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 136 transitions. [2022-02-20 18:29:15,839 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.6) internal successors, (43), 5 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:29:15,839 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 136 transitions. [2022-02-20 18:29:15,839 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 136 transitions. [2022-02-20 18:29:15,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:16,019 INFO L225 Difference]: With dead ends: 1129 [2022-02-20 18:29:16,020 INFO L226 Difference]: Without dead ends: 1127 [2022-02-20 18:29:16,020 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:29:16,021 INFO L933 BasicCegarLoop]: 93 mSDtfsCounter, 136 mSDsluCounter, 224 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 136 SdHoareTripleChecker+Valid, 317 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:29:16,021 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [136 Valid, 317 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:16,022 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1127 states. [2022-02-20 18:29:16,698 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1127 to 654. [2022-02-20 18:29:16,698 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:16,703 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1127 states. Second operand has 654 states, 653 states have (on average 1.3736600306278715) internal successors, (897), 653 states have internal predecessors, (897), 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:29:16,705 INFO L74 IsIncluded]: Start isIncluded. First operand 1127 states. Second operand has 654 states, 653 states have (on average 1.3736600306278715) internal successors, (897), 653 states have internal predecessors, (897), 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:29:16,708 INFO L87 Difference]: Start difference. First operand 1127 states. Second operand has 654 states, 653 states have (on average 1.3736600306278715) internal successors, (897), 653 states have internal predecessors, (897), 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:29:16,774 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:16,775 INFO L93 Difference]: Finished difference Result 1127 states and 1551 transitions. [2022-02-20 18:29:16,775 INFO L276 IsEmpty]: Start isEmpty. Operand 1127 states and 1551 transitions. [2022-02-20 18:29:16,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:16,784 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:16,785 INFO L74 IsIncluded]: Start isIncluded. First operand has 654 states, 653 states have (on average 1.3736600306278715) internal successors, (897), 653 states have internal predecessors, (897), 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 1127 states. [2022-02-20 18:29:16,786 INFO L87 Difference]: Start difference. First operand has 654 states, 653 states have (on average 1.3736600306278715) internal successors, (897), 653 states have internal predecessors, (897), 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 1127 states. [2022-02-20 18:29:16,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:16,831 INFO L93 Difference]: Finished difference Result 1127 states and 1551 transitions. [2022-02-20 18:29:16,832 INFO L276 IsEmpty]: Start isEmpty. Operand 1127 states and 1551 transitions. [2022-02-20 18:29:16,833 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:16,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:16,833 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:16,833 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:16,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 654 states, 653 states have (on average 1.3736600306278715) internal successors, (897), 653 states have internal predecessors, (897), 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:29:16,856 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 654 states to 654 states and 897 transitions. [2022-02-20 18:29:16,856 INFO L78 Accepts]: Start accepts. Automaton has 654 states and 897 transitions. Word has length 43 [2022-02-20 18:29:16,856 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:16,857 INFO L470 AbstractCegarLoop]: Abstraction has 654 states and 897 transitions. [2022-02-20 18:29:16,857 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 8.6) internal successors, (43), 5 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:29:16,857 INFO L276 IsEmpty]: Start isEmpty. Operand 654 states and 897 transitions. [2022-02-20 18:29:16,858 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-02-20 18:29:16,858 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:16,858 INFO L514 BasicCegarLoop]: trace histogram [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] [2022-02-20 18:29:16,858 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 18:29:16,859 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:16,859 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:16,859 INFO L85 PathProgramCache]: Analyzing trace with hash -1027002802, now seen corresponding path program 1 times [2022-02-20 18:29:16,859 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:16,859 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [734923178] [2022-02-20 18:29:16,860 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:16,860 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:16,906 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:16,961 INFO L290 TraceCheckUtils]: 0: Hoare triple {21252#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {21252#true} is VALID [2022-02-20 18:29:16,962 INFO L290 TraceCheckUtils]: 1: Hoare triple {21252#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {21252#true} is VALID [2022-02-20 18:29:16,962 INFO L290 TraceCheckUtils]: 2: Hoare triple {21252#true} assume 0 == ~r1~0 % 256; {21252#true} is VALID [2022-02-20 18:29:16,964 INFO L290 TraceCheckUtils]: 3: Hoare triple {21252#true} assume ~id1~0 >= 0; {21252#true} is VALID [2022-02-20 18:29:16,966 INFO L290 TraceCheckUtils]: 4: Hoare triple {21252#true} assume 0 == ~st1~0; {21254#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:16,967 INFO L290 TraceCheckUtils]: 5: Hoare triple {21254#(<= ~st1~0 0)} assume ~send1~0 == ~id1~0; {21254#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:16,967 INFO L290 TraceCheckUtils]: 6: Hoare triple {21254#(<= ~st1~0 0)} assume 0 == ~mode1~0 % 256; {21254#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:16,967 INFO L290 TraceCheckUtils]: 7: Hoare triple {21254#(<= ~st1~0 0)} assume ~id2~0 >= 0; {21254#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:16,968 INFO L290 TraceCheckUtils]: 8: Hoare triple {21254#(<= ~st1~0 0)} assume 0 == ~st2~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,968 INFO L290 TraceCheckUtils]: 9: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~send2~0 == ~id2~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,968 INFO L290 TraceCheckUtils]: 10: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 == ~mode2~0 % 256; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,968 INFO L290 TraceCheckUtils]: 11: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~id3~0 >= 0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,969 INFO L290 TraceCheckUtils]: 12: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 == ~st3~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,969 INFO L290 TraceCheckUtils]: 13: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~send3~0 == ~id3~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,969 INFO L290 TraceCheckUtils]: 14: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 == ~mode3~0 % 256; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,970 INFO L290 TraceCheckUtils]: 15: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~id1~0 != ~id2~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,970 INFO L290 TraceCheckUtils]: 16: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~id1~0 != ~id3~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,970 INFO L290 TraceCheckUtils]: 17: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,970 INFO L290 TraceCheckUtils]: 18: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} init_#res#1 := init_~tmp~0#1; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,971 INFO L290 TraceCheckUtils]: 19: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,971 INFO L290 TraceCheckUtils]: 20: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,971 INFO L290 TraceCheckUtils]: 21: Hoare triple {21255#(<= (+ ~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; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,972 INFO L290 TraceCheckUtils]: 22: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,972 INFO L290 TraceCheckUtils]: 23: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !(0 != ~mode1~0 % 256); {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,972 INFO L290 TraceCheckUtils]: 24: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,972 INFO L290 TraceCheckUtils]: 25: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 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;~mode1~0 := 1; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,973 INFO L290 TraceCheckUtils]: 26: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,973 INFO L290 TraceCheckUtils]: 27: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !(0 != ~mode2~0 % 256); {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,977 INFO L290 TraceCheckUtils]: 28: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,977 INFO L290 TraceCheckUtils]: 29: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,977 INFO L290 TraceCheckUtils]: 30: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,978 INFO L290 TraceCheckUtils]: 31: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !(0 != ~mode3~0 % 256); {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,978 INFO L290 TraceCheckUtils]: 32: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,978 INFO L290 TraceCheckUtils]: 33: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,978 INFO L290 TraceCheckUtils]: 34: Hoare triple {21255#(<= (+ ~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; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,979 INFO L290 TraceCheckUtils]: 35: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,979 INFO L290 TraceCheckUtils]: 36: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !(~r1~0 % 256 >= 3); {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,979 INFO L290 TraceCheckUtils]: 37: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 == ~st1~0 + ~st2~0 + ~st3~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,980 INFO L290 TraceCheckUtils]: 38: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,980 INFO L290 TraceCheckUtils]: 39: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} check_#res#1 := check_~tmp~1#1; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,980 INFO L290 TraceCheckUtils]: 40: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,981 INFO L290 TraceCheckUtils]: 41: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !(0 == assert_~arg#1 % 256); {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,981 INFO L290 TraceCheckUtils]: 42: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume { :end_inline_assert } true; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,981 INFO L290 TraceCheckUtils]: 43: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,981 INFO L290 TraceCheckUtils]: 44: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 != ~mode1~0 % 256;~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,982 INFO L290 TraceCheckUtils]: 45: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !(node1_~m1~0#1 != ~nomsg~0); {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,982 INFO L290 TraceCheckUtils]: 46: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} ~mode1~0 := 0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,982 INFO L290 TraceCheckUtils]: 47: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,983 INFO L290 TraceCheckUtils]: 48: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,983 INFO L290 TraceCheckUtils]: 49: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !(node2_~m2~0#1 != ~nomsg~0); {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,983 INFO L290 TraceCheckUtils]: 50: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} ~mode2~0 := 0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,983 INFO L290 TraceCheckUtils]: 51: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,984 INFO L290 TraceCheckUtils]: 52: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,985 INFO L290 TraceCheckUtils]: 53: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume node3_~m3~0#1 != ~nomsg~0; {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,986 INFO L290 TraceCheckUtils]: 54: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume !(node3_~m3~0#1 > ~id3~0); {21255#(<= (+ ~st2~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:16,987 INFO L290 TraceCheckUtils]: 55: Hoare triple {21255#(<= (+ ~st2~0 ~st1~0) 0)} assume node3_~m3~0#1 == ~id3~0;~st3~0 := 1; {21256#(and (= (+ (- 1) ~st3~0) 0) (<= (+ ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:16,987 INFO L290 TraceCheckUtils]: 56: Hoare triple {21256#(and (= (+ (- 1) ~st3~0) 0) (<= (+ ~st2~0 ~st1~0) 0))} ~mode3~0 := 0; {21256#(and (= (+ (- 1) ~st3~0) 0) (<= (+ ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:16,988 INFO L290 TraceCheckUtils]: 57: Hoare triple {21256#(and (= (+ (- 1) ~st3~0) 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; {21256#(and (= (+ (- 1) ~st3~0) 0) (<= (+ ~st2~0 ~st1~0) 0))} is VALID [2022-02-20 18:29:16,988 INFO L290 TraceCheckUtils]: 58: Hoare triple {21256#(and (= (+ (- 1) ~st3~0) 0) (<= (+ ~st2~0 ~st1~0) 0))} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {21253#false} is VALID [2022-02-20 18:29:16,988 INFO L290 TraceCheckUtils]: 59: Hoare triple {21253#false} check_#res#1 := check_~tmp~1#1; {21253#false} is VALID [2022-02-20 18:29:16,988 INFO L290 TraceCheckUtils]: 60: Hoare triple {21253#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {21253#false} is VALID [2022-02-20 18:29:16,988 INFO L290 TraceCheckUtils]: 61: Hoare triple {21253#false} assume 0 == assert_~arg#1 % 256; {21253#false} is VALID [2022-02-20 18:29:16,988 INFO L290 TraceCheckUtils]: 62: Hoare triple {21253#false} assume !false; {21253#false} is VALID [2022-02-20 18:29:16,989 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 18:29:16,989 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:16,989 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [734923178] [2022-02-20 18:29:16,989 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [734923178] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:16,989 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:16,989 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:29:16,990 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2110111398] [2022-02-20 18:29:16,990 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:16,990 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 12.0) internal successors, (60), 5 states have internal predecessors, (60), 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 63 [2022-02-20 18:29:16,990 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:16,991 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 12.0) internal successors, (60), 5 states have internal predecessors, (60), 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:29:17,028 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:17,029 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:29:17,029 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:17,029 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:29:17,029 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:29:17,029 INFO L87 Difference]: Start difference. First operand 654 states and 897 transitions. Second operand has 5 states, 5 states have (on average 12.0) internal successors, (60), 5 states have internal predecessors, (60), 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:29:19,562 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:19,563 INFO L93 Difference]: Finished difference Result 2682 states and 3697 transitions. [2022-02-20 18:29:19,563 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 18:29:19,563 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 12.0) internal successors, (60), 5 states have internal predecessors, (60), 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 63 [2022-02-20 18:29:19,563 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:19,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 12.0) internal successors, (60), 5 states have internal predecessors, (60), 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:29:19,565 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 294 transitions. [2022-02-20 18:29:19,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 12.0) internal successors, (60), 5 states have internal predecessors, (60), 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:29:19,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 294 transitions. [2022-02-20 18:29:19,566 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 294 transitions. [2022-02-20 18:29:19,784 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 294 edges. 294 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:19,967 INFO L225 Difference]: With dead ends: 2682 [2022-02-20 18:29:19,967 INFO L226 Difference]: Without dead ends: 2052 [2022-02-20 18:29:19,968 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2022-02-20 18:29:19,969 INFO L933 BasicCegarLoop]: 122 mSDtfsCounter, 188 mSDsluCounter, 179 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 188 SdHoareTripleChecker+Valid, 301 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:29:19,969 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [188 Valid, 301 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:19,971 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2052 states. [2022-02-20 18:29:21,254 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2052 to 1282. [2022-02-20 18:29:21,254 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:21,256 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2052 states. Second operand has 1282 states, 1281 states have (on average 1.3715846994535519) internal successors, (1757), 1281 states have internal predecessors, (1757), 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:29:21,272 INFO L74 IsIncluded]: Start isIncluded. First operand 2052 states. Second operand has 1282 states, 1281 states have (on average 1.3715846994535519) internal successors, (1757), 1281 states have internal predecessors, (1757), 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:29:21,274 INFO L87 Difference]: Start difference. First operand 2052 states. Second operand has 1282 states, 1281 states have (on average 1.3715846994535519) internal successors, (1757), 1281 states have internal predecessors, (1757), 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:29:21,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:21,407 INFO L93 Difference]: Finished difference Result 2052 states and 2812 transitions. [2022-02-20 18:29:21,407 INFO L276 IsEmpty]: Start isEmpty. Operand 2052 states and 2812 transitions. [2022-02-20 18:29:21,410 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:21,410 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:21,412 INFO L74 IsIncluded]: Start isIncluded. First operand has 1282 states, 1281 states have (on average 1.3715846994535519) internal successors, (1757), 1281 states have internal predecessors, (1757), 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 2052 states. [2022-02-20 18:29:21,414 INFO L87 Difference]: Start difference. First operand has 1282 states, 1281 states have (on average 1.3715846994535519) internal successors, (1757), 1281 states have internal predecessors, (1757), 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 2052 states. [2022-02-20 18:29:21,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:21,550 INFO L93 Difference]: Finished difference Result 2052 states and 2812 transitions. [2022-02-20 18:29:21,550 INFO L276 IsEmpty]: Start isEmpty. Operand 2052 states and 2812 transitions. [2022-02-20 18:29:21,553 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:21,554 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:21,554 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:21,554 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:21,556 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1282 states, 1281 states have (on average 1.3715846994535519) internal successors, (1757), 1281 states have internal predecessors, (1757), 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:29:21,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1282 states to 1282 states and 1757 transitions. [2022-02-20 18:29:21,618 INFO L78 Accepts]: Start accepts. Automaton has 1282 states and 1757 transitions. Word has length 63 [2022-02-20 18:29:21,618 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:21,618 INFO L470 AbstractCegarLoop]: Abstraction has 1282 states and 1757 transitions. [2022-02-20 18:29:21,618 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 12.0) internal successors, (60), 5 states have internal predecessors, (60), 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:29:21,618 INFO L276 IsEmpty]: Start isEmpty. Operand 1282 states and 1757 transitions. [2022-02-20 18:29:21,619 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-02-20 18:29:21,619 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:21,619 INFO L514 BasicCegarLoop]: trace histogram [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] [2022-02-20 18:29:21,619 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2022-02-20 18:29:21,620 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:21,620 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:21,620 INFO L85 PathProgramCache]: Analyzing trace with hash 1499181678, now seen corresponding path program 1 times [2022-02-20 18:29:21,620 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:21,620 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1209001272] [2022-02-20 18:29:21,621 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:21,621 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:21,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:21,679 INFO L290 TraceCheckUtils]: 0: Hoare triple {30308#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {30308#true} is VALID [2022-02-20 18:29:21,679 INFO L290 TraceCheckUtils]: 1: Hoare triple {30308#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {30308#true} is VALID [2022-02-20 18:29:21,679 INFO L290 TraceCheckUtils]: 2: Hoare triple {30308#true} assume 0 == ~r1~0 % 256; {30308#true} is VALID [2022-02-20 18:29:21,680 INFO L290 TraceCheckUtils]: 3: Hoare triple {30308#true} assume ~id1~0 >= 0; {30308#true} is VALID [2022-02-20 18:29:21,680 INFO L290 TraceCheckUtils]: 4: Hoare triple {30308#true} assume 0 == ~st1~0; {30310#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:21,680 INFO L290 TraceCheckUtils]: 5: Hoare triple {30310#(<= ~st1~0 0)} assume ~send1~0 == ~id1~0; {30310#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:21,681 INFO L290 TraceCheckUtils]: 6: Hoare triple {30310#(<= ~st1~0 0)} assume 0 == ~mode1~0 % 256; {30310#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:21,681 INFO L290 TraceCheckUtils]: 7: Hoare triple {30310#(<= ~st1~0 0)} assume ~id2~0 >= 0; {30310#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:21,681 INFO L290 TraceCheckUtils]: 8: Hoare triple {30310#(<= ~st1~0 0)} assume 0 == ~st2~0; {30310#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:21,682 INFO L290 TraceCheckUtils]: 9: Hoare triple {30310#(<= ~st1~0 0)} assume ~send2~0 == ~id2~0; {30310#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:21,682 INFO L290 TraceCheckUtils]: 10: Hoare triple {30310#(<= ~st1~0 0)} assume 0 == ~mode2~0 % 256; {30310#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:21,682 INFO L290 TraceCheckUtils]: 11: Hoare triple {30310#(<= ~st1~0 0)} assume ~id3~0 >= 0; {30310#(<= ~st1~0 0)} is VALID [2022-02-20 18:29:21,683 INFO L290 TraceCheckUtils]: 12: Hoare triple {30310#(<= ~st1~0 0)} assume 0 == ~st3~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,683 INFO L290 TraceCheckUtils]: 13: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume ~send3~0 == ~id3~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,683 INFO L290 TraceCheckUtils]: 14: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume 0 == ~mode3~0 % 256; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,684 INFO L290 TraceCheckUtils]: 15: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume ~id1~0 != ~id2~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,684 INFO L290 TraceCheckUtils]: 16: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume ~id1~0 != ~id3~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,684 INFO L290 TraceCheckUtils]: 17: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,685 INFO L290 TraceCheckUtils]: 18: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} init_#res#1 := init_~tmp~0#1; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,685 INFO L290 TraceCheckUtils]: 19: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,685 INFO L290 TraceCheckUtils]: 20: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,686 INFO L290 TraceCheckUtils]: 21: Hoare triple {30311#(<= (+ ~st3~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; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,686 INFO L290 TraceCheckUtils]: 22: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,686 INFO L290 TraceCheckUtils]: 23: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume !(0 != ~mode1~0 % 256); {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,687 INFO L290 TraceCheckUtils]: 24: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,687 INFO L290 TraceCheckUtils]: 25: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 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;~mode1~0 := 1; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,687 INFO L290 TraceCheckUtils]: 26: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,688 INFO L290 TraceCheckUtils]: 27: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume !(0 != ~mode2~0 % 256); {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,688 INFO L290 TraceCheckUtils]: 28: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,689 INFO L290 TraceCheckUtils]: 29: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,689 INFO L290 TraceCheckUtils]: 30: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,689 INFO L290 TraceCheckUtils]: 31: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume !(0 != ~mode3~0 % 256); {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,690 INFO L290 TraceCheckUtils]: 32: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,690 INFO L290 TraceCheckUtils]: 33: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,690 INFO L290 TraceCheckUtils]: 34: Hoare triple {30311#(<= (+ ~st3~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; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,691 INFO L290 TraceCheckUtils]: 35: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,691 INFO L290 TraceCheckUtils]: 36: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume !(~r1~0 % 256 >= 3); {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,691 INFO L290 TraceCheckUtils]: 37: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume 0 == ~st1~0 + ~st2~0 + ~st3~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,692 INFO L290 TraceCheckUtils]: 38: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,692 INFO L290 TraceCheckUtils]: 39: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} check_#res#1 := check_~tmp~1#1; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,692 INFO L290 TraceCheckUtils]: 40: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,693 INFO L290 TraceCheckUtils]: 41: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume !(0 == assert_~arg#1 % 256); {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,693 INFO L290 TraceCheckUtils]: 42: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume { :end_inline_assert } true; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,693 INFO L290 TraceCheckUtils]: 43: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,694 INFO L290 TraceCheckUtils]: 44: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume 0 != ~mode1~0 % 256;~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,694 INFO L290 TraceCheckUtils]: 45: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume !(node1_~m1~0#1 != ~nomsg~0); {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,694 INFO L290 TraceCheckUtils]: 46: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} ~mode1~0 := 0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,695 INFO L290 TraceCheckUtils]: 47: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,695 INFO L290 TraceCheckUtils]: 48: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,695 INFO L290 TraceCheckUtils]: 49: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume node2_~m2~0#1 != ~nomsg~0; {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,696 INFO L290 TraceCheckUtils]: 50: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume !(node2_~m2~0#1 > ~id2~0); {30311#(<= (+ ~st3~0 ~st1~0) 0)} is VALID [2022-02-20 18:29:21,696 INFO L290 TraceCheckUtils]: 51: Hoare triple {30311#(<= (+ ~st3~0 ~st1~0) 0)} assume node2_~m2~0#1 == ~id2~0;~st2~0 := 1; {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} is VALID [2022-02-20 18:29:21,697 INFO L290 TraceCheckUtils]: 52: Hoare triple {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} ~mode2~0 := 0; {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} is VALID [2022-02-20 18:29:21,697 INFO L290 TraceCheckUtils]: 53: Hoare triple {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} is VALID [2022-02-20 18:29:21,699 INFO L290 TraceCheckUtils]: 54: Hoare triple {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} is VALID [2022-02-20 18:29:21,699 INFO L290 TraceCheckUtils]: 55: Hoare triple {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} assume !(node3_~m3~0#1 != ~nomsg~0); {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} is VALID [2022-02-20 18:29:21,700 INFO L290 TraceCheckUtils]: 56: Hoare triple {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} ~mode3~0 := 0; {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} is VALID [2022-02-20 18:29:21,700 INFO L290 TraceCheckUtils]: 57: Hoare triple {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~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; {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} is VALID [2022-02-20 18:29:21,701 INFO L290 TraceCheckUtils]: 58: Hoare triple {30312#(and (<= (+ ~st3~0 ~st1~0) 0) (= (+ (- 1) ~st2~0) 0))} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {30309#false} is VALID [2022-02-20 18:29:21,701 INFO L290 TraceCheckUtils]: 59: Hoare triple {30309#false} check_#res#1 := check_~tmp~1#1; {30309#false} is VALID [2022-02-20 18:29:21,701 INFO L290 TraceCheckUtils]: 60: Hoare triple {30309#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {30309#false} is VALID [2022-02-20 18:29:21,701 INFO L290 TraceCheckUtils]: 61: Hoare triple {30309#false} assume 0 == assert_~arg#1 % 256; {30309#false} is VALID [2022-02-20 18:29:21,701 INFO L290 TraceCheckUtils]: 62: Hoare triple {30309#false} assume !false; {30309#false} is VALID [2022-02-20 18:29:21,702 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 18:29:21,702 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:21,702 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1209001272] [2022-02-20 18:29:21,702 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1209001272] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:21,702 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:21,703 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:29:21,703 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [572695142] [2022-02-20 18:29:21,703 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:21,703 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 12.2) internal successors, (61), 5 states have internal predecessors, (61), 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 63 [2022-02-20 18:29:21,704 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:21,704 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 12.2) internal successors, (61), 5 states have internal predecessors, (61), 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:29:21,746 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:21,746 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:29:21,747 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:21,747 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:29:21,747 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:29:21,747 INFO L87 Difference]: Start difference. First operand 1282 states and 1757 transitions. Second operand has 5 states, 5 states have (on average 12.2) internal successors, (61), 5 states have internal predecessors, (61), 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:29:25,008 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:25,008 INFO L93 Difference]: Finished difference Result 3310 states and 4557 transitions. [2022-02-20 18:29:25,008 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 18:29:25,008 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 12.2) internal successors, (61), 5 states have internal predecessors, (61), 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 63 [2022-02-20 18:29:25,008 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:25,008 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 12.2) internal successors, (61), 5 states have internal predecessors, (61), 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:29:25,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 294 transitions. [2022-02-20 18:29:25,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 12.2) internal successors, (61), 5 states have internal predecessors, (61), 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:29:25,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 294 transitions. [2022-02-20 18:29:25,017 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 294 transitions. [2022-02-20 18:29:25,211 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 294 edges. 294 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:25,474 INFO L225 Difference]: With dead ends: 3310 [2022-02-20 18:29:25,474 INFO L226 Difference]: Without dead ends: 2680 [2022-02-20 18:29:25,475 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2022-02-20 18:29:25,476 INFO L933 BasicCegarLoop]: 123 mSDtfsCounter, 183 mSDsluCounter, 206 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 183 SdHoareTripleChecker+Valid, 329 SdHoareTripleChecker+Invalid, 53 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:29:25,476 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [183 Valid, 329 Invalid, 53 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:25,478 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2680 states. [2022-02-20 18:29:27,806 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2680 to 2226. [2022-02-20 18:29:27,806 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:27,809 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2680 states. Second operand has 2226 states, 2225 states have (on average 1.364943820224719) internal successors, (3037), 2225 states have internal predecessors, (3037), 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:29:27,810 INFO L74 IsIncluded]: Start isIncluded. First operand 2680 states. Second operand has 2226 states, 2225 states have (on average 1.364943820224719) internal successors, (3037), 2225 states have internal predecessors, (3037), 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:29:27,812 INFO L87 Difference]: Start difference. First operand 2680 states. Second operand has 2226 states, 2225 states have (on average 1.364943820224719) internal successors, (3037), 2225 states have internal predecessors, (3037), 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:29:27,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:27,999 INFO L93 Difference]: Finished difference Result 2680 states and 3672 transitions. [2022-02-20 18:29:27,999 INFO L276 IsEmpty]: Start isEmpty. Operand 2680 states and 3672 transitions. [2022-02-20 18:29:28,002 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:28,003 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:28,005 INFO L74 IsIncluded]: Start isIncluded. First operand has 2226 states, 2225 states have (on average 1.364943820224719) internal successors, (3037), 2225 states have internal predecessors, (3037), 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 2680 states. [2022-02-20 18:29:28,011 INFO L87 Difference]: Start difference. First operand has 2226 states, 2225 states have (on average 1.364943820224719) internal successors, (3037), 2225 states have internal predecessors, (3037), 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 2680 states. [2022-02-20 18:29:28,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:28,255 INFO L93 Difference]: Finished difference Result 2680 states and 3672 transitions. [2022-02-20 18:29:28,255 INFO L276 IsEmpty]: Start isEmpty. Operand 2680 states and 3672 transitions. [2022-02-20 18:29:28,258 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:28,259 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:28,259 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:28,259 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:28,262 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2226 states, 2225 states have (on average 1.364943820224719) internal successors, (3037), 2225 states have internal predecessors, (3037), 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:29:28,447 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2226 states to 2226 states and 3037 transitions. [2022-02-20 18:29:28,447 INFO L78 Accepts]: Start accepts. Automaton has 2226 states and 3037 transitions. Word has length 63 [2022-02-20 18:29:28,447 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:28,447 INFO L470 AbstractCegarLoop]: Abstraction has 2226 states and 3037 transitions. [2022-02-20 18:29:28,448 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 12.2) internal successors, (61), 5 states have internal predecessors, (61), 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:29:28,448 INFO L276 IsEmpty]: Start isEmpty. Operand 2226 states and 3037 transitions. [2022-02-20 18:29:28,448 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-02-20 18:29:28,448 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:28,448 INFO L514 BasicCegarLoop]: trace histogram [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] [2022-02-20 18:29:28,449 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2022-02-20 18:29:28,449 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:28,449 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:28,449 INFO L85 PathProgramCache]: Analyzing trace with hash -1664145778, now seen corresponding path program 1 times [2022-02-20 18:29:28,449 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:28,449 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1646067892] [2022-02-20 18:29:28,449 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:28,449 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:28,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:28,541 INFO L290 TraceCheckUtils]: 0: Hoare triple {42584#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {42584#true} is VALID [2022-02-20 18:29:28,542 INFO L290 TraceCheckUtils]: 1: Hoare triple {42584#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {42584#true} is VALID [2022-02-20 18:29:28,542 INFO L290 TraceCheckUtils]: 2: Hoare triple {42584#true} assume 0 == ~r1~0 % 256; {42584#true} is VALID [2022-02-20 18:29:28,542 INFO L290 TraceCheckUtils]: 3: Hoare triple {42584#true} assume ~id1~0 >= 0; {42584#true} is VALID [2022-02-20 18:29:28,542 INFO L290 TraceCheckUtils]: 4: Hoare triple {42584#true} assume 0 == ~st1~0; {42584#true} is VALID [2022-02-20 18:29:28,542 INFO L290 TraceCheckUtils]: 5: Hoare triple {42584#true} assume ~send1~0 == ~id1~0; {42584#true} is VALID [2022-02-20 18:29:28,542 INFO L290 TraceCheckUtils]: 6: Hoare triple {42584#true} assume 0 == ~mode1~0 % 256; {42584#true} is VALID [2022-02-20 18:29:28,543 INFO L290 TraceCheckUtils]: 7: Hoare triple {42584#true} assume ~id2~0 >= 0; {42584#true} is VALID [2022-02-20 18:29:28,543 INFO L290 TraceCheckUtils]: 8: Hoare triple {42584#true} assume 0 == ~st2~0; {42586#(<= ~st2~0 0)} is VALID [2022-02-20 18:29:28,543 INFO L290 TraceCheckUtils]: 9: Hoare triple {42586#(<= ~st2~0 0)} assume ~send2~0 == ~id2~0; {42586#(<= ~st2~0 0)} is VALID [2022-02-20 18:29:28,544 INFO L290 TraceCheckUtils]: 10: Hoare triple {42586#(<= ~st2~0 0)} assume 0 == ~mode2~0 % 256; {42586#(<= ~st2~0 0)} is VALID [2022-02-20 18:29:28,544 INFO L290 TraceCheckUtils]: 11: Hoare triple {42586#(<= ~st2~0 0)} assume ~id3~0 >= 0; {42586#(<= ~st2~0 0)} is VALID [2022-02-20 18:29:28,544 INFO L290 TraceCheckUtils]: 12: Hoare triple {42586#(<= ~st2~0 0)} assume 0 == ~st3~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,545 INFO L290 TraceCheckUtils]: 13: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume ~send3~0 == ~id3~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,545 INFO L290 TraceCheckUtils]: 14: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume 0 == ~mode3~0 % 256; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,545 INFO L290 TraceCheckUtils]: 15: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume ~id1~0 != ~id2~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,546 INFO L290 TraceCheckUtils]: 16: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume ~id1~0 != ~id3~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,546 INFO L290 TraceCheckUtils]: 17: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,546 INFO L290 TraceCheckUtils]: 18: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} init_#res#1 := init_~tmp~0#1; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,547 INFO L290 TraceCheckUtils]: 19: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,547 INFO L290 TraceCheckUtils]: 20: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume !(0 == assume_abort_if_not_~cond#1); {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,547 INFO L290 TraceCheckUtils]: 21: Hoare triple {42587#(<= (+ ~st3~0 ~st2~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; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,548 INFO L290 TraceCheckUtils]: 22: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,548 INFO L290 TraceCheckUtils]: 23: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume !(0 != ~mode1~0 % 256); {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,548 INFO L290 TraceCheckUtils]: 24: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,549 INFO L290 TraceCheckUtils]: 25: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 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;~mode1~0 := 1; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,549 INFO L290 TraceCheckUtils]: 26: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,549 INFO L290 TraceCheckUtils]: 27: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume !(0 != ~mode2~0 % 256); {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,550 INFO L290 TraceCheckUtils]: 28: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,550 INFO L290 TraceCheckUtils]: 29: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,551 INFO L290 TraceCheckUtils]: 30: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,551 INFO L290 TraceCheckUtils]: 31: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume !(0 != ~mode3~0 % 256); {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,551 INFO L290 TraceCheckUtils]: 32: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,551 INFO L290 TraceCheckUtils]: 33: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,552 INFO L290 TraceCheckUtils]: 34: Hoare triple {42587#(<= (+ ~st3~0 ~st2~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; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,552 INFO L290 TraceCheckUtils]: 35: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,552 INFO L290 TraceCheckUtils]: 36: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume !(~r1~0 % 256 >= 3); {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,553 INFO L290 TraceCheckUtils]: 37: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume 0 == ~st1~0 + ~st2~0 + ~st3~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,553 INFO L290 TraceCheckUtils]: 38: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,553 INFO L290 TraceCheckUtils]: 39: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} check_#res#1 := check_~tmp~1#1; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,553 INFO L290 TraceCheckUtils]: 40: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,554 INFO L290 TraceCheckUtils]: 41: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume !(0 == assert_~arg#1 % 256); {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,554 INFO L290 TraceCheckUtils]: 42: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume { :end_inline_assert } true; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,554 INFO L290 TraceCheckUtils]: 43: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,555 INFO L290 TraceCheckUtils]: 44: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume 0 != ~mode1~0 % 256;~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,555 INFO L290 TraceCheckUtils]: 45: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume node1_~m1~0#1 != ~nomsg~0; {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,556 INFO L290 TraceCheckUtils]: 46: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume !(node1_~m1~0#1 > ~id1~0); {42587#(<= (+ ~st3~0 ~st2~0) 0)} is VALID [2022-02-20 18:29:28,556 INFO L290 TraceCheckUtils]: 47: Hoare triple {42587#(<= (+ ~st3~0 ~st2~0) 0)} assume node1_~m1~0#1 == ~id1~0;~st1~0 := 1; {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,557 INFO L290 TraceCheckUtils]: 48: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} ~mode1~0 := 0; {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,557 INFO L290 TraceCheckUtils]: 49: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,557 INFO L290 TraceCheckUtils]: 50: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,558 INFO L290 TraceCheckUtils]: 51: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} assume !(node2_~m2~0#1 != ~nomsg~0); {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,558 INFO L290 TraceCheckUtils]: 52: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} ~mode2~0 := 0; {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,559 INFO L290 TraceCheckUtils]: 53: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,559 INFO L290 TraceCheckUtils]: 54: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,560 INFO L290 TraceCheckUtils]: 55: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} assume !(node3_~m3~0#1 != ~nomsg~0); {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,560 INFO L290 TraceCheckUtils]: 56: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} ~mode3~0 := 0; {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,561 INFO L290 TraceCheckUtils]: 57: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~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; {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} is VALID [2022-02-20 18:29:28,561 INFO L290 TraceCheckUtils]: 58: Hoare triple {42588#(and (= (+ (- 1) ~st1~0) 0) (<= (+ ~st3~0 ~st2~0) 0))} assume !(~st1~0 + ~st2~0 + ~st3~0 <= 1);check_~tmp~1#1 := 0; {42585#false} is VALID [2022-02-20 18:29:28,561 INFO L290 TraceCheckUtils]: 59: Hoare triple {42585#false} check_#res#1 := check_~tmp~1#1; {42585#false} is VALID [2022-02-20 18:29:28,562 INFO L290 TraceCheckUtils]: 60: Hoare triple {42585#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {42585#false} is VALID [2022-02-20 18:29:28,562 INFO L290 TraceCheckUtils]: 61: Hoare triple {42585#false} assume 0 == assert_~arg#1 % 256; {42585#false} is VALID [2022-02-20 18:29:28,562 INFO L290 TraceCheckUtils]: 62: Hoare triple {42585#false} assume !false; {42585#false} is VALID [2022-02-20 18:29:28,563 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 9 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 18:29:28,563 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:28,564 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1646067892] [2022-02-20 18:29:28,564 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1646067892] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 18:29:28,564 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 18:29:28,564 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 18:29:28,564 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1874079227] [2022-02-20 18:29:28,564 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 18:29:28,565 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 12.4) internal successors, (62), 5 states have internal predecessors, (62), 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 63 [2022-02-20 18:29:28,565 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:28,565 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 12.4) internal successors, (62), 5 states have internal predecessors, (62), 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:29:28,611 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:28,611 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 18:29:28,612 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:28,612 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 18:29:28,613 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 18:29:28,613 INFO L87 Difference]: Start difference. First operand 2226 states and 3037 transitions. Second operand has 5 states, 5 states have (on average 12.4) internal successors, (62), 5 states have internal predecessors, (62), 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:29:32,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:32,596 INFO L93 Difference]: Finished difference Result 3578 states and 4937 transitions. [2022-02-20 18:29:32,597 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 18:29:32,597 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 12.4) internal successors, (62), 5 states have internal predecessors, (62), 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 63 [2022-02-20 18:29:32,597 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 18:29:32,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 12.4) internal successors, (62), 5 states have internal predecessors, (62), 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:29:32,598 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 294 transitions. [2022-02-20 18:29:32,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 12.4) internal successors, (62), 5 states have internal predecessors, (62), 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:29:32,599 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 294 transitions. [2022-02-20 18:29:32,599 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 294 transitions. [2022-02-20 18:29:32,782 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 294 edges. 294 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:33,133 INFO L225 Difference]: With dead ends: 3578 [2022-02-20 18:29:33,133 INFO L226 Difference]: Without dead ends: 3128 [2022-02-20 18:29:33,134 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2022-02-20 18:29:33,135 INFO L933 BasicCegarLoop]: 121 mSDtfsCounter, 184 mSDsluCounter, 177 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 184 SdHoareTripleChecker+Valid, 298 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 18:29:33,135 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [184 Valid, 298 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 18:29:33,137 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3128 states. [2022-02-20 18:29:36,048 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3128 to 2674. [2022-02-20 18:29:36,048 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 18:29:36,051 INFO L82 GeneralOperation]: Start isEquivalent. First operand 3128 states. Second operand has 2674 states, 2673 states have (on average 1.3696221473999253) internal successors, (3661), 2673 states have internal predecessors, (3661), 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:29:36,053 INFO L74 IsIncluded]: Start isIncluded. First operand 3128 states. Second operand has 2674 states, 2673 states have (on average 1.3696221473999253) internal successors, (3661), 2673 states have internal predecessors, (3661), 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:29:36,056 INFO L87 Difference]: Start difference. First operand 3128 states. Second operand has 2674 states, 2673 states have (on average 1.3696221473999253) internal successors, (3661), 2673 states have internal predecessors, (3661), 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:29:36,389 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:36,389 INFO L93 Difference]: Finished difference Result 3128 states and 4296 transitions. [2022-02-20 18:29:36,389 INFO L276 IsEmpty]: Start isEmpty. Operand 3128 states and 4296 transitions. [2022-02-20 18:29:36,392 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:36,392 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:36,395 INFO L74 IsIncluded]: Start isIncluded. First operand has 2674 states, 2673 states have (on average 1.3696221473999253) internal successors, (3661), 2673 states have internal predecessors, (3661), 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 3128 states. [2022-02-20 18:29:36,398 INFO L87 Difference]: Start difference. First operand has 2674 states, 2673 states have (on average 1.3696221473999253) internal successors, (3661), 2673 states have internal predecessors, (3661), 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 3128 states. [2022-02-20 18:29:36,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 18:29:36,752 INFO L93 Difference]: Finished difference Result 3128 states and 4296 transitions. [2022-02-20 18:29:36,752 INFO L276 IsEmpty]: Start isEmpty. Operand 3128 states and 4296 transitions. [2022-02-20 18:29:36,754 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 18:29:36,754 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 18:29:36,754 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 18:29:36,754 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 18:29:36,757 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2674 states, 2673 states have (on average 1.3696221473999253) internal successors, (3661), 2673 states have internal predecessors, (3661), 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:29:36,999 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2674 states to 2674 states and 3661 transitions. [2022-02-20 18:29:36,999 INFO L78 Accepts]: Start accepts. Automaton has 2674 states and 3661 transitions. Word has length 63 [2022-02-20 18:29:36,999 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 18:29:36,999 INFO L470 AbstractCegarLoop]: Abstraction has 2674 states and 3661 transitions. [2022-02-20 18:29:36,999 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 12.4) internal successors, (62), 5 states have internal predecessors, (62), 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:29:37,000 INFO L276 IsEmpty]: Start isEmpty. Operand 2674 states and 3661 transitions. [2022-02-20 18:29:37,000 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-02-20 18:29:37,000 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 18:29:37,000 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] [2022-02-20 18:29:37,001 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2022-02-20 18:29:37,001 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 18:29:37,001 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 18:29:37,001 INFO L85 PathProgramCache]: Analyzing trace with hash -229876224, now seen corresponding path program 1 times [2022-02-20 18:29:37,001 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 18:29:37,001 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1041732358] [2022-02-20 18:29:37,001 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:37,001 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 18:29:37,043 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:37,313 INFO L290 TraceCheckUtils]: 0: Hoare triple {56652#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {56654#(<= (+ ~nomsg~0 1) 0)} is VALID [2022-02-20 18:29:37,313 INFO L290 TraceCheckUtils]: 1: Hoare triple {56654#(<= (+ ~nomsg~0 1) 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} is VALID [2022-02-20 18:29:37,314 INFO L290 TraceCheckUtils]: 2: Hoare triple {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} assume 0 == ~r1~0 % 256; {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} is VALID [2022-02-20 18:29:37,314 INFO L290 TraceCheckUtils]: 3: Hoare triple {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} assume ~id1~0 >= 0; {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} is VALID [2022-02-20 18:29:37,314 INFO L290 TraceCheckUtils]: 4: Hoare triple {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} assume 0 == ~st1~0; {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} is VALID [2022-02-20 18:29:37,315 INFO L290 TraceCheckUtils]: 5: Hoare triple {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} assume ~send1~0 == ~id1~0; {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} is VALID [2022-02-20 18:29:37,315 INFO L290 TraceCheckUtils]: 6: Hoare triple {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} assume 0 == ~mode1~0 % 256; {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} is VALID [2022-02-20 18:29:37,316 INFO L290 TraceCheckUtils]: 7: Hoare triple {56655#(and (<= (+ ~nomsg~0 1) 0) (<= ~id2~0 127))} assume ~id2~0 >= 0; {56656#(and (<= (+ ~nomsg~0 1) 0) (<= 0 ~id2~0) (<= ~id2~0 127))} is VALID [2022-02-20 18:29:37,316 INFO L290 TraceCheckUtils]: 8: Hoare triple {56656#(and (<= (+ ~nomsg~0 1) 0) (<= 0 ~id2~0) (<= ~id2~0 127))} assume 0 == ~st2~0; {56656#(and (<= (+ ~nomsg~0 1) 0) (<= 0 ~id2~0) (<= ~id2~0 127))} is VALID [2022-02-20 18:29:37,316 INFO L290 TraceCheckUtils]: 9: Hoare triple {56656#(and (<= (+ ~nomsg~0 1) 0) (<= 0 ~id2~0) (<= ~id2~0 127))} assume ~send2~0 == ~id2~0; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,317 INFO L290 TraceCheckUtils]: 10: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume 0 == ~mode2~0 % 256; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,317 INFO L290 TraceCheckUtils]: 11: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume ~id3~0 >= 0; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,318 INFO L290 TraceCheckUtils]: 12: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume 0 == ~st3~0; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,318 INFO L290 TraceCheckUtils]: 13: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume ~send3~0 == ~id3~0; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,318 INFO L290 TraceCheckUtils]: 14: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume 0 == ~mode3~0 % 256; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,319 INFO L290 TraceCheckUtils]: 15: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume ~id1~0 != ~id2~0; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,319 INFO L290 TraceCheckUtils]: 16: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume ~id1~0 != ~id3~0; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,320 INFO L290 TraceCheckUtils]: 17: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,320 INFO L290 TraceCheckUtils]: 18: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} init_#res#1 := init_~tmp~0#1; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,320 INFO L290 TraceCheckUtils]: 19: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,321 INFO L290 TraceCheckUtils]: 20: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume !(0 == assume_abort_if_not_~cond#1); {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,321 INFO L290 TraceCheckUtils]: 21: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 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; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,322 INFO L290 TraceCheckUtils]: 22: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,322 INFO L290 TraceCheckUtils]: 23: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume !(0 != ~mode1~0 % 256); {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,322 INFO L290 TraceCheckUtils]: 24: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,323 INFO L290 TraceCheckUtils]: 25: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 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;~mode1~0 := 1; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,323 INFO L290 TraceCheckUtils]: 26: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,324 INFO L290 TraceCheckUtils]: 27: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume !(0 != ~mode2~0 % 256); {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} is VALID [2022-02-20 18:29:37,324 INFO L290 TraceCheckUtils]: 28: Hoare triple {56657#(and (<= 0 ~send2~0) (<= ~send2~0 127) (<= (+ ~nomsg~0 1) 0))} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {56658#(and (<= (+ ~nomsg~0 1) 0) (not (<= (+ 1 (div |ULTIMATE.start_node2_#t~ite5#1| 256)) 0)) (<= |ULTIMATE.start_node2_#t~ite5#1| 127))} is VALID [2022-02-20 18:29:37,325 INFO L290 TraceCheckUtils]: 29: Hoare triple {56658#(and (<= (+ ~nomsg~0 1) 0) (not (<= (+ 1 (div |ULTIMATE.start_node2_#t~ite5#1| 256)) 0)) (<= |ULTIMATE.start_node2_#t~ite5#1| 127))} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {56659#(<= (+ ~nomsg~0 1) ~p2_new~0)} is VALID [2022-02-20 18:29:37,331 INFO L290 TraceCheckUtils]: 30: Hoare triple {56659#(<= (+ ~nomsg~0 1) ~p2_new~0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {56659#(<= (+ ~nomsg~0 1) ~p2_new~0)} is VALID [2022-02-20 18:29:37,331 INFO L290 TraceCheckUtils]: 31: Hoare triple {56659#(<= (+ ~nomsg~0 1) ~p2_new~0)} assume !(0 != ~mode3~0 % 256); {56659#(<= (+ ~nomsg~0 1) ~p2_new~0)} is VALID [2022-02-20 18:29:37,333 INFO L290 TraceCheckUtils]: 32: Hoare triple {56659#(<= (+ ~nomsg~0 1) ~p2_new~0)} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {56660#(or (and (or (not (<= |ULTIMATE.start_node3_#t~ite6#1| (+ (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 127))) (not (= (+ (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) (- 256)) |ULTIMATE.start_node3_#t~ite6#1|) ~p2_new~0))) (or (not (= (+ (- 256) (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) (- 256)) |ULTIMATE.start_node3_#t~ite6#1|) ~p2_new~0)) (<= |ULTIMATE.start_node3_#t~ite6#1| (+ (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 127)))) (and (not (= (+ ~nomsg~0 (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 256 (* (- 1) |ULTIMATE.start_node3_#t~ite6#1|)) 0)) (or (not (<= |ULTIMATE.start_node3_#t~ite6#1| (+ (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 127))) (not (= (+ ~nomsg~0 (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) (* (- 1) |ULTIMATE.start_node3_#t~ite6#1|)) 0)))) (and (<= (+ ~nomsg~0 (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 1) |ULTIMATE.start_node3_#t~ite6#1|) (<= |ULTIMATE.start_node3_#t~ite6#1| (+ (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 127))))} is VALID [2022-02-20 18:29:37,334 INFO L290 TraceCheckUtils]: 33: Hoare triple {56660#(or (and (or (not (<= |ULTIMATE.start_node3_#t~ite6#1| (+ (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 127))) (not (= (+ (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) (- 256)) |ULTIMATE.start_node3_#t~ite6#1|) ~p2_new~0))) (or (not (= (+ (- 256) (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) (- 256)) |ULTIMATE.start_node3_#t~ite6#1|) ~p2_new~0)) (<= |ULTIMATE.start_node3_#t~ite6#1| (+ (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 127)))) (and (not (= (+ ~nomsg~0 (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 256 (* (- 1) |ULTIMATE.start_node3_#t~ite6#1|)) 0)) (or (not (<= |ULTIMATE.start_node3_#t~ite6#1| (+ (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 127))) (not (= (+ ~nomsg~0 (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) (* (- 1) |ULTIMATE.start_node3_#t~ite6#1|)) 0)))) (and (<= (+ ~nomsg~0 (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 1) |ULTIMATE.start_node3_#t~ite6#1|) (<= |ULTIMATE.start_node3_#t~ite6#1| (+ (* (div |ULTIMATE.start_node3_#t~ite6#1| 256) 256) 127))))} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {56661#(or (not (= ~p3_new~0 ~p2_new~0)) (not (= ~p3_new~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,334 INFO L290 TraceCheckUtils]: 34: Hoare triple {56661#(or (not (= ~p3_new~0 ~p2_new~0)) (not (= ~p3_new~0 ~nomsg~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; {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,335 INFO L290 TraceCheckUtils]: 35: Hoare triple {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,335 INFO L290 TraceCheckUtils]: 36: Hoare triple {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} assume !(~r1~0 % 256 >= 3); {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,336 INFO L290 TraceCheckUtils]: 37: Hoare triple {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} assume 0 == ~st1~0 + ~st2~0 + ~st3~0; {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,337 INFO L290 TraceCheckUtils]: 38: Hoare triple {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,337 INFO L290 TraceCheckUtils]: 39: Hoare triple {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} check_#res#1 := check_~tmp~1#1; {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,338 INFO L290 TraceCheckUtils]: 40: Hoare triple {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,338 INFO L290 TraceCheckUtils]: 41: Hoare triple {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} assume !(0 == assert_~arg#1 % 256); {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,339 INFO L290 TraceCheckUtils]: 42: Hoare triple {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} assume { :end_inline_assert } true; {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,339 INFO L290 TraceCheckUtils]: 43: Hoare triple {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} is VALID [2022-02-20 18:29:37,340 INFO L290 TraceCheckUtils]: 44: Hoare triple {56662#(or (not (= ~p3_old~0 ~p2_old~0)) (not (= ~p3_old~0 ~nomsg~0)))} assume 0 != ~mode1~0 % 256;~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {56663#(or (not (= ~nomsg~0 |ULTIMATE.start_node1_~m1~0#1|)) (not (= |ULTIMATE.start_node1_~m1~0#1| ~p2_old~0)))} is VALID [2022-02-20 18:29:37,340 INFO L290 TraceCheckUtils]: 45: Hoare triple {56663#(or (not (= ~nomsg~0 |ULTIMATE.start_node1_~m1~0#1|)) (not (= |ULTIMATE.start_node1_~m1~0#1| ~p2_old~0)))} assume !(node1_~m1~0#1 != ~nomsg~0); {56664#(not (= ~nomsg~0 ~p2_old~0))} is VALID [2022-02-20 18:29:37,342 INFO L290 TraceCheckUtils]: 46: Hoare triple {56664#(not (= ~nomsg~0 ~p2_old~0))} ~mode1~0 := 0; {56664#(not (= ~nomsg~0 ~p2_old~0))} is VALID [2022-02-20 18:29:37,342 INFO L290 TraceCheckUtils]: 47: Hoare triple {56664#(not (= ~nomsg~0 ~p2_old~0))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {56664#(not (= ~nomsg~0 ~p2_old~0))} is VALID [2022-02-20 18:29:37,343 INFO L290 TraceCheckUtils]: 48: Hoare triple {56664#(not (= ~nomsg~0 ~p2_old~0))} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {56664#(not (= ~nomsg~0 ~p2_old~0))} is VALID [2022-02-20 18:29:37,343 INFO L290 TraceCheckUtils]: 49: Hoare triple {56664#(not (= ~nomsg~0 ~p2_old~0))} assume !(node2_~m2~0#1 != ~nomsg~0); {56664#(not (= ~nomsg~0 ~p2_old~0))} is VALID [2022-02-20 18:29:37,344 INFO L290 TraceCheckUtils]: 50: Hoare triple {56664#(not (= ~nomsg~0 ~p2_old~0))} ~mode2~0 := 0; {56664#(not (= ~nomsg~0 ~p2_old~0))} is VALID [2022-02-20 18:29:37,344 INFO L290 TraceCheckUtils]: 51: Hoare triple {56664#(not (= ~nomsg~0 ~p2_old~0))} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {56664#(not (= ~nomsg~0 ~p2_old~0))} is VALID [2022-02-20 18:29:37,345 INFO L290 TraceCheckUtils]: 52: Hoare triple {56664#(not (= ~nomsg~0 ~p2_old~0))} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {56665#(not (= ~nomsg~0 |ULTIMATE.start_node3_~m3~0#1|))} is VALID [2022-02-20 18:29:37,345 INFO L290 TraceCheckUtils]: 53: Hoare triple {56665#(not (= ~nomsg~0 |ULTIMATE.start_node3_~m3~0#1|))} assume !(node3_~m3~0#1 != ~nomsg~0); {56653#false} is VALID [2022-02-20 18:29:37,345 INFO L290 TraceCheckUtils]: 54: Hoare triple {56653#false} ~mode3~0 := 0; {56653#false} is VALID [2022-02-20 18:29:37,346 INFO L290 TraceCheckUtils]: 55: Hoare triple {56653#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; {56653#false} is VALID [2022-02-20 18:29:37,346 INFO L290 TraceCheckUtils]: 56: Hoare triple {56653#false} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {56653#false} is VALID [2022-02-20 18:29:37,346 INFO L290 TraceCheckUtils]: 57: Hoare triple {56653#false} assume ~r1~0 % 256 >= 3; {56653#false} is VALID [2022-02-20 18:29:37,346 INFO L290 TraceCheckUtils]: 58: Hoare triple {56653#false} assume !(~r1~0 % 256 < 3); {56653#false} is VALID [2022-02-20 18:29:37,346 INFO L290 TraceCheckUtils]: 59: Hoare triple {56653#false} assume !(1 == ~st1~0 + ~st2~0 + ~st3~0);check_~tmp~1#1 := 0; {56653#false} is VALID [2022-02-20 18:29:37,346 INFO L290 TraceCheckUtils]: 60: Hoare triple {56653#false} check_#res#1 := check_~tmp~1#1; {56653#false} is VALID [2022-02-20 18:29:37,347 INFO L290 TraceCheckUtils]: 61: Hoare triple {56653#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {56653#false} is VALID [2022-02-20 18:29:37,347 INFO L290 TraceCheckUtils]: 62: Hoare triple {56653#false} assume 0 == assert_~arg#1 % 256; {56653#false} is VALID [2022-02-20 18:29:37,347 INFO L290 TraceCheckUtils]: 63: Hoare triple {56653#false} assume !false; {56653#false} is VALID [2022-02-20 18:29:37,347 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 7 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 18:29:37,347 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 18:29:37,348 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1041732358] [2022-02-20 18:29:37,348 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1041732358] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 18:29:37,348 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1125214371] [2022-02-20 18:29:37,348 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 18:29:37,348 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 18:29:37,349 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 18:29:37,350 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:29:37,351 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:29:37,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:37,434 INFO L263 TraceCheckSpWp]: Trace formula consists of 280 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 18:29:37,455 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 18:29:37,474 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 18:29:38,574 INFO L290 TraceCheckUtils]: 0: Hoare triple {56652#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {56652#true} is VALID [2022-02-20 18:29:38,574 INFO L290 TraceCheckUtils]: 1: Hoare triple {56652#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {56652#true} is VALID [2022-02-20 18:29:38,575 INFO L290 TraceCheckUtils]: 2: Hoare triple {56652#true} assume 0 == ~r1~0 % 256; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,575 INFO L290 TraceCheckUtils]: 3: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~id1~0 >= 0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,576 INFO L290 TraceCheckUtils]: 4: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume 0 == ~st1~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,576 INFO L290 TraceCheckUtils]: 5: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~send1~0 == ~id1~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,577 INFO L290 TraceCheckUtils]: 6: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume 0 == ~mode1~0 % 256; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,577 INFO L290 TraceCheckUtils]: 7: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~id2~0 >= 0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,577 INFO L290 TraceCheckUtils]: 8: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume 0 == ~st2~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,578 INFO L290 TraceCheckUtils]: 9: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~send2~0 == ~id2~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,578 INFO L290 TraceCheckUtils]: 10: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume 0 == ~mode2~0 % 256; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,578 INFO L290 TraceCheckUtils]: 11: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~id3~0 >= 0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,579 INFO L290 TraceCheckUtils]: 12: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume 0 == ~st3~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,579 INFO L290 TraceCheckUtils]: 13: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~send3~0 == ~id3~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,579 INFO L290 TraceCheckUtils]: 14: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume 0 == ~mode3~0 % 256; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,580 INFO L290 TraceCheckUtils]: 15: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~id1~0 != ~id2~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,580 INFO L290 TraceCheckUtils]: 16: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~id1~0 != ~id3~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,581 INFO L290 TraceCheckUtils]: 17: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,581 INFO L290 TraceCheckUtils]: 18: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} init_#res#1 := init_~tmp~0#1; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,581 INFO L290 TraceCheckUtils]: 19: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,582 INFO L290 TraceCheckUtils]: 20: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume !(0 == assume_abort_if_not_~cond#1); {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,582 INFO L290 TraceCheckUtils]: 21: Hoare triple {56675#(<= (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; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,582 INFO L290 TraceCheckUtils]: 22: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,583 INFO L290 TraceCheckUtils]: 23: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume !(0 != ~mode1~0 % 256); {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,583 INFO L290 TraceCheckUtils]: 24: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,583 INFO L290 TraceCheckUtils]: 25: Hoare triple {56675#(<= (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;~mode1~0 := 1; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,584 INFO L290 TraceCheckUtils]: 26: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,584 INFO L290 TraceCheckUtils]: 27: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume !(0 != ~mode2~0 % 256); {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,585 INFO L290 TraceCheckUtils]: 28: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,585 INFO L290 TraceCheckUtils]: 29: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,585 INFO L290 TraceCheckUtils]: 30: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,586 INFO L290 TraceCheckUtils]: 31: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume !(0 != ~mode3~0 % 256); {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,586 INFO L290 TraceCheckUtils]: 32: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,586 INFO L290 TraceCheckUtils]: 33: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,587 INFO L290 TraceCheckUtils]: 34: Hoare triple {56675#(<= (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; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,587 INFO L290 TraceCheckUtils]: 35: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,587 INFO L290 TraceCheckUtils]: 36: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume !(~r1~0 % 256 >= 3); {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,588 INFO L290 TraceCheckUtils]: 37: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume 0 == ~st1~0 + ~st2~0 + ~st3~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,588 INFO L290 TraceCheckUtils]: 38: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,588 INFO L290 TraceCheckUtils]: 39: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} check_#res#1 := check_~tmp~1#1; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,589 INFO L290 TraceCheckUtils]: 40: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,589 INFO L290 TraceCheckUtils]: 41: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume !(0 == assert_~arg#1 % 256); {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,589 INFO L290 TraceCheckUtils]: 42: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume { :end_inline_assert } true; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,590 INFO L290 TraceCheckUtils]: 43: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {56675#(<= (mod ~r1~0 256) 0)} is VALID [2022-02-20 18:29:38,591 INFO L290 TraceCheckUtils]: 44: Hoare triple {56675#(<= (mod ~r1~0 256) 0)} assume 0 != ~mode1~0 % 256;~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,592 INFO L290 TraceCheckUtils]: 45: Hoare triple {56802#(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); {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,592 INFO L290 TraceCheckUtils]: 46: Hoare triple {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} ~mode1~0 := 0; {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,593 INFO L290 TraceCheckUtils]: 47: Hoare triple {56802#(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~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,593 INFO L290 TraceCheckUtils]: 48: Hoare triple {56802#(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; {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,594 INFO L290 TraceCheckUtils]: 49: Hoare triple {56802#(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); {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,594 INFO L290 TraceCheckUtils]: 50: Hoare triple {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} ~mode2~0 := 0; {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,595 INFO L290 TraceCheckUtils]: 51: Hoare triple {56802#(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~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,596 INFO L290 TraceCheckUtils]: 52: Hoare triple {56802#(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; {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,596 INFO L290 TraceCheckUtils]: 53: Hoare triple {56802#(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); {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,597 INFO L290 TraceCheckUtils]: 54: Hoare triple {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} ~mode3~0 := 0; {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,597 INFO L290 TraceCheckUtils]: 55: Hoare triple {56802#(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; {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,598 INFO L290 TraceCheckUtils]: 56: Hoare triple {56802#(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; {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} is VALID [2022-02-20 18:29:38,599 INFO L290 TraceCheckUtils]: 57: Hoare triple {56802#(and (<= 1 ~r1~0) (<= (div (+ (- 1) ~r1~0) (- 256)) (div (+ (* (- 1) ~r1~0) 1) 256)) (< ~r1~0 257))} assume ~r1~0 % 256 >= 3; {56653#false} is VALID [2022-02-20 18:29:38,599 INFO L290 TraceCheckUtils]: 58: Hoare triple {56653#false} assume !(~r1~0 % 256 < 3); {56653#false} is VALID [2022-02-20 18:29:38,599 INFO L290 TraceCheckUtils]: 59: Hoare triple {56653#false} assume !(1 == ~st1~0 + ~st2~0 + ~st3~0);check_~tmp~1#1 := 0; {56653#false} is VALID [2022-02-20 18:29:38,599 INFO L290 TraceCheckUtils]: 60: Hoare triple {56653#false} check_#res#1 := check_~tmp~1#1; {56653#false} is VALID [2022-02-20 18:29:38,599 INFO L290 TraceCheckUtils]: 61: Hoare triple {56653#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {56653#false} is VALID [2022-02-20 18:29:38,599 INFO L290 TraceCheckUtils]: 62: Hoare triple {56653#false} assume 0 == assert_~arg#1 % 256; {56653#false} is VALID [2022-02-20 18:29:38,600 INFO L290 TraceCheckUtils]: 63: Hoare triple {56653#false} assume !false; {56653#false} is VALID [2022-02-20 18:29:38,600 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 4 proven. 7 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 18:29:38,600 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 18:29:40,327 INFO L290 TraceCheckUtils]: 63: Hoare triple {56653#false} assume !false; {56653#false} is VALID [2022-02-20 18:29:40,328 INFO L290 TraceCheckUtils]: 62: Hoare triple {56653#false} assume 0 == assert_~arg#1 % 256; {56653#false} is VALID [2022-02-20 18:29:40,328 INFO L290 TraceCheckUtils]: 61: Hoare triple {56653#false} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {56653#false} is VALID [2022-02-20 18:29:40,328 INFO L290 TraceCheckUtils]: 60: Hoare triple {56653#false} check_#res#1 := check_~tmp~1#1; {56653#false} is VALID [2022-02-20 18:29:40,328 INFO L290 TraceCheckUtils]: 59: Hoare triple {56653#false} assume !(1 == ~st1~0 + ~st2~0 + ~st3~0);check_~tmp~1#1 := 0; {56653#false} is VALID [2022-02-20 18:29:40,328 INFO L290 TraceCheckUtils]: 58: Hoare triple {56653#false} assume !(~r1~0 % 256 < 3); {56653#false} is VALID [2022-02-20 18:29:40,335 INFO L290 TraceCheckUtils]: 57: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} assume ~r1~0 % 256 >= 3; {56653#false} is VALID [2022-02-20 18:29:40,336 INFO L290 TraceCheckUtils]: 56: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,336 INFO L290 TraceCheckUtils]: 55: Hoare triple {56878#(not (<= 3 (mod ~r1~0 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; {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,337 INFO L290 TraceCheckUtils]: 54: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} ~mode3~0 := 0; {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,337 INFO L290 TraceCheckUtils]: 53: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} assume !(node3_~m3~0#1 != ~nomsg~0); {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,338 INFO L290 TraceCheckUtils]: 52: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} assume 0 != ~mode3~0 % 256;node3_~m3~0#1 := ~p2_old~0;~p2_old~0 := ~nomsg~0; {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,338 INFO L290 TraceCheckUtils]: 51: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,339 INFO L290 TraceCheckUtils]: 50: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} ~mode2~0 := 0; {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,339 INFO L290 TraceCheckUtils]: 49: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} assume !(node2_~m2~0#1 != ~nomsg~0); {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,340 INFO L290 TraceCheckUtils]: 48: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} assume 0 != ~mode2~0 % 256;node2_~m2~0#1 := ~p1_old~0;~p1_old~0 := ~nomsg~0; {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,340 INFO L290 TraceCheckUtils]: 47: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,341 INFO L290 TraceCheckUtils]: 46: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} ~mode1~0 := 0; {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,341 INFO L290 TraceCheckUtils]: 45: Hoare triple {56878#(not (<= 3 (mod ~r1~0 256)))} assume !(node1_~m1~0#1 != ~nomsg~0); {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,342 INFO L290 TraceCheckUtils]: 44: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume 0 != ~mode1~0 % 256;~r1~0 := 1 + ~r1~0 % 256;node1_~m1~0#1 := ~p3_old~0;~p3_old~0 := ~nomsg~0; {56878#(not (<= 3 (mod ~r1~0 256)))} is VALID [2022-02-20 18:29:40,343 INFO L290 TraceCheckUtils]: 43: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,343 INFO L290 TraceCheckUtils]: 42: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume { :end_inline_assert } true; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,343 INFO L290 TraceCheckUtils]: 41: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume !(0 == assert_~arg#1 % 256); {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,344 INFO L290 TraceCheckUtils]: 40: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} main_#t~ret21#1 := check_#res#1;assume { :end_inline_check } true;assume -2147483648 <= main_#t~ret21#1 && main_#t~ret21#1 <= 2147483647;main_~c1~0#1 := main_#t~ret21#1;havoc main_#t~ret21#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; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,344 INFO L290 TraceCheckUtils]: 39: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} check_#res#1 := check_~tmp~1#1; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,345 INFO L290 TraceCheckUtils]: 38: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~r1~0 % 256 < 3;check_~tmp~1#1 := 1; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,345 INFO L290 TraceCheckUtils]: 37: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume 0 == ~st1~0 + ~st2~0 + ~st3~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,345 INFO L290 TraceCheckUtils]: 36: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume !(~r1~0 % 256 >= 3); {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,345 INFO L290 TraceCheckUtils]: 35: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~st1~0 + ~st2~0 + ~st3~0 <= 1; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,346 INFO L290 TraceCheckUtils]: 34: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 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; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,346 INFO L290 TraceCheckUtils]: 33: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} ~p3_new~0 := (if node3_#t~ite6#1 % 256 <= 127 then node3_#t~ite6#1 % 256 else node3_#t~ite6#1 % 256 - 256);havoc node3_#t~ite6#1;~mode3~0 := 1; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,346 INFO L290 TraceCheckUtils]: 32: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~send3~0 != ~nomsg~0 && ~p3_new~0 == ~nomsg~0;node3_#t~ite6#1 := ~send3~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,347 INFO L290 TraceCheckUtils]: 31: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume !(0 != ~mode3~0 % 256); {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,347 INFO L290 TraceCheckUtils]: 30: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume { :end_inline_node2 } true;assume { :begin_inline_node3 } true;havoc node3_#t~ite6#1, node3_~m3~0#1;havoc node3_~m3~0#1;node3_~m3~0#1 := ~nomsg~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,347 INFO L290 TraceCheckUtils]: 29: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} ~p2_new~0 := (if node2_#t~ite5#1 % 256 <= 127 then node2_#t~ite5#1 % 256 else node2_#t~ite5#1 % 256 - 256);havoc node2_#t~ite5#1;~mode2~0 := 1; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,348 INFO L290 TraceCheckUtils]: 28: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~send2~0 != ~nomsg~0 && ~p2_new~0 == ~nomsg~0;node2_#t~ite5#1 := ~send2~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,348 INFO L290 TraceCheckUtils]: 27: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume !(0 != ~mode2~0 % 256); {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,348 INFO L290 TraceCheckUtils]: 26: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume { :end_inline_node1 } true;assume { :begin_inline_node2 } true;havoc node2_#t~ite5#1, node2_~m2~0#1;havoc node2_~m2~0#1;node2_~m2~0#1 := ~nomsg~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,349 INFO L290 TraceCheckUtils]: 25: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 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;~mode1~0 := 1; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,349 INFO L290 TraceCheckUtils]: 24: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~send1~0 != ~nomsg~0 && ~p1_new~0 == ~nomsg~0;node1_#t~ite4#1 := ~send1~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,349 INFO L290 TraceCheckUtils]: 23: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume !(0 != ~mode1~0 % 256); {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,349 INFO L290 TraceCheckUtils]: 22: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume !false;assume { :begin_inline_node1 } true;havoc node1_#t~ite4#1, node1_~m1~0#1;havoc node1_~m1~0#1;node1_~m1~0#1 := ~nomsg~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,350 INFO L290 TraceCheckUtils]: 21: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 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; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,350 INFO L290 TraceCheckUtils]: 20: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume !(0 == assume_abort_if_not_~cond#1); {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,350 INFO L290 TraceCheckUtils]: 19: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} main_#t~ret20#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret20#1 && main_#t~ret20#1 <= 2147483647;main_~i2~0#1 := main_#t~ret20#1;havoc main_#t~ret20#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; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,351 INFO L290 TraceCheckUtils]: 18: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} init_#res#1 := init_~tmp~0#1; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,351 INFO L290 TraceCheckUtils]: 17: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~id2~0 != ~id3~0;init_~tmp~0#1 := 1; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,359 INFO L290 TraceCheckUtils]: 16: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~id1~0 != ~id3~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,360 INFO L290 TraceCheckUtils]: 15: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~id1~0 != ~id2~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,360 INFO L290 TraceCheckUtils]: 14: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume 0 == ~mode3~0 % 256; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,361 INFO L290 TraceCheckUtils]: 13: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~send3~0 == ~id3~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,361 INFO L290 TraceCheckUtils]: 12: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume 0 == ~st3~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,362 INFO L290 TraceCheckUtils]: 11: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~id3~0 >= 0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,362 INFO L290 TraceCheckUtils]: 10: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume 0 == ~mode2~0 % 256; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,363 INFO L290 TraceCheckUtils]: 9: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~send2~0 == ~id2~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,363 INFO L290 TraceCheckUtils]: 8: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume 0 == ~st2~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,363 INFO L290 TraceCheckUtils]: 7: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~id2~0 >= 0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,364 INFO L290 TraceCheckUtils]: 6: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume 0 == ~mode1~0 % 256; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,364 INFO L290 TraceCheckUtils]: 5: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~send1~0 == ~id1~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,365 INFO L290 TraceCheckUtils]: 4: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume 0 == ~st1~0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,365 INFO L290 TraceCheckUtils]: 3: Hoare triple {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} assume ~id1~0 >= 0; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,366 INFO L290 TraceCheckUtils]: 2: Hoare triple {56652#true} assume 0 == ~r1~0 % 256; {56918#(not (<= 3 (mod (+ (mod ~r1~0 256) 1) 256)))} is VALID [2022-02-20 18:29:40,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {56652#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet7#1, main_#t~nondet8#1, main_#t~nondet9#1, 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~ret20#1, main_#t~ret21#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~nondet7#1;havoc main_#t~nondet7#1;assume -128 <= main_#t~nondet8#1 && main_#t~nondet8#1 <= 127;~id1~0 := main_#t~nondet8#1;havoc main_#t~nondet8#1;assume -128 <= main_#t~nondet9#1 && main_#t~nondet9#1 <= 127;~st1~0 := main_#t~nondet9#1;havoc main_#t~nondet9#1;assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127;~send1~0 := main_#t~nondet10#1;havoc main_#t~nondet10#1;~mode1~0 := main_#t~nondet11#1;havoc main_#t~nondet11#1;assume -128 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 127;~id2~0 := main_#t~nondet12#1;havoc main_#t~nondet12#1;assume -128 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 127;~st2~0 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -128 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 127;~send2~0 := main_#t~nondet14#1;havoc main_#t~nondet14#1;~mode2~0 := main_#t~nondet15#1;havoc main_#t~nondet15#1;assume -128 <= main_#t~nondet16#1 && main_#t~nondet16#1 <= 127;~id3~0 := main_#t~nondet16#1;havoc main_#t~nondet16#1;assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127;~st3~0 := main_#t~nondet17#1;havoc main_#t~nondet17#1;assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127;~send3~0 := main_#t~nondet18#1;havoc main_#t~nondet18#1;~mode3~0 := main_#t~nondet19#1;havoc main_#t~nondet19#1;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_~tmp~0#1;havoc init_~tmp~0#1; {56652#true} is VALID [2022-02-20 18:29:40,366 INFO L290 TraceCheckUtils]: 0: Hoare triple {56652#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(41, 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;~p2~0 := 0;~p2_old~0 := 0;~p2_new~0 := 0;~id2~0 := 0;~st2~0 := 0;~send2~0 := 0;~mode2~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; {56652#true} is VALID [2022-02-20 18:29:40,367 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 4 proven. 7 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 18:29:40,368 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1125214371] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 18:29:40,368 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 18:29:40,368 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 4, 4] total 18 [2022-02-20 18:29:40,368 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1596495856] [2022-02-20 18:29:40,368 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 18:29:40,370 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 9.777777777777779) internal successors, (176), 18 states have internal predecessors, (176), 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 64 [2022-02-20 18:29:40,370 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 18:29:40,370 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 9.777777777777779) internal successors, (176), 18 states have internal predecessors, (176), 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:29:40,506 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 176 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 18:29:40,506 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 18:29:40,506 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 18:29:40,506 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 18:29:40,507 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=260, Unknown=0, NotChecked=0, Total=306 [2022-02-20 18:29:40,507 INFO L87 Difference]: Start difference. First operand 2674 states and 3661 transitions. Second operand has 18 states, 18 states have (on average 9.777777777777779) internal successors, (176), 18 states have internal predecessors, (176), 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)