./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 35987657 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -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/AutomizerTermination.xml -i ../sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-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(F end) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash d84130cab59568fb669543ac086f4847eedfc87145b3c30d32e19c1d0d03b42f --- Real Ultimate output --- This is Ultimate 0.2.2-?-3598765 [2022-07-22 02:21:24,576 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-07-22 02:21:24,578 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-07-22 02:21:24,611 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-07-22 02:21:24,612 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-07-22 02:21:24,613 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-07-22 02:21:24,616 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-07-22 02:21:24,618 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-07-22 02:21:24,620 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-07-22 02:21:24,623 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-07-22 02:21:24,624 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-07-22 02:21:24,628 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-07-22 02:21:24,628 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-07-22 02:21:24,630 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-07-22 02:21:24,630 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-07-22 02:21:24,633 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-07-22 02:21:24,633 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-07-22 02:21:24,635 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-07-22 02:21:24,636 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-07-22 02:21:24,641 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-07-22 02:21:24,642 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-07-22 02:21:24,643 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-07-22 02:21:24,644 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-07-22 02:21:24,645 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-07-22 02:21:24,646 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-07-22 02:21:24,651 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-07-22 02:21:24,651 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-07-22 02:21:24,652 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-07-22 02:21:24,653 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-07-22 02:21:24,653 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-07-22 02:21:24,654 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-07-22 02:21:24,654 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-07-22 02:21:24,656 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-07-22 02:21:24,657 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-07-22 02:21:24,658 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-07-22 02:21:24,659 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-07-22 02:21:24,659 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-07-22 02:21:24,660 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-07-22 02:21:24,660 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-07-22 02:21:24,660 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-07-22 02:21:24,661 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-07-22 02:21:24,662 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-07-22 02:21:24,668 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2022-07-22 02:21:24,694 INFO L113 SettingsManager]: Loading preferences was successful [2022-07-22 02:21:24,694 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-07-22 02:21:24,695 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-07-22 02:21:24,695 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-07-22 02:21:24,696 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-07-22 02:21:24,696 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-07-22 02:21:24,697 INFO L138 SettingsManager]: * Use SBE=true [2022-07-22 02:21:24,697 INFO L136 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2022-07-22 02:21:24,697 INFO L138 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2022-07-22 02:21:24,698 INFO L138 SettingsManager]: * Use old map elimination=false [2022-07-22 02:21:24,698 INFO L138 SettingsManager]: * Use external solver (rank synthesis)=false [2022-07-22 02:21:24,698 INFO L138 SettingsManager]: * Use only trivial implications for array writes=true [2022-07-22 02:21:24,698 INFO L138 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2022-07-22 02:21:24,698 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-07-22 02:21:24,699 INFO L138 SettingsManager]: * sizeof long=4 [2022-07-22 02:21:24,699 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-07-22 02:21:24,699 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-07-22 02:21:24,699 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-07-22 02:21:24,699 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-07-22 02:21:24,699 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2022-07-22 02:21:24,700 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2022-07-22 02:21:24,700 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2022-07-22 02:21:24,700 INFO L138 SettingsManager]: * sizeof long double=12 [2022-07-22 02:21:24,700 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-07-22 02:21:24,700 INFO L138 SettingsManager]: * Assume nondeterminstic values are in range=false [2022-07-22 02:21:24,701 INFO L138 SettingsManager]: * Use constant arrays=true [2022-07-22 02:21:24,701 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2022-07-22 02:21:24,701 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-07-22 02:21:24,701 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-07-22 02:21:24,701 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-07-22 02:21:24,702 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-07-22 02:21:24,703 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-07-22 02:21:24,703 INFO L138 SettingsManager]: * TransformationType=MODULO_NEIGHBOR 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(F end) ) 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 -> d84130cab59568fb669543ac086f4847eedfc87145b3c30d32e19c1d0d03b42f [2022-07-22 02:21:24,979 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-07-22 02:21:25,006 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-07-22 02:21:25,008 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-07-22 02:21:25,008 INFO L271 PluginConnector]: Initializing CDTParser... [2022-07-22 02:21:25,020 INFO L275 PluginConnector]: CDTParser initialized [2022-07-22 02:21:25,022 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c [2022-07-22 02:21:25,104 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/43c72f56e/17b4d548f06b47eea5f4e2b3fc405aeb/FLAG3390bfa33 [2022-07-22 02:21:25,644 INFO L306 CDTParser]: Found 1 translation units. [2022-07-22 02:21:25,649 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c [2022-07-22 02:21:25,670 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/43c72f56e/17b4d548f06b47eea5f4e2b3fc405aeb/FLAG3390bfa33 [2022-07-22 02:21:25,909 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/43c72f56e/17b4d548f06b47eea5f4e2b3fc405aeb [2022-07-22 02:21:25,911 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-07-22 02:21:25,924 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-07-22 02:21:25,926 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-07-22 02:21:25,927 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-07-22 02:21:25,929 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-07-22 02:21:25,930 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.07 02:21:25" (1/1) ... [2022-07-22 02:21:25,931 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@606909b7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:25, skipping insertion in model container [2022-07-22 02:21:25,931 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.07 02:21:25" (1/1) ... [2022-07-22 02:21:25,935 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-07-22 02:21:26,005 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-07-22 02:21:26,472 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/product-lines/elevator_spec13_product30.cil.c[61393,61406] [2022-07-22 02:21:26,504 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-22 02:21:26,512 INFO L203 MainTranslator]: Completed pre-run [2022-07-22 02:21:26,618 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/product-lines/elevator_spec13_product30.cil.c[61393,61406] [2022-07-22 02:21:26,632 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-22 02:21:26,656 INFO L208 MainTranslator]: Completed translation [2022-07-22 02:21:26,656 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26 WrapperNode [2022-07-22 02:21:26,656 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-07-22 02:21:26,657 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-07-22 02:21:26,657 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-07-22 02:21:26,657 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-07-22 02:21:26,662 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (1/1) ... [2022-07-22 02:21:26,694 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (1/1) ... [2022-07-22 02:21:27,298 INFO L137 Inliner]: procedures = 93, calls = 346, calls flagged for inlining = 198, calls inlined = 1875, statements flattened = 66503 [2022-07-22 02:21:27,298 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-07-22 02:21:27,299 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-07-22 02:21:27,300 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-07-22 02:21:27,300 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-07-22 02:21:27,306 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (1/1) ... [2022-07-22 02:21:27,306 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (1/1) ... [2022-07-22 02:21:27,484 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (1/1) ... [2022-07-22 02:21:27,484 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (1/1) ... [2022-07-22 02:21:27,887 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (1/1) ... [2022-07-22 02:21:28,231 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (1/1) ... [2022-07-22 02:21:28,376 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (1/1) ... [2022-07-22 02:21:28,489 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-07-22 02:21:28,491 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-07-22 02:21:28,491 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-07-22 02:21:28,492 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-07-22 02:21:28,492 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (1/1) ... [2022-07-22 02:21:28,497 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-22 02:21:28,507 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 02:21:28,520 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-22 02:21:28,537 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2022-07-22 02:21:28,548 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-07-22 02:21:28,548 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-07-22 02:21:28,548 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-07-22 02:21:28,548 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-07-22 02:21:28,735 INFO L234 CfgBuilder]: Building ICFG [2022-07-22 02:21:28,736 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-07-22 02:21:42,669 INFO L275 CfgBuilder]: Performing block encoding [2022-07-22 02:21:42,796 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-07-22 02:21:42,796 INFO L299 CfgBuilder]: Removed 61 assume(true) statements. [2022-07-22 02:21:42,812 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.07 02:21:42 BoogieIcfgContainer [2022-07-22 02:21:42,812 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-07-22 02:21:42,813 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2022-07-22 02:21:42,813 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2022-07-22 02:21:42,815 INFO L275 PluginConnector]: BuchiAutomizer initialized [2022-07-22 02:21:42,816 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-22 02:21:42,816 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 22.07 02:21:25" (1/3) ... [2022-07-22 02:21:42,816 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@d23caec and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 22.07 02:21:42, skipping insertion in model container [2022-07-22 02:21:42,816 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-22 02:21:42,817 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 02:21:26" (2/3) ... [2022-07-22 02:21:42,817 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@d23caec and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 22.07 02:21:42, skipping insertion in model container [2022-07-22 02:21:42,817 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-22 02:21:42,817 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.07 02:21:42" (3/3) ... [2022-07-22 02:21:42,818 INFO L354 chiAutomizerObserver]: Analyzing ICFG elevator_spec13_product30.cil.c [2022-07-22 02:21:43,034 INFO L255 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 02:21:43,035 INFO L256 stractBuchiCegarLoop]: Hoare is false [2022-07-22 02:21:43,035 INFO L257 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 02:21:43,035 INFO L258 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 02:21:43,035 INFO L259 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 02:21:43,035 INFO L260 stractBuchiCegarLoop]: Difference is false [2022-07-22 02:21:43,036 INFO L261 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 02:21:43,036 INFO L265 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 02:21:43,123 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 17932 states, 17931 states have (on average 1.8808209246556244) internal successors, (33725), 17931 states have internal predecessors, (33725), 0 states have call successors, (0), 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-07-22 02:21:43,454 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:21:43,455 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:21:43,455 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:21:43,471 INFO L179 hiAutomatonCegarLoop]: Counterexample stem 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] [2022-07-22 02:21:43,472 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 02:21:43,472 INFO L287 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 02:21:43,533 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 17932 states, 17931 states have (on average 1.8808209246556244) internal successors, (33725), 17931 states have internal predecessors, (33725), 0 states have call successors, (0), 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-07-22 02:21:43,760 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:21:43,761 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:21:43,761 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:21:43,764 INFO L179 hiAutomatonCegarLoop]: Counterexample stem 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] [2022-07-22 02:21:43,764 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 02:21:43,777 INFO L752 eck$LassoCheckResult]: Stem: 7194#ULTIMATE.startENTRYtrue 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 4316#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 3926#L2983true assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 16723#L2976true assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 9521#L2991true main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 8970#L1277true assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 6933#L1250true assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 2413#L95true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 11132#L120true aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 17131#L530true assume 0 == initPersonOnFloor_~floor#1; 11832#L531true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 14350#L638-1true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 13119#L322true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 12583#L334-2true assume { :end_inline_callOnFloor } true; 17701#L674true assume { :end_inline_initPersonOnFloor } true; 13049#L1006true assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 80#L95-1true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 14351#L120-1true angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 6971#L530-1true assume 0 == initPersonOnFloor_~floor#1; 13025#L531-2true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 10085#L638-3true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 2908#L322-2true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 4320#L334-5true assume { :end_inline_callOnFloor } true; 9339#L674-1true assume { :end_inline_initPersonOnFloor } true; 5354#L1017true assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 4548#L1680true __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 17891#L851true assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 17122#L1637true timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 2411#L2587true assume 0 != timeShift_~tmp~24#1; 5433#L2588true assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 17485#L2587-1true assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 5072#L869true assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 3637#L870true assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 12370#L2807true assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~3#1 := 0;existInLiftCallsInDirection_~i~3#1 := 1 + ~currentFloorID~0; 6306#L2811-2true [2022-07-22 02:21:43,777 INFO L754 eck$LassoCheckResult]: Loop: 6306#L2811-2true assume !false; 4903#L2812true assume existInLiftCallsInDirection_~i~3#1 < 5; 507#L2813true assume !(0 == existInLiftCallsInDirection_~i~3#1); 7016#L2826true assume !(1 == existInLiftCallsInDirection_~i~3#1); 7240#L2835true assume !(2 == existInLiftCallsInDirection_~i~3#1); 3716#L2844true assume !(3 == existInLiftCallsInDirection_~i~3#1); 9525#L2853true assume !(4 == existInLiftCallsInDirection_~i~3#1); 975#L2854-1true existInLiftCallsInDirection_~i~3#1 := 1 + existInLiftCallsInDirection_~i~3#1; 6306#L2811-2true [2022-07-22 02:21:43,786 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:21:43,786 INFO L85 PathProgramCache]: Analyzing trace with hash -1529622645, now seen corresponding path program 1 times [2022-07-22 02:21:43,795 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:21:43,795 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [850871507] [2022-07-22 02:21:43,796 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:21:43,797 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:21:43,952 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:21:44,052 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:21:44,052 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:21:44,053 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [850871507] [2022-07-22 02:21:44,054 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [850871507] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:21:44,054 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:21:44,054 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-07-22 02:21:44,055 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [387850058] [2022-07-22 02:21:44,056 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:21:44,059 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:21:44,060 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:21:44,060 INFO L85 PathProgramCache]: Analyzing trace with hash -1374005635, now seen corresponding path program 1 times [2022-07-22 02:21:44,060 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:21:44,061 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1430457162] [2022-07-22 02:21:44,061 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:21:44,061 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:21:44,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:21:44,077 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:21:44,086 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:21:44,104 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:21:44,142 INFO L210 LassoAnalysis]: Preferences: [2022-07-22 02:21:44,142 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-22 02:21:44,143 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-22 02:21:44,143 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-22 02:21:44,143 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2022-07-22 02:21:44,143 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-22 02:21:44,144 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-22 02:21:44,144 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-22 02:21:44,144 INFO L133 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product30.cil.c_Iteration1_Loop [2022-07-22 02:21:44,144 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-22 02:21:44,144 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-22 02:21:44,158 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-22 02:21:44,233 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-22 02:21:44,233 INFO L404 LassoAnalysis]: Checking for nontermination... [2022-07-22 02:21:44,235 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-22 02:21:44,235 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 02:21:44,251 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-22 02:21:44,278 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2022-07-22 02:21:44,278 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-22 02:21:44,290 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2022-07-22 02:21:44,320 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Forceful destruction successful, exit code 0 [2022-07-22 02:21:44,320 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-22 02:21:44,321 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 02:21:44,322 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-22 02:21:44,323 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2022-07-22 02:21:44,326 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2022-07-22 02:21:44,326 INFO L160 nArgumentSynthesizer]: Using integer mode. [2022-07-22 02:21:44,359 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2022-07-22 02:21:44,363 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Forceful destruction successful, exit code 0 [2022-07-22 02:21:44,363 INFO L210 LassoAnalysis]: Preferences: [2022-07-22 02:21:44,363 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2022-07-22 02:21:44,363 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2022-07-22 02:21:44,363 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2022-07-22 02:21:44,363 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2022-07-22 02:21:44,363 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-22 02:21:44,364 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2022-07-22 02:21:44,364 INFO L132 ssoRankerPreferences]: Path of dumped script: [2022-07-22 02:21:44,364 INFO L133 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product30.cil.c_Iteration1_Loop [2022-07-22 02:21:44,364 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2022-07-22 02:21:44,364 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2022-07-22 02:21:44,365 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2022-07-22 02:21:44,424 INFO L294 LassoAnalysis]: Preprocessing complete. [2022-07-22 02:21:44,427 INFO L490 LassoAnalysis]: Using template 'affine'. [2022-07-22 02:21:44,428 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-22 02:21:44,428 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 02:21:44,429 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-22 02:21:44,430 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2022-07-22 02:21:44,431 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2022-07-22 02:21:44,437 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2022-07-22 02:21:44,438 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2022-07-22 02:21:44,440 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2022-07-22 02:21:44,440 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2022-07-22 02:21:44,440 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2022-07-22 02:21:44,442 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2022-07-22 02:21:44,446 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2022-07-22 02:21:44,455 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2022-07-22 02:21:44,461 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2022-07-22 02:21:44,461 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2022-07-22 02:21:44,462 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-22 02:21:44,462 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 02:21:44,480 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-22 02:21:44,514 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2022-07-22 02:21:44,514 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2022-07-22 02:21:44,515 INFO L513 LassoAnalysis]: Proved termination. [2022-07-22 02:21:44,515 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_existInLiftCallsInDirection_~i~3#1) = -1*ULTIMATE.start_existInLiftCallsInDirection_~i~3#1 Supporting invariants [] [2022-07-22 02:21:44,530 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2022-07-22 02:21:44,549 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Ended with exit code 0 [2022-07-22 02:21:44,552 INFO L293 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2022-07-22 02:21:44,572 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:21:44,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:21:44,661 INFO L263 TraceCheckSpWp]: Trace formula consists of 543 conjuncts, 2 conjunts are in the unsatisfiable core [2022-07-22 02:21:44,664 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 02:21:44,713 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:21:44,714 WARN L261 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjunts are in the unsatisfiable core [2022-07-22 02:21:44,715 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 02:21:44,844 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:21:44,868 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 7 loop predicates [2022-07-22 02:21:44,899 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 17932 states, 17931 states have (on average 1.8808209246556244) internal successors, (33725), 17931 states have internal predecessors, (33725), 0 states have call successors, (0), 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 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 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-07-22 02:21:45,651 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Forceful destruction successful, exit code 0 [2022-07-22 02:21:53,089 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 17932 states, 17931 states have (on average 1.8808209246556244) internal successors, (33725), 17931 states have internal predecessors, (33725), 0 states have call successors, (0), 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 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 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) Result 211046 states and 396793 transitions. Complement of second has 18 states. [2022-07-22 02:21:53,092 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 10 states 1 stem states 7 non-accepting loop states 1 accepting loop states [2022-07-22 02:21:53,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 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-07-22 02:21:53,515 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 215267 transitions. [2022-07-22 02:21:53,517 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 215267 transitions. Stem has 34 letters. Loop has 8 letters. [2022-07-22 02:21:53,518 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-22 02:21:53,518 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 215267 transitions. Stem has 42 letters. Loop has 8 letters. [2022-07-22 02:21:53,519 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-22 02:21:53,519 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 215267 transitions. Stem has 34 letters. Loop has 16 letters. [2022-07-22 02:21:53,519 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2022-07-22 02:21:53,520 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 211046 states and 396793 transitions. [2022-07-22 02:21:54,844 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 28728 [2022-07-22 02:21:55,662 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 211046 states to 114375 states and 214990 transitions. [2022-07-22 02:21:55,663 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 114345 [2022-07-22 02:21:55,788 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 114346 [2022-07-22 02:21:55,789 INFO L73 IsDeterministic]: Start isDeterministic. Operand 114375 states and 214990 transitions. [2022-07-22 02:21:55,789 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:21:55,790 INFO L369 hiAutomatonCegarLoop]: Abstraction has 114375 states and 214990 transitions. [2022-07-22 02:21:55,875 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114375 states and 214990 transitions. [2022-07-22 02:21:56,664 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114375 to 32246. [2022-07-22 02:21:56,724 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32246 states, 32246 states have (on average 1.8769769893940333) internal successors, (60525), 32245 states have internal predecessors, (60525), 0 states have call successors, (0), 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-07-22 02:21:56,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32246 states to 32246 states and 60525 transitions. [2022-07-22 02:21:56,791 INFO L392 hiAutomatonCegarLoop]: Abstraction has 32246 states and 60525 transitions. [2022-07-22 02:21:56,792 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:21:56,795 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-07-22 02:21:56,796 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-07-22 02:21:56,797 INFO L87 Difference]: Start difference. First operand 32246 states and 60525 transitions. Second operand has 5 states, 5 states have (on average 6.8) internal successors, (34), 5 states have internal predecessors, (34), 0 states have call successors, (0), 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-07-22 02:21:57,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:21:57,677 INFO L93 Difference]: Finished difference Result 46585 states and 87289 transitions. [2022-07-22 02:21:57,677 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 02:21:57,678 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 46585 states and 87289 transitions. [2022-07-22 02:21:57,895 INFO L131 ngComponentsAnalysis]: Automaton has 78 accepting balls. 15466 [2022-07-22 02:21:58,328 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 46585 states to 46572 states and 87276 transitions. [2022-07-22 02:21:58,328 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 46553 [2022-07-22 02:21:58,372 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 46553 [2022-07-22 02:21:58,373 INFO L73 IsDeterministic]: Start isDeterministic. Operand 46572 states and 87276 transitions. [2022-07-22 02:21:58,442 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:21:58,442 INFO L369 hiAutomatonCegarLoop]: Abstraction has 46572 states and 87276 transitions. [2022-07-22 02:21:58,482 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46572 states and 87276 transitions. [2022-07-22 02:21:58,749 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46572 to 17929. [2022-07-22 02:21:58,773 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17929 states, 17929 states have (on average 1.874003011880194) internal successors, (33599), 17928 states have internal predecessors, (33599), 0 states have call successors, (0), 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-07-22 02:21:58,807 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17929 states to 17929 states and 33599 transitions. [2022-07-22 02:21:58,807 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17929 states and 33599 transitions. [2022-07-22 02:21:58,807 INFO L374 stractBuchiCegarLoop]: Abstraction has 17929 states and 33599 transitions. [2022-07-22 02:21:58,807 INFO L287 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-22 02:21:58,808 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17929 states and 33599 transitions. [2022-07-22 02:21:58,847 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:21:58,848 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:21:58,848 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:21:58,850 INFO L179 hiAutomatonCegarLoop]: Counterexample stem 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] [2022-07-22 02:21:58,850 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:21:58,850 INFO L752 eck$LassoCheckResult]: Stem: 320413#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 316584#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 315985#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 315986#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 322607#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 322176#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 320135#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 313400#L95 assume !(0 == getOrigin_~person#1); 309723#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 309724#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 323765#L530 assume 0 == initPersonOnFloor_~floor#1; 324233#L531 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 308129#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 324879#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 308359#L334-2 assume { :end_inline_callOnFloor } true; 324608#L674 assume { :end_inline_initPersonOnFloor } true; 324843#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 308212#L95-1 assume !(0 == getOrigin_~person#1); 308213#L99-1 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 308963#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 320181#L530-1 assume 0 == initPersonOnFloor_~floor#1; 320182#L531-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 308492#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 314273#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 309037#L334-5 assume { :end_inline_callOnFloor } true; 316591#L674-1 assume { :end_inline_initPersonOnFloor } true; 318096#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 316925#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 316926#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 325877#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 313394#L2587 assume 0 != timeShift_~tmp~24#1; 313395#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 314966#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 317681#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 315501#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 315502#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 317726#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 317727#L2877-2 [2022-07-22 02:21:58,850 INFO L754 eck$LassoCheckResult]: Loop: 317727#L2877-2 assume !false; 314226#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 314227#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 312509#L2886-2 assume !false; 312510#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 313476#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 317727#L2877-2 [2022-07-22 02:21:58,851 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:21:58,851 INFO L85 PathProgramCache]: Analyzing trace with hash 1898401259, now seen corresponding path program 1 times [2022-07-22 02:21:58,851 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:21:58,852 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1942836577] [2022-07-22 02:21:58,852 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:21:58,852 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:21:58,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:21:58,925 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:21:58,925 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:21:58,926 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1942836577] [2022-07-22 02:21:58,926 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1942836577] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:21:58,927 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:21:58,927 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-07-22 02:21:58,927 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1962844701] [2022-07-22 02:21:58,927 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:21:58,927 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:21:58,928 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:21:58,928 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 1 times [2022-07-22 02:21:58,928 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:21:58,928 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2138841405] [2022-07-22 02:21:58,928 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:21:58,928 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:21:58,932 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:21:58,934 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:21:58,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:21:58,941 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:21:58,968 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:21:58,969 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-07-22 02:21:58,969 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-07-22 02:21:58,969 INFO L87 Difference]: Start difference. First operand 17929 states and 33599 transitions. cyclomatic complexity: 15704 Second operand has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 0 states have call successors, (0), 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-07-22 02:22:00,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:00,024 INFO L93 Difference]: Finished difference Result 53570 states and 100367 transitions. [2022-07-22 02:22:00,025 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 02:22:00,026 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 53570 states and 100367 transitions. [2022-07-22 02:22:00,451 INFO L131 ngComponentsAnalysis]: Automaton has 99 accepting balls. 12216 [2022-07-22 02:22:00,659 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 53570 states to 53570 states and 100367 transitions. [2022-07-22 02:22:00,660 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 53513 [2022-07-22 02:22:00,713 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 53513 [2022-07-22 02:22:00,714 INFO L73 IsDeterministic]: Start isDeterministic. Operand 53570 states and 100367 transitions. [2022-07-22 02:22:00,714 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:00,714 INFO L369 hiAutomatonCegarLoop]: Abstraction has 53570 states and 100367 transitions. [2022-07-22 02:22:00,773 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53570 states and 100367 transitions. [2022-07-22 02:22:01,087 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53570 to 17944. [2022-07-22 02:22:01,111 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17944 states, 17944 states have (on average 1.873272403031654) internal successors, (33614), 17943 states have internal predecessors, (33614), 0 states have call successors, (0), 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-07-22 02:22:01,151 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17944 states to 17944 states and 33614 transitions. [2022-07-22 02:22:01,151 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17944 states and 33614 transitions. [2022-07-22 02:22:01,152 INFO L374 stractBuchiCegarLoop]: Abstraction has 17944 states and 33614 transitions. [2022-07-22 02:22:01,152 INFO L287 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-22 02:22:01,153 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17944 states and 33614 transitions. [2022-07-22 02:22:01,206 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:22:01,206 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:01,206 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:01,207 INFO L179 hiAutomatonCegarLoop]: Counterexample stem 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] [2022-07-22 02:22:01,207 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:01,209 INFO L752 eck$LassoCheckResult]: Stem: 391919#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 388091#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 387492#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 387493#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 394112#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 393683#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 391642#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 384907#L95 assume !(0 == getOrigin_~person#1); 381225#L99 assume !(1 == getOrigin_~person#1); 381227#L103 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 384582#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 395272#L530 assume 0 == initPersonOnFloor_~floor#1; 395739#L531 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 379637#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 396388#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 379867#L334-2 assume { :end_inline_callOnFloor } true; 396115#L674 assume { :end_inline_initPersonOnFloor } true; 396352#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 379714#L95-1 assume !(0 == getOrigin_~person#1); 379715#L99-1 assume !(1 == getOrigin_~person#1); 391989#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 380470#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 396845#L530-1 assume 0 == initPersonOnFloor_~floor#1; 396344#L531-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 380000#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 385780#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 380544#L334-5 assume { :end_inline_callOnFloor } true; 388098#L674-1 assume { :end_inline_initPersonOnFloor } true; 389603#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 388432#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 388433#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 397389#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 384901#L2587 assume 0 != timeShift_~tmp~24#1; 384902#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 386474#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 389188#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 387007#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 387008#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 389231#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 389232#L2877-2 [2022-07-22 02:22:01,210 INFO L754 eck$LassoCheckResult]: Loop: 389232#L2877-2 assume !false; 385731#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 385732#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 384015#L2886-2 assume !false; 384016#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 384981#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 389232#L2877-2 [2022-07-22 02:22:01,210 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:01,210 INFO L85 PathProgramCache]: Analyzing trace with hash 1378400671, now seen corresponding path program 1 times [2022-07-22 02:22:01,211 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:01,211 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1897840823] [2022-07-22 02:22:01,211 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:01,211 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:01,222 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:01,237 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:01,238 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:01,238 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1897840823] [2022-07-22 02:22:01,238 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1897840823] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:01,238 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:01,238 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-07-22 02:22:01,238 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1486090344] [2022-07-22 02:22:01,239 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:01,239 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:01,239 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:01,239 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 2 times [2022-07-22 02:22:01,240 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:01,240 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1327308919] [2022-07-22 02:22:01,240 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:01,240 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:01,243 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:01,243 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:01,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:01,247 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:01,260 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:01,261 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-22 02:22:01,261 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-22 02:22:01,261 INFO L87 Difference]: Start difference. First operand 17944 states and 33614 transitions. cyclomatic complexity: 15704 Second operand has 3 states, 3 states have (on average 13.0) internal successors, (39), 3 states have internal predecessors, (39), 0 states have call successors, (0), 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-07-22 02:22:01,903 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:01,904 INFO L93 Difference]: Finished difference Result 35709 states and 66901 transitions. [2022-07-22 02:22:01,904 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-22 02:22:01,905 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 35709 states and 66901 transitions. [2022-07-22 02:22:02,071 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 8144 [2022-07-22 02:22:02,187 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 35709 states to 35709 states and 66901 transitions. [2022-07-22 02:22:02,187 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 35671 [2022-07-22 02:22:02,214 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 35671 [2022-07-22 02:22:02,215 INFO L73 IsDeterministic]: Start isDeterministic. Operand 35709 states and 66901 transitions. [2022-07-22 02:22:02,215 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:02,215 INFO L369 hiAutomatonCegarLoop]: Abstraction has 35709 states and 66901 transitions. [2022-07-22 02:22:02,243 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35709 states and 66901 transitions. [2022-07-22 02:22:02,462 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35709 to 17910. [2022-07-22 02:22:02,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17910 states, 17910 states have (on average 1.8730318257956449) internal successors, (33546), 17909 states have internal predecessors, (33546), 0 states have call successors, (0), 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-07-22 02:22:02,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17910 states to 17910 states and 33546 transitions. [2022-07-22 02:22:02,519 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17910 states and 33546 transitions. [2022-07-22 02:22:02,519 INFO L374 stractBuchiCegarLoop]: Abstraction has 17910 states and 33546 transitions. [2022-07-22 02:22:02,519 INFO L287 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-22 02:22:02,519 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17910 states and 33546 transitions. [2022-07-22 02:22:02,570 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:22:02,571 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:02,571 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:02,572 INFO L179 hiAutomatonCegarLoop]: Counterexample stem 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] [2022-07-22 02:22:02,572 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:02,572 INFO L752 eck$LassoCheckResult]: Stem: 445560#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 441736#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 441137#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 441138#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 447753#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 447324#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 445283#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 438558#L95 assume !(0 == getOrigin_~person#1); 434882#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 434883#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 448910#L530 assume !(0 == initPersonOnFloor_~floor#1); 449658#L557 assume !(1 == initPersonOnFloor_~floor#1); 436861#L584 assume !(2 == initPersonOnFloor_~floor#1); 436862#L611 assume 3 == initPersonOnFloor_~floor#1; 448376#L612 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_3~0 := 1; 433296#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 450018#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 433526#L334-2 assume { :end_inline_callOnFloor } true; 449749#L674 assume { :end_inline_initPersonOnFloor } true; 449982#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 433373#L95-1 assume !(0 == getOrigin_~person#1); 433374#L99-1 assume !(1 == getOrigin_~person#1); 445630#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 434127#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 451056#L530-1 assume 0 == initPersonOnFloor_~floor#1; 449976#L531-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 433659#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 439429#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 434201#L334-5 assume { :end_inline_callOnFloor } true; 441743#L674-1 assume { :end_inline_initPersonOnFloor } true; 443246#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 442077#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 442078#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 451017#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 438552#L2587 assume 0 != timeShift_~tmp~24#1; 438553#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 440121#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 442831#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 440654#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 440655#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 442874#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 442875#L2877-2 [2022-07-22 02:22:02,573 INFO L754 eck$LassoCheckResult]: Loop: 442875#L2877-2 assume !false; 439380#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 439381#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 437669#L2886-2 assume !false; 437670#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 438632#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 442875#L2877-2 [2022-07-22 02:22:02,573 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:02,573 INFO L85 PathProgramCache]: Analyzing trace with hash 368657234, now seen corresponding path program 1 times [2022-07-22 02:22:02,573 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:02,573 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1317844769] [2022-07-22 02:22:02,574 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:02,574 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:02,584 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:02,605 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:02,606 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:02,606 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1317844769] [2022-07-22 02:22:02,606 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1317844769] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:02,606 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:02,606 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-07-22 02:22:02,607 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1808220449] [2022-07-22 02:22:02,607 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:02,607 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:02,607 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:02,608 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 3 times [2022-07-22 02:22:02,608 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:02,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [997009681] [2022-07-22 02:22:02,608 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:02,608 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:02,611 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:02,611 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:02,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:02,615 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:02,629 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:02,629 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-07-22 02:22:02,629 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-07-22 02:22:02,630 INFO L87 Difference]: Start difference. First operand 17910 states and 33546 transitions. cyclomatic complexity: 15670 Second operand has 5 states, 5 states have (on average 8.2) internal successors, (41), 5 states have internal predecessors, (41), 0 states have call successors, (0), 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-07-22 02:22:03,284 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:03,284 INFO L93 Difference]: Finished difference Result 25046 states and 46910 transitions. [2022-07-22 02:22:03,285 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 02:22:03,286 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 25046 states and 46910 transitions. [2022-07-22 02:22:03,422 INFO L131 ngComponentsAnalysis]: Automaton has 42 accepting balls. 7780 [2022-07-22 02:22:03,515 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 25046 states to 25046 states and 46910 transitions. [2022-07-22 02:22:03,515 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25027 [2022-07-22 02:22:03,538 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25027 [2022-07-22 02:22:03,538 INFO L73 IsDeterministic]: Start isDeterministic. Operand 25046 states and 46910 transitions. [2022-07-22 02:22:03,555 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:03,555 INFO L369 hiAutomatonCegarLoop]: Abstraction has 25046 states and 46910 transitions. [2022-07-22 02:22:03,585 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25046 states and 46910 transitions. [2022-07-22 02:22:03,778 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25046 to 17910. [2022-07-22 02:22:03,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17910 states, 17910 states have (on average 1.8726968174204355) internal successors, (33540), 17909 states have internal predecessors, (33540), 0 states have call successors, (0), 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-07-22 02:22:03,841 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17910 states to 17910 states and 33540 transitions. [2022-07-22 02:22:03,842 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17910 states and 33540 transitions. [2022-07-22 02:22:03,842 INFO L374 stractBuchiCegarLoop]: Abstraction has 17910 states and 33540 transitions. [2022-07-22 02:22:03,842 INFO L287 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2022-07-22 02:22:03,842 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17910 states and 33540 transitions. [2022-07-22 02:22:03,953 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:22:03,954 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:03,954 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:03,954 INFO L179 hiAutomatonCegarLoop]: Counterexample stem 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-07-22 02:22:03,954 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:03,955 INFO L752 eck$LassoCheckResult]: Stem: 488529#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 484705#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 484106#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 484107#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 490723#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 490293#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 488252#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 481527#L95 assume !(0 == getOrigin_~person#1); 477854#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 477855#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 491879#L530 assume !(0 == initPersonOnFloor_~floor#1); 492627#L557 assume !(1 == initPersonOnFloor_~floor#1); 479830#L584 assume !(2 == initPersonOnFloor_~floor#1); 479831#L611 assume 3 == initPersonOnFloor_~floor#1; 491345#L612 assume !(0 == initPersonOnFloor_~person#1); 491346#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 476265#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 492987#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 476495#L334-2 assume { :end_inline_callOnFloor } true; 492718#L674 assume { :end_inline_initPersonOnFloor } true; 492951#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 476342#L95-1 assume !(0 == getOrigin_~person#1); 476343#L99-1 assume !(1 == getOrigin_~person#1); 488599#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 477096#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 494025#L530-1 assume 0 == initPersonOnFloor_~floor#1; 492945#L531-2 assume !(0 == initPersonOnFloor_~person#1); 492780#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 476628#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 482398#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 477170#L334-5 assume { :end_inline_callOnFloor } true; 484712#L674-1 assume { :end_inline_initPersonOnFloor } true; 486215#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 485046#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 485047#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 493986#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 481521#L2587 assume 0 != timeShift_~tmp~24#1; 481522#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 483090#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 485800#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 483625#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 483626#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 485843#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 485844#L2877-2 [2022-07-22 02:22:03,955 INFO L754 eck$LassoCheckResult]: Loop: 485844#L2877-2 assume !false; 482351#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 482352#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 480638#L2886-2 assume !false; 480639#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 481603#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 485844#L2877-2 [2022-07-22 02:22:03,955 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:03,956 INFO L85 PathProgramCache]: Analyzing trace with hash 590101782, now seen corresponding path program 1 times [2022-07-22 02:22:03,956 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:03,956 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1049858940] [2022-07-22 02:22:03,956 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:03,956 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:03,967 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:03,986 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:03,986 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:03,986 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1049858940] [2022-07-22 02:22:03,987 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1049858940] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:03,987 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:03,987 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-07-22 02:22:03,987 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [814528861] [2022-07-22 02:22:03,987 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:03,987 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:03,988 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:03,988 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 4 times [2022-07-22 02:22:03,988 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:03,988 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [883578396] [2022-07-22 02:22:03,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:03,988 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:03,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:03,992 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:03,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:03,995 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:04,010 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:04,011 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-07-22 02:22:04,011 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-07-22 02:22:04,012 INFO L87 Difference]: Start difference. First operand 17910 states and 33540 transitions. cyclomatic complexity: 15664 Second operand has 4 states, 4 states have (on average 10.75) internal successors, (43), 4 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-07-22 02:22:05,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:05,037 INFO L93 Difference]: Finished difference Result 53529 states and 100281 transitions. [2022-07-22 02:22:05,037 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 02:22:05,039 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 53529 states and 100281 transitions. [2022-07-22 02:22:05,256 INFO L131 ngComponentsAnalysis]: Automaton has 99 accepting balls. 12216 [2022-07-22 02:22:05,447 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 53529 states to 53529 states and 100281 transitions. [2022-07-22 02:22:05,447 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 53472 [2022-07-22 02:22:05,485 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 53472 [2022-07-22 02:22:05,486 INFO L73 IsDeterministic]: Start isDeterministic. Operand 53529 states and 100281 transitions. [2022-07-22 02:22:05,509 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:05,509 INFO L369 hiAutomatonCegarLoop]: Abstraction has 53529 states and 100281 transitions. [2022-07-22 02:22:05,550 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53529 states and 100281 transitions. [2022-07-22 02:22:05,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53529 to 17914. [2022-07-22 02:22:05,847 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17914 states, 17914 states have (on average 1.8724461315172491) internal successors, (33543), 17913 states have internal predecessors, (33543), 0 states have call successors, (0), 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-07-22 02:22:05,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17914 states to 17914 states and 33543 transitions. [2022-07-22 02:22:05,885 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17914 states and 33543 transitions. [2022-07-22 02:22:05,885 INFO L374 stractBuchiCegarLoop]: Abstraction has 17914 states and 33543 transitions. [2022-07-22 02:22:05,885 INFO L287 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2022-07-22 02:22:05,886 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17914 states and 33543 transitions. [2022-07-22 02:22:05,937 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:22:05,938 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:05,938 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:05,938 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 02:22:05,938 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:05,939 INFO L752 eck$LassoCheckResult]: Stem: 559979#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 556155#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 555556#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 555557#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 562173#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 561743#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 559702#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 552975#L95 assume !(0 == getOrigin_~person#1); 549302#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 549303#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 563330#L530 assume !(0 == initPersonOnFloor_~floor#1); 564078#L557 assume !(1 == initPersonOnFloor_~floor#1); 551278#L584 assume !(2 == initPersonOnFloor_~floor#1); 551279#L611 assume 3 == initPersonOnFloor_~floor#1; 562796#L612 assume !(0 == initPersonOnFloor_~person#1); 562797#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 547713#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 564438#L322 assume !(0 == callOnFloor_~floorID#1); 548119#L325 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 547943#L334-2 assume { :end_inline_callOnFloor } true; 564169#L674 assume { :end_inline_initPersonOnFloor } true; 564402#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 547790#L95-1 assume !(0 == getOrigin_~person#1); 547791#L99-1 assume !(1 == getOrigin_~person#1); 560049#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 548544#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 564895#L530-1 assume 0 == initPersonOnFloor_~floor#1; 564396#L531-2 assume !(0 == initPersonOnFloor_~person#1); 564231#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 553868#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 562597#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 548618#L334-5 assume { :end_inline_callOnFloor } true; 556162#L674-1 assume { :end_inline_initPersonOnFloor } true; 557665#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 556496#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 556497#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 565438#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 552969#L2587 assume 0 != timeShift_~tmp~24#1; 552970#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 554539#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 557250#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 555074#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 555075#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 557293#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 557294#L2877-2 [2022-07-22 02:22:05,939 INFO L754 eck$LassoCheckResult]: Loop: 557294#L2877-2 assume !false; 553797#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 553798#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 552086#L2886-2 assume !false; 552087#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 553051#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 557294#L2877-2 [2022-07-22 02:22:05,939 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:05,939 INFO L85 PathProgramCache]: Analyzing trace with hash -1215423119, now seen corresponding path program 1 times [2022-07-22 02:22:05,940 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:05,940 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1870102102] [2022-07-22 02:22:05,940 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:05,940 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:05,951 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:05,967 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:05,967 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:05,968 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1870102102] [2022-07-22 02:22:05,968 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1870102102] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:05,968 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:05,968 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-07-22 02:22:05,968 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1727115541] [2022-07-22 02:22:05,968 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:05,969 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:05,969 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:05,969 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 5 times [2022-07-22 02:22:05,969 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:05,969 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1486356882] [2022-07-22 02:22:05,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:05,970 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:05,973 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:05,973 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:05,974 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:05,976 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:05,989 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:05,989 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-07-22 02:22:05,989 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-07-22 02:22:05,989 INFO L87 Difference]: Start difference. First operand 17914 states and 33543 transitions. cyclomatic complexity: 15663 Second operand has 4 states, 4 states have (on average 11.0) internal successors, (44), 4 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-22 02:22:06,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:06,873 INFO L93 Difference]: Finished difference Result 53534 states and 100283 transitions. [2022-07-22 02:22:06,874 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 02:22:06,874 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 53534 states and 100283 transitions. [2022-07-22 02:22:07,371 INFO L131 ngComponentsAnalysis]: Automaton has 99 accepting balls. 12216 [2022-07-22 02:22:07,581 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 53534 states to 53534 states and 100283 transitions. [2022-07-22 02:22:07,581 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 53477 [2022-07-22 02:22:07,630 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 53477 [2022-07-22 02:22:07,630 INFO L73 IsDeterministic]: Start isDeterministic. Operand 53534 states and 100283 transitions. [2022-07-22 02:22:07,630 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:07,630 INFO L369 hiAutomatonCegarLoop]: Abstraction has 53534 states and 100283 transitions. [2022-07-22 02:22:07,672 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53534 states and 100283 transitions. [2022-07-22 02:22:07,957 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53534 to 17920. [2022-07-22 02:22:07,979 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17920 states, 17920 states have (on average 1.8720982142857143) internal successors, (33548), 17919 states have internal predecessors, (33548), 0 states have call successors, (0), 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-07-22 02:22:08,015 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17920 states to 17920 states and 33548 transitions. [2022-07-22 02:22:08,015 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17920 states and 33548 transitions. [2022-07-22 02:22:08,015 INFO L374 stractBuchiCegarLoop]: Abstraction has 17920 states and 33548 transitions. [2022-07-22 02:22:08,015 INFO L287 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2022-07-22 02:22:08,015 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17920 states and 33548 transitions. [2022-07-22 02:22:08,073 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:22:08,073 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:08,073 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:08,074 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 02:22:08,074 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:08,076 INFO L752 eck$LassoCheckResult]: Stem: 631439#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 627614#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 627015#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 627016#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 633632#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 633203#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 631162#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 624433#L95 assume !(0 == getOrigin_~person#1); 620755#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 620756#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 634789#L530 assume !(0 == initPersonOnFloor_~floor#1); 635537#L557 assume !(1 == initPersonOnFloor_~floor#1); 622734#L584 assume !(2 == initPersonOnFloor_~floor#1); 622735#L611 assume 3 == initPersonOnFloor_~floor#1; 634255#L612 assume !(0 == initPersonOnFloor_~person#1); 634256#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 619170#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 635897#L322 assume !(0 == callOnFloor_~floorID#1); 619576#L325 assume !(1 == callOnFloor_~floorID#1); 619577#L328 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 619400#L334-2 assume { :end_inline_callOnFloor } true; 635628#L674 assume { :end_inline_initPersonOnFloor } true; 635861#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 619247#L95-1 assume !(0 == getOrigin_~person#1); 619248#L99-1 assume !(1 == getOrigin_~person#1); 631509#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 620001#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 636354#L530-1 assume 0 == initPersonOnFloor_~floor#1; 635855#L531-2 assume !(0 == initPersonOnFloor_~person#1); 635690#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 625327#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 636947#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 623560#L334-5 assume { :end_inline_callOnFloor } true; 627621#L674-1 assume { :end_inline_initPersonOnFloor } true; 629124#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 627955#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 627956#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 636898#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 624427#L2587 assume 0 != timeShift_~tmp~24#1; 624428#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 625998#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 628709#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 626531#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 626532#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 628752#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 628753#L2877-2 [2022-07-22 02:22:08,076 INFO L754 eck$LassoCheckResult]: Loop: 628753#L2877-2 assume !false; 625255#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 625256#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 623543#L2886-2 assume !false; 623544#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 624507#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 628753#L2877-2 [2022-07-22 02:22:08,077 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:08,077 INFO L85 PathProgramCache]: Analyzing trace with hash -1197021167, now seen corresponding path program 1 times [2022-07-22 02:22:08,077 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:08,077 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1331385003] [2022-07-22 02:22:08,077 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:08,077 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:08,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:08,131 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:08,131 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:08,131 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1331385003] [2022-07-22 02:22:08,131 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1331385003] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:08,132 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:08,132 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-07-22 02:22:08,132 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [583693234] [2022-07-22 02:22:08,132 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:08,132 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:08,133 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:08,133 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 6 times [2022-07-22 02:22:08,133 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:08,133 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1059009902] [2022-07-22 02:22:08,133 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:08,133 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:08,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:08,136 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:08,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:08,139 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:08,151 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:08,151 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-07-22 02:22:08,151 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-07-22 02:22:08,152 INFO L87 Difference]: Start difference. First operand 17920 states and 33548 transitions. cyclomatic complexity: 15662 Second operand has 4 states, 4 states have (on average 11.25) internal successors, (45), 4 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-22 02:22:09,086 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:09,087 INFO L93 Difference]: Finished difference Result 53541 states and 100287 transitions. [2022-07-22 02:22:09,087 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 02:22:09,089 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 53541 states and 100287 transitions. [2022-07-22 02:22:09,325 INFO L131 ngComponentsAnalysis]: Automaton has 99 accepting balls. 12216 [2022-07-22 02:22:09,496 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 53541 states to 53541 states and 100287 transitions. [2022-07-22 02:22:09,496 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 53484 [2022-07-22 02:22:09,537 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 53484 [2022-07-22 02:22:09,537 INFO L73 IsDeterministic]: Start isDeterministic. Operand 53541 states and 100287 transitions. [2022-07-22 02:22:09,860 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:09,860 INFO L369 hiAutomatonCegarLoop]: Abstraction has 53541 states and 100287 transitions. [2022-07-22 02:22:09,901 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53541 states and 100287 transitions. [2022-07-22 02:22:10,156 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53541 to 17928. [2022-07-22 02:22:10,177 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17928 states, 17928 states have (on average 1.8716532797858099) internal successors, (33555), 17927 states have internal predecessors, (33555), 0 states have call successors, (0), 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-07-22 02:22:10,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17928 states to 17928 states and 33555 transitions. [2022-07-22 02:22:10,209 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17928 states and 33555 transitions. [2022-07-22 02:22:10,209 INFO L374 stractBuchiCegarLoop]: Abstraction has 17928 states and 33555 transitions. [2022-07-22 02:22:10,209 INFO L287 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2022-07-22 02:22:10,209 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17928 states and 33555 transitions. [2022-07-22 02:22:10,250 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:22:10,251 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:10,251 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:10,251 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 02:22:10,251 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:10,252 INFO L752 eck$LassoCheckResult]: Stem: 702911#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 699086#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 698486#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 698487#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 705105#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 704675#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 702634#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 695905#L95 assume !(0 == getOrigin_~person#1); 692231#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 692232#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 706262#L530 assume !(0 == initPersonOnFloor_~floor#1); 707010#L557 assume !(1 == initPersonOnFloor_~floor#1); 694205#L584 assume !(2 == initPersonOnFloor_~floor#1); 694206#L611 assume 3 == initPersonOnFloor_~floor#1; 705728#L612 assume !(0 == initPersonOnFloor_~person#1); 705729#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 690640#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 707370#L322 assume !(0 == callOnFloor_~floorID#1); 691046#L325 assume !(1 == callOnFloor_~floorID#1); 691047#L328 assume !(2 == callOnFloor_~floorID#1); 690869#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 690870#L334-2 assume { :end_inline_callOnFloor } true; 707101#L674 assume { :end_inline_initPersonOnFloor } true; 707334#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 690723#L95-1 assume !(0 == getOrigin_~person#1); 690724#L99-1 assume !(1 == getOrigin_~person#1); 702981#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 691471#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 707827#L530-1 assume 0 == initPersonOnFloor_~floor#1; 707328#L531-2 assume !(0 == initPersonOnFloor_~person#1); 707163#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 696798#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 708420#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 698608#L334-5 assume { :end_inline_callOnFloor } true; 699093#L674-1 assume { :end_inline_initPersonOnFloor } true; 700596#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 699427#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 699428#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 708371#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 695899#L2587 assume 0 != timeShift_~tmp~24#1; 695900#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 697469#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 700181#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 698004#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 698005#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 700224#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 700225#L2877-2 [2022-07-22 02:22:10,252 INFO L754 eck$LassoCheckResult]: Loop: 700225#L2877-2 assume !false; 696729#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 696730#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 695015#L2886-2 assume !false; 695016#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 695981#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 700225#L2877-2 [2022-07-22 02:22:10,252 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:10,252 INFO L85 PathProgramCache]: Analyzing trace with hash -471461620, now seen corresponding path program 1 times [2022-07-22 02:22:10,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:10,253 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1808155003] [2022-07-22 02:22:10,253 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:10,253 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:10,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:10,280 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:10,281 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:10,281 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1808155003] [2022-07-22 02:22:10,281 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1808155003] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:10,281 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:10,281 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-07-22 02:22:10,281 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [219865827] [2022-07-22 02:22:10,281 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:10,282 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:10,282 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:10,282 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 7 times [2022-07-22 02:22:10,282 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:10,282 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1932326641] [2022-07-22 02:22:10,282 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:10,283 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:10,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:10,285 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:10,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:10,287 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:10,298 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:10,299 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-07-22 02:22:10,299 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-07-22 02:22:10,299 INFO L87 Difference]: Start difference. First operand 17928 states and 33555 transitions. cyclomatic complexity: 15661 Second operand has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-22 02:22:11,153 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:11,153 INFO L93 Difference]: Finished difference Result 39392 states and 73760 transitions. [2022-07-22 02:22:11,154 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-07-22 02:22:11,154 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 39392 states and 73760 transitions. [2022-07-22 02:22:11,305 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 15196 [2022-07-22 02:22:11,433 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 39392 states to 39392 states and 73760 transitions. [2022-07-22 02:22:11,433 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 39373 [2022-07-22 02:22:11,458 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 39373 [2022-07-22 02:22:11,459 INFO L73 IsDeterministic]: Start isDeterministic. Operand 39392 states and 73760 transitions. [2022-07-22 02:22:11,478 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:11,478 INFO L369 hiAutomatonCegarLoop]: Abstraction has 39392 states and 73760 transitions. [2022-07-22 02:22:11,501 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39392 states and 73760 transitions. [2022-07-22 02:22:11,690 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39392 to 17914. [2022-07-22 02:22:11,710 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17914 states, 17914 states have (on average 1.8716646198503963) internal successors, (33529), 17913 states have internal predecessors, (33529), 0 states have call successors, (0), 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-07-22 02:22:11,741 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17914 states to 17914 states and 33529 transitions. [2022-07-22 02:22:11,742 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17914 states and 33529 transitions. [2022-07-22 02:22:11,742 INFO L374 stractBuchiCegarLoop]: Abstraction has 17914 states and 33529 transitions. [2022-07-22 02:22:11,742 INFO L287 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2022-07-22 02:22:11,742 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17914 states and 33529 transitions. [2022-07-22 02:22:11,783 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:22:11,784 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:11,784 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:11,784 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 02:22:11,784 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:11,785 INFO L752 eck$LassoCheckResult]: Stem: 760241#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 756417#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 755817#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 755818#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 762436#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 762006#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 759966#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 753237#L95 assume !(0 == getOrigin_~person#1); 749563#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 749564#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 763591#L530 assume !(0 == initPersonOnFloor_~floor#1); 764339#L557 assume !(1 == initPersonOnFloor_~floor#1); 751539#L584 assume !(2 == initPersonOnFloor_~floor#1); 751540#L611 assume 3 == initPersonOnFloor_~floor#1; 763057#L612 assume !(0 == initPersonOnFloor_~person#1); 763058#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 747976#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 764696#L322 assume !(0 == callOnFloor_~floorID#1); 748382#L325 assume !(1 == callOnFloor_~floorID#1); 748383#L328 assume !(2 == callOnFloor_~floorID#1); 748205#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 748206#L334-2 assume { :end_inline_callOnFloor } true; 764430#L674 assume { :end_inline_initPersonOnFloor } true; 764660#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 748053#L95-1 assume !(0 == getOrigin_~person#1); 748054#L99-1 assume !(1 == getOrigin_~person#1); 760310#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 764967#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 760011#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 760012#L557-1 assume 1 == initPersonOnFloor_~floor#1; 762924#L558-2 assume !(0 == initPersonOnFloor_~person#1); 761503#L561-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_1~0 := 1; 752343#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 765733#L322-2 assume !(0 == callOnFloor_~floorID#1); 765731#L325-2 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 755936#L334-5 assume { :end_inline_callOnFloor } true; 756424#L674-1 assume { :end_inline_initPersonOnFloor } true; 757927#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 756758#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 756759#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 765695#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 753231#L2587 assume 0 != timeShift_~tmp~24#1; 753232#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 754799#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 757512#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 755334#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 755335#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 757555#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 757556#L2877-2 [2022-07-22 02:22:11,785 INFO L754 eck$LassoCheckResult]: Loop: 757556#L2877-2 assume !false; 754059#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 754060#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 752348#L2886-2 assume !false; 752349#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 753313#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 757556#L2877-2 [2022-07-22 02:22:11,785 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:11,785 INFO L85 PathProgramCache]: Analyzing trace with hash 1355773026, now seen corresponding path program 1 times [2022-07-22 02:22:11,785 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:11,786 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1595350245] [2022-07-22 02:22:11,786 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:11,786 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:11,795 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:11,814 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:11,815 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:11,815 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1595350245] [2022-07-22 02:22:11,815 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1595350245] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:11,815 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:11,815 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-07-22 02:22:11,815 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1029450753] [2022-07-22 02:22:11,815 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:11,816 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:11,816 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:11,816 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 8 times [2022-07-22 02:22:11,816 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:11,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1733872647] [2022-07-22 02:22:11,816 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:11,817 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:11,819 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:11,819 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:11,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:11,821 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:11,833 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:11,833 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-07-22 02:22:11,834 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-07-22 02:22:11,834 INFO L87 Difference]: Start difference. First operand 17914 states and 33529 transitions. cyclomatic complexity: 15649 Second operand has 5 states, 5 states have (on average 9.6) internal successors, (48), 5 states have internal predecessors, (48), 0 states have call successors, (0), 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-07-22 02:22:12,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:12,996 INFO L93 Difference]: Finished difference Result 39366 states and 73711 transitions. [2022-07-22 02:22:12,997 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-07-22 02:22:12,999 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 39366 states and 73711 transitions. [2022-07-22 02:22:13,252 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 15196 [2022-07-22 02:22:13,375 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 39366 states to 39366 states and 73711 transitions. [2022-07-22 02:22:13,375 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 39347 [2022-07-22 02:22:13,411 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 39347 [2022-07-22 02:22:13,412 INFO L73 IsDeterministic]: Start isDeterministic. Operand 39366 states and 73711 transitions. [2022-07-22 02:22:13,430 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:13,430 INFO L369 hiAutomatonCegarLoop]: Abstraction has 39366 states and 73711 transitions. [2022-07-22 02:22:13,466 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39366 states and 73711 transitions. [2022-07-22 02:22:13,931 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39366 to 17908. [2022-07-22 02:22:13,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17908 states, 17908 states have (on average 1.8715657806566897) internal successors, (33516), 17907 states have internal predecessors, (33516), 0 states have call successors, (0), 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-07-22 02:22:13,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17908 states to 17908 states and 33516 transitions. [2022-07-22 02:22:13,985 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17908 states and 33516 transitions. [2022-07-22 02:22:13,985 INFO L374 stractBuchiCegarLoop]: Abstraction has 17908 states and 33516 transitions. [2022-07-22 02:22:13,986 INFO L287 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2022-07-22 02:22:13,986 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17908 states and 33516 transitions. [2022-07-22 02:22:14,029 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:22:14,029 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:14,029 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:14,030 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 02:22:14,030 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:14,030 INFO L752 eck$LassoCheckResult]: Stem: 817528#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 813707#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 813107#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 813108#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 819722#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 819292#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 817254#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 810530#L95 assume !(0 == getOrigin_~person#1); 806856#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 806857#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 820879#L530 assume !(0 == initPersonOnFloor_~floor#1); 821627#L557 assume !(1 == initPersonOnFloor_~floor#1); 808835#L584 assume !(2 == initPersonOnFloor_~floor#1); 808836#L611 assume 3 == initPersonOnFloor_~floor#1; 820345#L612 assume !(0 == initPersonOnFloor_~person#1); 820346#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 805272#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 821984#L322 assume !(0 == callOnFloor_~floorID#1); 805678#L325 assume !(1 == callOnFloor_~floorID#1); 805679#L328 assume !(2 == callOnFloor_~floorID#1); 805501#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 805502#L334-2 assume { :end_inline_callOnFloor } true; 821718#L674 assume { :end_inline_initPersonOnFloor } true; 821948#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 805349#L95-1 assume !(0 == getOrigin_~person#1); 805350#L99-1 assume !(1 == getOrigin_~person#1); 817599#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 822255#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 817299#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 817300#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 822525#L584-1 assume 2 == initPersonOnFloor_~floor#1; 819649#L585-2 assume !(0 == initPersonOnFloor_~person#1); 815073#L588-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_2~0 := 1; 808854#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 823022#L322-2 assume !(0 == callOnFloor_~floorID#1); 823021#L325-2 assume !(1 == callOnFloor_~floorID#1); 823020#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 813223#L334-5 assume { :end_inline_callOnFloor } true; 813714#L674-1 assume { :end_inline_initPersonOnFloor } true; 815216#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 814048#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 814049#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 822984#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 810524#L2587 assume 0 != timeShift_~tmp~24#1; 810525#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 812090#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 814801#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 812623#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 812624#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 814844#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 814845#L2877-2 [2022-07-22 02:22:14,031 INFO L754 eck$LassoCheckResult]: Loop: 814845#L2877-2 assume !false; 811352#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 811353#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 809641#L2886-2 assume !false; 809642#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 810606#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 814845#L2877-2 [2022-07-22 02:22:14,031 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:14,031 INFO L85 PathProgramCache]: Analyzing trace with hash 1516125827, now seen corresponding path program 1 times [2022-07-22 02:22:14,031 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:14,031 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2130990245] [2022-07-22 02:22:14,032 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:14,032 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:14,043 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:14,059 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:14,059 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:14,059 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2130990245] [2022-07-22 02:22:14,059 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2130990245] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:14,059 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:14,059 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-07-22 02:22:14,059 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1384348970] [2022-07-22 02:22:14,060 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:14,060 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:14,060 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:14,060 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 9 times [2022-07-22 02:22:14,060 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:14,060 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1240323813] [2022-07-22 02:22:14,061 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:14,061 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:14,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:14,063 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:14,064 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:14,065 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:14,077 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:14,078 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-07-22 02:22:14,078 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-07-22 02:22:14,078 INFO L87 Difference]: Start difference. First operand 17908 states and 33516 transitions. cyclomatic complexity: 15642 Second operand has 4 states, 4 states have (on average 12.5) internal successors, (50), 4 states have internal predecessors, (50), 0 states have call successors, (0), 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-07-22 02:22:14,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:14,463 INFO L93 Difference]: Finished difference Result 25085 states and 46937 transitions. [2022-07-22 02:22:14,463 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 02:22:14,464 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 25085 states and 46937 transitions. [2022-07-22 02:22:14,567 INFO L131 ngComponentsAnalysis]: Automaton has 42 accepting balls. 7780 [2022-07-22 02:22:14,655 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 25085 states to 25085 states and 46937 transitions. [2022-07-22 02:22:14,656 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25066 [2022-07-22 02:22:14,672 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25066 [2022-07-22 02:22:14,672 INFO L73 IsDeterministic]: Start isDeterministic. Operand 25085 states and 46937 transitions. [2022-07-22 02:22:14,673 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:14,673 INFO L369 hiAutomatonCegarLoop]: Abstraction has 25085 states and 46937 transitions. [2022-07-22 02:22:14,692 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25085 states and 46937 transitions. [2022-07-22 02:22:14,838 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25085 to 17908. [2022-07-22 02:22:14,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17908 states, 17908 states have (on average 1.8711190529372348) internal successors, (33508), 17907 states have internal predecessors, (33508), 0 states have call successors, (0), 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-07-22 02:22:15,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17908 states to 17908 states and 33508 transitions. [2022-07-22 02:22:15,253 INFO L392 hiAutomatonCegarLoop]: Abstraction has 17908 states and 33508 transitions. [2022-07-22 02:22:15,253 INFO L374 stractBuchiCegarLoop]: Abstraction has 17908 states and 33508 transitions. [2022-07-22 02:22:15,254 INFO L287 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2022-07-22 02:22:15,254 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17908 states and 33508 transitions. [2022-07-22 02:22:15,301 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2022-07-22 02:22:15,302 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:15,302 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:15,302 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 02:22:15,302 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:15,303 INFO L752 eck$LassoCheckResult]: Stem: 860535#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 856712#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 856112#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 856113#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 862726#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 862297#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 860260#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 853533#L95 assume !(0 == getOrigin_~person#1); 849859#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 849860#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 863882#L530 assume !(0 == initPersonOnFloor_~floor#1); 864630#L557 assume !(1 == initPersonOnFloor_~floor#1); 851838#L584 assume !(2 == initPersonOnFloor_~floor#1); 851839#L611 assume 3 == initPersonOnFloor_~floor#1; 863348#L612 assume !(0 == initPersonOnFloor_~person#1); 863349#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 848275#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 864987#L322 assume !(0 == callOnFloor_~floorID#1); 848681#L325 assume !(1 == callOnFloor_~floorID#1); 848682#L328 assume !(2 == callOnFloor_~floorID#1); 848504#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 848505#L334-2 assume { :end_inline_callOnFloor } true; 864721#L674 assume { :end_inline_initPersonOnFloor } true; 864951#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 848352#L95-1 assume !(0 == getOrigin_~person#1); 848353#L99-1 assume !(1 == getOrigin_~person#1); 860604#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 865258#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 860305#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 860306#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 865528#L584-1 assume 2 == initPersonOnFloor_~floor#1; 862654#L585-2 assume !(0 == initPersonOnFloor_~person#1); 858079#L588-2 assume !(1 == initPersonOnFloor_~person#1); 858080#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 851855#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 866024#L322-2 assume !(0 == callOnFloor_~floorID#1); 866023#L325-2 assume !(1 == callOnFloor_~floorID#1); 866022#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 856226#L334-5 assume { :end_inline_callOnFloor } true; 856719#L674-1 assume { :end_inline_initPersonOnFloor } true; 858222#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 857053#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 857054#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 865986#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 853527#L2587 assume 0 != timeShift_~tmp~24#1; 853528#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 855094#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 857807#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 855627#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 855628#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 857850#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 857851#L2877-2 [2022-07-22 02:22:15,303 INFO L754 eck$LassoCheckResult]: Loop: 857851#L2877-2 assume !false; 854355#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 854356#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 852644#L2886-2 assume !false; 852645#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 853607#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 857851#L2877-2 [2022-07-22 02:22:15,303 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:15,303 INFO L85 PathProgramCache]: Analyzing trace with hash -1488774646, now seen corresponding path program 1 times [2022-07-22 02:22:15,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:15,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1905815931] [2022-07-22 02:22:15,304 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:15,304 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:15,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:15,408 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:15,412 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:15,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1905815931] [2022-07-22 02:22:15,412 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1905815931] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:15,413 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:15,413 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-22 02:22:15,413 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1691342023] [2022-07-22 02:22:15,413 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:15,413 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:15,414 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:15,414 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 10 times [2022-07-22 02:22:15,414 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:15,414 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [8248745] [2022-07-22 02:22:15,414 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:15,414 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:15,417 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:15,417 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:15,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:15,419 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:15,433 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:15,433 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-22 02:22:15,433 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-22 02:22:15,433 INFO L87 Difference]: Start difference. First operand 17908 states and 33508 transitions. cyclomatic complexity: 15634 Second operand has 3 states, 3 states have (on average 17.0) internal successors, (51), 2 states have internal predecessors, (51), 0 states have call successors, (0), 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-07-22 02:22:16,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:16,083 INFO L93 Difference]: Finished difference Result 33398 states and 62650 transitions. [2022-07-22 02:22:16,084 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-22 02:22:16,085 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 33398 states and 62650 transitions. [2022-07-22 02:22:16,298 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 7004 [2022-07-22 02:22:16,456 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 33398 states to 33398 states and 62650 transitions. [2022-07-22 02:22:16,457 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 33360 [2022-07-22 02:22:16,499 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33360 [2022-07-22 02:22:16,500 INFO L73 IsDeterministic]: Start isDeterministic. Operand 33398 states and 62650 transitions. [2022-07-22 02:22:16,502 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:16,503 INFO L369 hiAutomatonCegarLoop]: Abstraction has 33398 states and 62650 transitions. [2022-07-22 02:22:16,551 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33398 states and 62650 transitions. [2022-07-22 02:22:16,915 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33398 to 28386. [2022-07-22 02:22:17,284 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28386 states, 28386 states have (on average 1.8728246318607764) internal successors, (53162), 28385 states have internal predecessors, (53162), 0 states have call successors, (0), 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-07-22 02:22:17,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28386 states to 28386 states and 53162 transitions. [2022-07-22 02:22:17,349 INFO L392 hiAutomatonCegarLoop]: Abstraction has 28386 states and 53162 transitions. [2022-07-22 02:22:17,349 INFO L374 stractBuchiCegarLoop]: Abstraction has 28386 states and 53162 transitions. [2022-07-22 02:22:17,349 INFO L287 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2022-07-22 02:22:17,349 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28386 states and 53162 transitions. [2022-07-22 02:22:17,419 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 7004 [2022-07-22 02:22:17,419 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:17,419 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:17,420 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-07-22 02:22:17,420 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:17,420 INFO L752 eck$LassoCheckResult]: Stem: 911901#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 908049#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 907445#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 907446#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 914134#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 913701#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 911625#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 904852#L95 assume !(0 == getOrigin_~person#1); 901172#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 901173#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 915321#L530 assume !(0 == initPersonOnFloor_~floor#1); 916094#L557 assume !(1 == initPersonOnFloor_~floor#1); 903151#L584 assume !(2 == initPersonOnFloor_~floor#1); 903152#L611 assume 3 == initPersonOnFloor_~floor#1; 914777#L612 assume !(0 == initPersonOnFloor_~person#1); 914778#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 899587#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 916466#L322 assume !(0 == callOnFloor_~floorID#1); 899993#L325 assume !(1 == callOnFloor_~floorID#1); 899994#L328 assume !(2 == callOnFloor_~floorID#1); 899816#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 899817#L334-2 assume { :end_inline_callOnFloor } true; 916189#L674 assume { :end_inline_initPersonOnFloor } true; 916430#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 899664#L95-1 assume !(0 == getOrigin_~person#1); 899665#L99-1 assume !(1 == getOrigin_~person#1); 911976#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 916750#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 911671#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 911672#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 917046#L584-1 assume 2 == initPersonOnFloor_~floor#1; 914062#L585-2 assume !(0 == initPersonOnFloor_~person#1); 909424#L588-2 assume !(1 == initPersonOnFloor_~person#1); 909425#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 903168#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 917616#L322-2 assume !(0 == callOnFloor_~floorID#1); 917615#L325-2 assume !(1 == callOnFloor_~floorID#1); 917614#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 907559#L334-5 assume { :end_inline_callOnFloor } true; 908056#L674-1 assume { :end_inline_initPersonOnFloor } true; 909567#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 908390#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 908391#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 917559#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 904846#L2587 assume !(0 != timeShift_~tmp~24#1);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__twothirdsfull } true;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp~23#1;havoc timeShift__wrappee__twothirdsfull_~tmp___0~10#1;havoc timeShift__wrappee__twothirdsfull_~tmp___1~7#1;havoc timeShift__wrappee__twothirdsfull_~tmp___2~5#1;havoc timeShift__wrappee__twothirdsfull_~tmp___3~4#1;havoc timeShift__wrappee__twothirdsfull_~tmp___4~3#1;havoc timeShift__wrappee__twothirdsfull_~tmp___5~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___6~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___7~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___8~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~20#1;havoc stopRequestedAtCurrentFloor_~tmp~21#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 904848#L2309-1 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;havoc getCurrentFloorID_~retValue_acc~9#1;getCurrentFloorID_~retValue_acc~9#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~9#1; 915843#L1628-1 stopRequestedAtCurrentFloor_#t~ret58#1 := getCurrentFloorID_#res#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~21#1 := stopRequestedAtCurrentFloor_#t~ret58#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~21#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~11#1; 901677#L1645-2 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~11#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~11#1; 901678#L1666-2 stopRequestedAtCurrentFloor_#t~ret59#1 := buttonForFloorIsPressed_#res#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1;stopRequestedAtCurrentFloor_~retValue_acc~20#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~8#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~20#1; 904812#L2320-1 timeShift__wrappee__twothirdsfull_#t~ret73#1 := stopRequestedAtCurrentFloor_#res#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__twothirdsfull_~tmp___9~2#1 := timeShift__wrappee__twothirdsfull_#t~ret73#1;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1; 904813#L2456-2 assume !(0 != timeShift__wrappee__twothirdsfull_~tmp___9~2#1); 916307#L2547-3 assume !(1 == ~doorState~0); 917468#L2547-5 assume { :begin_inline_stopRequestedInDirection } true;stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1 := ~currentHeading~0, 1, 1;havoc stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~17#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~18#1;havoc stopRequestedInDirection_~__cil_tmp8~1#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~1#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~1#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~1#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~1#1 / 3 else stopRequestedInDirection_~__cil_tmp8~1#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1; 917469#L2212-2 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~18#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~18#1; 908613#L2233-2 stopRequestedInDirection_#t~ret51#1 := isAnyLiftButtonPressed_#res#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~18#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~18#1; 911742#L2185-2 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;stopRequestedInDirection__wrappee__empty_~dir#1 := stopRequestedInDirection__wrappee__empty_#in~dir#1;stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~17#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~6#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~5#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___2~3#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___3~2#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___4~1#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___9~0#1; 912151#L1832-8 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 909785#L2001-8 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1; 899764#L2154-8 stopRequestedInDirection_#t~ret54#1 := stopRequestedInDirection__wrappee__empty_#res#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection_~retValue_acc~17#1 := stopRequestedInDirection_#t~ret54#1;havoc stopRequestedInDirection_#t~ret54#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~17#1; 912337#L2203-2 timeShift__wrappee__twothirdsfull_#t~ret80#1 := stopRequestedInDirection_#res#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__twothirdsfull_~tmp___8~2#1 := timeShift__wrappee__twothirdsfull_#t~ret80#1;havoc timeShift__wrappee__twothirdsfull_#t~ret80#1; 916340#L2555-2 assume 0 != timeShift__wrappee__twothirdsfull_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~19#1;~currentHeading~0 := continueInDirection_~dir#1; 911871#L2247-3 assume !(1 == ~currentHeading~0); 910875#L2257-9 assume 0 == ~currentFloorID~0;~currentHeading~0 := 1; 901731#L2257-11 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 901732#L2263-7 assume { :end_inline_continueInDirection } true; 907948#L2564-5 assume { :end_inline_timeShift__wrappee__twothirdsfull } true; 921545#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 921363#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 921364#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 921377#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 921467#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 921466#L2877-2 [2022-07-22 02:22:17,421 INFO L754 eck$LassoCheckResult]: Loop: 921466#L2877-2 assume !false; 921465#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 921464#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 921462#L2886-2 assume !false; 921459#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 921460#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 921466#L2877-2 [2022-07-22 02:22:17,421 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:17,421 INFO L85 PathProgramCache]: Analyzing trace with hash 339874181, now seen corresponding path program 1 times [2022-07-22 02:22:17,421 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:17,422 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1980470971] [2022-07-22 02:22:17,422 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:17,422 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:17,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:17,488 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:17,489 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:17,489 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1980470971] [2022-07-22 02:22:17,489 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1980470971] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:17,489 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:17,489 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-07-22 02:22:17,489 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [834694230] [2022-07-22 02:22:17,490 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:17,491 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:17,492 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:17,492 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 11 times [2022-07-22 02:22:17,492 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:17,495 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [213675908] [2022-07-22 02:22:17,495 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:17,495 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:17,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:17,498 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:17,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:17,501 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:17,514 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:17,514 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-22 02:22:17,514 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2022-07-22 02:22:17,515 INFO L87 Difference]: Start difference. First operand 28386 states and 53162 transitions. cyclomatic complexity: 24844 Second operand has 8 states, 8 states have (on average 8.875) internal successors, (71), 7 states have internal predecessors, (71), 0 states have call successors, (0), 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-07-22 02:22:18,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 02:22:18,885 INFO L93 Difference]: Finished difference Result 48004 states and 88502 transitions. [2022-07-22 02:22:18,886 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-07-22 02:22:18,887 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 48004 states and 88502 transitions. [2022-07-22 02:22:19,129 INFO L131 ngComponentsAnalysis]: Automaton has 332 accepting balls. 17430 [2022-07-22 02:22:19,321 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 48004 states to 48004 states and 88502 transitions. [2022-07-22 02:22:19,322 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 47947 [2022-07-22 02:22:19,365 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 47947 [2022-07-22 02:22:19,365 INFO L73 IsDeterministic]: Start isDeterministic. Operand 48004 states and 88502 transitions. [2022-07-22 02:22:19,366 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2022-07-22 02:22:19,366 INFO L369 hiAutomatonCegarLoop]: Abstraction has 48004 states and 88502 transitions. [2022-07-22 02:22:19,412 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48004 states and 88502 transitions. [2022-07-22 02:22:19,908 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48004 to 27419. [2022-07-22 02:22:19,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27419 states, 27419 states have (on average 1.8585652284911922) internal successors, (50960), 27418 states have internal predecessors, (50960), 0 states have call successors, (0), 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-07-22 02:22:20,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27419 states to 27419 states and 50960 transitions. [2022-07-22 02:22:20,027 INFO L392 hiAutomatonCegarLoop]: Abstraction has 27419 states and 50960 transitions. [2022-07-22 02:22:20,027 INFO L374 stractBuchiCegarLoop]: Abstraction has 27419 states and 50960 transitions. [2022-07-22 02:22:20,027 INFO L287 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2022-07-22 02:22:20,027 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 27419 states and 50960 transitions. [2022-07-22 02:22:20,160 INFO L131 ngComponentsAnalysis]: Automaton has 122 accepting balls. 8312 [2022-07-22 02:22:20,161 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 02:22:20,161 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 02:22:20,163 INFO L179 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-07-22 02:22:20,163 INFO L180 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2022-07-22 02:22:20,164 INFO L752 eck$LassoCheckResult]: Stem: 987474#ULTIMATE.startENTRY 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(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 983795#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 983223#L2983 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 983224#L2976 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 989714#L2991 main_#t~ret24#1 := valid_product_#res#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 989263#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 987190#L1250 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 980787#L95 assume !(0 == getOrigin_~person#1); 977431#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 977432#L120 aliceCall_#t~ret13#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 990965#L530 assume !(0 == initPersonOnFloor_~floor#1); 991790#L557 assume !(1 == initPersonOnFloor_~floor#1); 979227#L584 assume !(2 == initPersonOnFloor_~floor#1); 979228#L611 assume 3 == initPersonOnFloor_~floor#1; 990380#L612 assume !(0 == initPersonOnFloor_~person#1); 990381#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 975979#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 992201#L322 assume !(0 == callOnFloor_~floorID#1); 976350#L325 assume !(1 == callOnFloor_~floorID#1); 976351#L328 assume !(2 == callOnFloor_~floorID#1); 976190#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 976191#L334-2 assume { :end_inline_callOnFloor } true; 991887#L674 assume { :end_inline_initPersonOnFloor } true; 992160#L1006 assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 976047#L95-1 assume !(0 == getOrigin_~person#1); 976048#L99-1 assume !(1 == getOrigin_~person#1); 987544#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 992521#L120-1 angelinaCall_#t~ret14#1 := getOrigin_#res#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 987236#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 987237#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 992847#L584-1 assume 2 == initPersonOnFloor_~floor#1; 989636#L585-2 assume !(0 == initPersonOnFloor_~person#1); 985088#L588-2 assume !(1 == initPersonOnFloor_~person#1); 985089#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 979241#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 993919#L322-2 assume !(0 == callOnFloor_~floorID#1); 993918#L325-2 assume !(1 == callOnFloor_~floorID#1); 993917#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 983331#L334-5 assume { :end_inline_callOnFloor } true; 983800#L674-1 assume { :end_inline_initPersonOnFloor } true; 985224#L1017 assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 984110#L1680 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 984111#L851 assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 993586#L1637 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 980782#L2587 assume 0 != timeShift_~tmp~24#1; 980783#L2588 assume !(~weight~0 > ~maximumWeight~0);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__twothirdsfull } true;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp~23#1;havoc timeShift__wrappee__twothirdsfull_~tmp___0~10#1;havoc timeShift__wrappee__twothirdsfull_~tmp___1~7#1;havoc timeShift__wrappee__twothirdsfull_~tmp___2~5#1;havoc timeShift__wrappee__twothirdsfull_~tmp___3~4#1;havoc timeShift__wrappee__twothirdsfull_~tmp___4~3#1;havoc timeShift__wrappee__twothirdsfull_~tmp___5~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___6~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___7~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___8~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~20#1;havoc stopRequestedAtCurrentFloor_~tmp~21#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 985321#L2309 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;havoc getCurrentFloorID_~retValue_acc~9#1;getCurrentFloorID_~retValue_acc~9#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~9#1; 991086#L1628 stopRequestedAtCurrentFloor_#t~ret58#1 := getCurrentFloorID_#res#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~21#1 := stopRequestedAtCurrentFloor_#t~ret58#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~21#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~11#1; 990566#L1645 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~11#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~11#1; 980849#L1666 stopRequestedAtCurrentFloor_#t~ret59#1 := buttonForFloorIsPressed_#res#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1;stopRequestedAtCurrentFloor_~retValue_acc~20#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~8#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~20#1; 979747#L2320 timeShift__wrappee__twothirdsfull_#t~ret73#1 := stopRequestedAtCurrentFloor_#res#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__twothirdsfull_~tmp___9~2#1 := timeShift__wrappee__twothirdsfull_#t~ret73#1;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1; 979748#L2456 assume !(0 != timeShift__wrappee__twothirdsfull_~tmp___9~2#1); 978929#L2547 assume 1 == ~doorState~0;~doorState~0 := 0; 978930#L2547-2 assume { :begin_inline_stopRequestedInDirection } true;stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1 := ~currentHeading~0, 1, 1;havoc stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~17#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~18#1;havoc stopRequestedInDirection_~__cil_tmp8~1#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~1#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~1#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~1#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~1#1 / 3 else stopRequestedInDirection_~__cil_tmp8~1#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1; 993485#L2212 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~18#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~18#1; 984137#L2233 stopRequestedInDirection_#t~ret51#1 := isAnyLiftButtonPressed_#res#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~18#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~18#1; 989157#L2185 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;stopRequestedInDirection__wrappee__empty_~dir#1 := stopRequestedInDirection__wrappee__empty_#in~dir#1;stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~17#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~6#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~5#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___2~3#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___3~2#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___4~1#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___9~0#1; 989158#L1832-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 980988#L2001-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1; 976803#L2154-2 stopRequestedInDirection_#t~ret54#1 := stopRequestedInDirection__wrappee__empty_#res#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection_~retValue_acc~17#1 := stopRequestedInDirection_#t~ret54#1;havoc stopRequestedInDirection_#t~ret54#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~17#1; 987879#L2203 timeShift__wrappee__twothirdsfull_#t~ret80#1 := stopRequestedInDirection_#res#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__twothirdsfull_~tmp___8~2#1 := timeShift__wrappee__twothirdsfull_#t~ret80#1;havoc timeShift__wrappee__twothirdsfull_#t~ret80#1; 976869#L2555 assume 0 != timeShift__wrappee__twothirdsfull_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~19#1;~currentHeading~0 := continueInDirection_~dir#1; 976871#L2247 assume !(1 == ~currentHeading~0); 986278#L2257 assume !(0 == ~currentFloorID~0); 984059#L2257-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 984060#L2263-1 assume { :end_inline_continueInDirection } true; 987121#L2564-2 assume { :end_inline_timeShift__wrappee__twothirdsfull } true; 993759#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 993745#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 993746#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 993764#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 993878#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 993877#L2877-2 [2022-07-22 02:22:20,164 INFO L754 eck$LassoCheckResult]: Loop: 993877#L2877-2 assume !false; 993876#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 993875#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 993874#L2886-2 assume !false; 993872#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 993873#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 993877#L2877-2 [2022-07-22 02:22:20,165 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:20,165 INFO L85 PathProgramCache]: Analyzing trace with hash -543451371, now seen corresponding path program 1 times [2022-07-22 02:22:20,165 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:20,165 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2065503839] [2022-07-22 02:22:20,165 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:20,166 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:20,236 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 02:22:20,280 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 02:22:20,281 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 02:22:20,281 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2065503839] [2022-07-22 02:22:20,281 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2065503839] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 02:22:20,281 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 02:22:20,281 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-22 02:22:20,282 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1441106250] [2022-07-22 02:22:20,282 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 02:22:20,283 INFO L757 eck$LassoCheckResult]: stem already infeasible [2022-07-22 02:22:20,283 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 02:22:20,283 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 12 times [2022-07-22 02:22:20,284 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 02:22:20,284 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [151046742] [2022-07-22 02:22:20,284 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 02:22:20,284 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 02:22:20,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:20,290 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 02:22:20,293 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 02:22:20,296 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 02:22:20,309 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 02:22:20,310 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-22 02:22:20,310 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-22 02:22:20,310 INFO L87 Difference]: Start difference. First operand 27419 states and 50960 transitions. cyclomatic complexity: 23666 Second operand has 3 states, 3 states have (on average 24.0) internal successors, (72), 2 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0)