./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/product-lines/elevator_spec13_product31.cil.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 3061b6dc Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/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_product31.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 --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 2e77838346608929bef5ad1e655ea0710d74ebb9f10b29169ab985d305812d92 --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.dk.eval-assert-order-craig-3061b6d-m [2024-11-19 14:47:26,935 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-19 14:47:27,003 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2024-11-19 14:47:27,007 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-19 14:47:27,007 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-19 14:47:27,022 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-19 14:47:27,024 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-19 14:47:27,024 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-19 14:47:27,024 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-19 14:47:27,025 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-19 14:47:27,025 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-19 14:47:27,026 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-19 14:47:27,026 INFO L153 SettingsManager]: * Use SBE=true [2024-11-19 14:47:27,027 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-11-19 14:47:27,028 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-11-19 14:47:27,029 INFO L153 SettingsManager]: * Use old map elimination=false [2024-11-19 14:47:27,029 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-11-19 14:47:27,029 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-11-19 14:47:27,029 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-11-19 14:47:27,029 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-19 14:47:27,030 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-11-19 14:47:27,030 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-19 14:47:27,030 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-19 14:47:27,030 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-19 14:47:27,034 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-19 14:47:27,034 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-11-19 14:47:27,034 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-11-19 14:47:27,034 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-11-19 14:47:27,034 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-19 14:47:27,035 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-11-19 14:47:27,035 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-19 14:47:27,035 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-19 14:47:27,035 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-11-19 14:47:27,035 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-19 14:47:27,035 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-19 14:47:27,035 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-19 14:47:27,036 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-19 14:47:27,036 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-19 14:47:27,036 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-11-19 14:47:27,036 INFO L153 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 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 -> 2e77838346608929bef5ad1e655ea0710d74ebb9f10b29169ab985d305812d92 [2024-11-19 14:47:27,218 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-19 14:47:27,256 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-19 14:47:27,264 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-19 14:47:27,265 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-19 14:47:27,267 INFO L274 PluginConnector]: CDTParser initialized [2024-11-19 14:47:27,268 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/product-lines/elevator_spec13_product31.cil.c [2024-11-19 14:47:28,673 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-19 14:47:28,940 INFO L384 CDTParser]: Found 1 translation units. [2024-11-19 14:47:28,941 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/elevator_spec13_product31.cil.c [2024-11-19 14:47:28,959 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fcbcf4fcd/778ac4638bb94a5d9ddab7631f13f894/FLAG7ed1cde0b [2024-11-19 14:47:28,974 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fcbcf4fcd/778ac4638bb94a5d9ddab7631f13f894 [2024-11-19 14:47:28,976 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-19 14:47:28,977 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-19 14:47:28,979 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-19 14:47:28,980 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-19 14:47:28,984 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-19 14:47:28,984 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 02:47:28" (1/1) ... [2024-11-19 14:47:28,985 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3c879d3e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:28, skipping insertion in model container [2024-11-19 14:47:28,985 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 02:47:28" (1/1) ... [2024-11-19 14:47:29,050 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-19 14:47:29,503 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-19 14:47:29,523 INFO L200 MainTranslator]: Completed pre-run [2024-11-19 14:47:29,531 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"wsllib_check.i","") [48] [2024-11-19 14:47:29,532 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"libacc.i","") [57] [2024-11-19 14:47:29,532 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Specification13_spec.i","") [423] [2024-11-19 14:47:29,532 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Person.i","") [517] [2024-11-19 14:47:29,532 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Floor.i","") [638] [2024-11-19 14:47:29,533 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Test.i","") [1306] [2024-11-19 14:47:29,533 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"scenario.i","") [1664] [2024-11-19 14:47:29,533 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"featureselect.i","") [1679] [2024-11-19 14:47:29,533 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Elevator.i","") [1714] [2024-11-19 14:47:29,533 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"UnitTests.i","") [3329] [2024-11-19 14:47:29,633 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-19 14:47:29,667 INFO L204 MainTranslator]: Completed translation [2024-11-19 14:47:29,668 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29 WrapperNode [2024-11-19 14:47:29,668 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-19 14:47:29,669 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-19 14:47:29,669 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-19 14:47:29,669 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-19 14:47:29,674 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:29,698 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:29,977 INFO L138 Inliner]: procedures = 95, calls = 349, calls flagged for inlining = 202, calls inlined = 1075, statements flattened = 36571 [2024-11-19 14:47:29,977 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-19 14:47:29,978 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-19 14:47:29,978 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-19 14:47:29,978 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-19 14:47:29,986 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:29,987 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:30,037 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:30,242 INFO L175 MemorySlicer]: Split 81 memory accesses to 20 slices as follows [2, 4, 4, 4, 2, 4, 4, 5, 3, 3, 5, 7, 4, 4, 4, 4, 4, 6, 4, 4]. 9 percent of accesses are in the largest equivalence class. The 81 initializations are split as follows [2, 4, 4, 4, 2, 4, 4, 5, 3, 3, 5, 7, 4, 4, 4, 4, 4, 6, 4, 4]. The 0 writes are split as follows [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]. [2024-11-19 14:47:30,243 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:30,243 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:30,436 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:30,627 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:30,662 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:30,702 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:30,773 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-19 14:47:30,775 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-19 14:47:30,775 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-19 14:47:30,775 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-19 14:47:30,776 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (1/1) ... [2024-11-19 14:47:30,780 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:30,789 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:47:30,807 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) [2024-11-19 14:47:30,810 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 [2024-11-19 14:47:30,848 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-19 14:47:30,849 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-19 14:47:30,850 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-11-19 14:47:30,850 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-11-19 14:47:30,850 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-11-19 14:47:30,850 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2024-11-19 14:47:30,850 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#5 [2024-11-19 14:47:30,850 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#6 [2024-11-19 14:47:30,850 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#7 [2024-11-19 14:47:30,850 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#8 [2024-11-19 14:47:30,850 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#9 [2024-11-19 14:47:30,852 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#10 [2024-11-19 14:47:30,852 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#11 [2024-11-19 14:47:30,852 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#12 [2024-11-19 14:47:30,852 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#13 [2024-11-19 14:47:30,852 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#14 [2024-11-19 14:47:30,852 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#15 [2024-11-19 14:47:30,852 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#16 [2024-11-19 14:47:30,852 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#17 [2024-11-19 14:47:30,852 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#18 [2024-11-19 14:47:30,852 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#19 [2024-11-19 14:47:30,853 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-19 14:47:30,853 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-19 14:47:31,017 INFO L238 CfgBuilder]: Building ICFG [2024-11-19 14:47:31,019 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-19 14:47:42,339 INFO L? ?]: Removed 15572 outVars from TransFormulas that were not future-live. [2024-11-19 14:47:42,340 INFO L287 CfgBuilder]: Performing block encoding [2024-11-19 14:47:42,444 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-19 14:47:42,444 INFO L316 CfgBuilder]: Removed 61 assume(true) statements. [2024-11-19 14:47:42,445 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 02:47:42 BoogieIcfgContainer [2024-11-19 14:47:42,445 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-19 14:47:42,446 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-11-19 14:47:42,446 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-11-19 14:47:42,448 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-11-19 14:47:42,449 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-19 14:47:42,449 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 19.11 02:47:28" (1/3) ... [2024-11-19 14:47:42,450 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@965c633 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 19.11 02:47:42, skipping insertion in model container [2024-11-19 14:47:42,451 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-19 14:47:42,451 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:47:29" (2/3) ... [2024-11-19 14:47:42,452 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@965c633 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 19.11 02:47:42, skipping insertion in model container [2024-11-19 14:47:42,452 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-19 14:47:42,452 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 02:47:42" (3/3) ... [2024-11-19 14:47:42,453 INFO L332 chiAutomizerObserver]: Analyzing ICFG elevator_spec13_product31.cil.c [2024-11-19 14:47:42,584 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-11-19 14:47:42,585 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-11-19 14:47:42,585 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-11-19 14:47:42,585 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-11-19 14:47:42,585 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-11-19 14:47:42,585 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-11-19 14:47:42,585 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-11-19 14:47:42,585 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-11-19 14:47:42,612 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 9737 states, 9736 states have (on average 1.8729457682826622) internal successors, (18235), 9736 states have internal predecessors, (18235), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:42,796 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2433 [2024-11-19 14:47:42,796 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:42,796 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:42,807 INFO L148 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] [2024-11-19 14:47:42,808 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:47:42,808 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-11-19 14:47:42,833 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 9737 states, 9736 states have (on average 1.8729457682826622) internal successors, (18235), 9736 states have internal predecessors, (18235), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:42,945 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2433 [2024-11-19 14:47:42,946 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:42,946 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:42,950 INFO L148 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] [2024-11-19 14:47:42,950 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:47:42,963 INFO L745 eck$LassoCheckResult]: Stem: 4999#$Ultimate##0true assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 4700#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 8263#select_helpers_returnLabel#1true assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 7884#select_features_returnLabel#1true assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 654#valid_product_returnLabel#1true main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 2895#L1651true assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 1543#setup_returnLabel#1true assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 5456#L564true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 2544#getOrigin_returnLabel#1true aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 1135#L999true assume 0 == initPersonOnFloor_~floor#1; 4619#L1000true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 7845#L1107-1true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 320#L791true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 1154#L803-2true havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 954#initPersonOnFloor_returnLabel#1true havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 7822#aliceCall_returnLabel#1true havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 5043#L564-1true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 375#getOrigin_returnLabel#2true angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 3857#L999-1true assume 0 == initPersonOnFloor_~floor#1; 9458#L1000-2true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 3357#L1107-3true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 8366#L791-2true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 8212#L803-5true havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 3408#initPersonOnFloor_returnLabel#2true havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 8043#angelinaCall_returnLabel#1true havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 7420#getCurrentHeading_returnLabel#1true __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 3717#__utac_acc__Specification13_spec__1_returnLabel#1true havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 9181#L728true assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 7405#isFloorCalling_returnLabel#1true isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 8986#isExecutiveFloorCalling_returnLabel#1true stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 4896#L2700true assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 3475#getCurrentFloorID_returnLabel#1true stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 2673#L2704true assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 259#stopRequestedAtCurrentFloor_returnLabel#1true timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 562#L2853true assume !(0 != timeShift_~tmp___9~2#1); 3118#L2944true assume 1 == ~doorState~0;~doorState~0 := 0; 854#L2944-2true 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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 8473#L728-3true assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 2766#isFloorCalling_returnLabel#4true isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 5812#isExecutiveFloorCalling_returnLabel#2true stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 395#L2555true assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 9540#getCurrentFloorID_returnLabel#4true stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 1668#stopRequestedInDirection_returnLabel#1true timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 208#L2952true assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 8805#L2612true assume !(1 == ~currentHeading~0); 2606#L2622true assume !(0 == ~currentFloorID~0); 3864#L2622-2true assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 2461#L2628-1true havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 9#L2961-2true assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 1789#L454true assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 1006#L455true 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 2106#L3156true assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~1#1 := 0;existInLiftCallsInDirection_~i~1#1 := 1 + ~currentFloorID~0; 5285#L3160-2true [2024-11-19 14:47:42,964 INFO L747 eck$LassoCheckResult]: Loop: 5285#L3160-2true assume !false; 3472#L3161true assume existInLiftCallsInDirection_~i~1#1 < 5; 3#L3162true assume !(0 == existInLiftCallsInDirection_~i~1#1); 3414#$Ultimate##3770true assume !(1 == existInLiftCallsInDirection_~i~1#1); 4183#$Ultimate##3774true assume !(2 == existInLiftCallsInDirection_~i~1#1); 1470#$Ultimate##3778true assume !(3 == existInLiftCallsInDirection_~i~1#1); 2549#$Ultimate##3782true assume !(4 == existInLiftCallsInDirection_~i~1#1); 1611#L3203-1true existInLiftCallsInDirection_~i~1#1 := 1 + existInLiftCallsInDirection_~i~1#1; 5285#L3160-2true [2024-11-19 14:47:42,974 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:42,978 INFO L85 PathProgramCache]: Analyzing trace with hash 1456644332, now seen corresponding path program 1 times [2024-11-19 14:47:42,986 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:42,986 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1337987356] [2024-11-19 14:47:42,987 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:42,987 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:43,179 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:43,470 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:43,470 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:43,471 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1337987356] [2024-11-19 14:47:43,471 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1337987356] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:43,471 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:43,472 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-19 14:47:43,473 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1583053284] [2024-11-19 14:47:43,474 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:43,477 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:43,477 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:43,478 INFO L85 PathProgramCache]: Analyzing trace with hash -462995331, now seen corresponding path program 1 times [2024-11-19 14:47:43,478 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:43,478 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1112103417] [2024-11-19 14:47:43,478 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:43,478 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:43,492 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:43,492 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:43,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:43,513 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:43,559 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:47:43,559 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:47:43,559 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:47:43,559 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:47:43,559 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-19 14:47:43,560 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:43,560 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:47:43,560 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:47:43,560 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product31.cil.c_Iteration1_Loop [2024-11-19 14:47:43,560 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:47:43,560 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:47:43,574 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:47:43,631 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:47:43,632 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-19 14:47:43,633 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:43,633 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:47:43,637 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) [2024-11-19 14:47:43,645 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 [2024-11-19 14:47:43,646 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-19 14:47:43,646 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:47:43,687 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 [2024-11-19 14:47:43,688 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:43,688 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:47:43,690 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) [2024-11-19 14:47:43,691 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 [2024-11-19 14:47:43,692 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-19 14:47:43,693 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:47:43,723 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-19 14:47:43,728 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2024-11-19 14:47:43,729 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:47:43,729 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:47:43,729 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:47:43,730 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:47:43,730 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-19 14:47:43,730 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:43,730 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:47:43,730 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:47:43,730 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product31.cil.c_Iteration1_Loop [2024-11-19 14:47:43,730 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:47:43,730 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:47:43,731 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:47:43,831 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:47:43,834 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-19 14:47:43,836 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:43,836 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:47:43,838 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) [2024-11-19 14:47:43,843 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 [2024-11-19 14:47:43,843 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 [2024-11-19 14:47:43,854 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:47:43,855 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:47:43,856 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:47:43,856 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:47:43,857 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:47:43,859 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:47:43,859 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:47:43,861 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-19 14:47:43,865 INFO L443 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2024-11-19 14:47:43,865 INFO L444 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2024-11-19 14:47:43,866 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:43,866 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:47:43,869 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) [2024-11-19 14:47:43,870 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 [2024-11-19 14:47:43,873 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-19 14:47:43,874 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-19 14:47:43,874 INFO L474 LassoAnalysis]: Proved termination. [2024-11-19 14:47:43,875 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_existInLiftCallsInDirection_~i~1#1) = -1*ULTIMATE.start_existInLiftCallsInDirection_~i~1#1 Supporting invariants [] [2024-11-19 14:47:43,886 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 [2024-11-19 14:47:43,888 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-19 14:47:43,918 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:44,073 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:44,076 INFO L255 TraceCheckSpWp]: Trace formula consists of 619 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-19 14:47:44,079 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:47:44,144 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:44,145 WARN L253 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-19 14:47:44,146 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:47:44,296 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:44,327 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 7 loop predicates [2024-11-19 14:47:44,349 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 9737 states, 9736 states have (on average 1.8729457682826622) internal successors, (18235), 9736 states have internal predecessors, (18235), 0 states have call successors, (0), 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 6.666666666666667) internal successors, (60), 9 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:44,632 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Ended with exit code 0 [2024-11-19 14:47:45,231 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 9737 states, 9736 states have (on average 1.8729457682826622) internal successors, (18235), 9736 states have internal predecessors, (18235), 0 states have call successors, (0), 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 6.666666666666667) internal successors, (60), 9 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 25439 states and 47584 transitions. Complement of second has 18 states. [2024-11-19 14:47:45,234 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 [2024-11-19 14:47:45,237 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 6.666666666666667) internal successors, (60), 9 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:45,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 32929 transitions. [2024-11-19 14:47:45,265 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 32929 transitions. Stem has 52 letters. Loop has 8 letters. [2024-11-19 14:47:45,267 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:47:45,267 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 32929 transitions. Stem has 60 letters. Loop has 8 letters. [2024-11-19 14:47:45,268 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:47:45,268 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 32929 transitions. Stem has 52 letters. Loop has 16 letters. [2024-11-19 14:47:45,269 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:47:45,270 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 25439 states and 47584 transitions. [2024-11-19 14:47:45,419 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 4784 [2024-11-19 14:47:45,840 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 25439 states to 17512 states and 32673 transitions. [2024-11-19 14:47:45,841 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17482 [2024-11-19 14:47:45,856 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17483 [2024-11-19 14:47:45,857 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17512 states and 32673 transitions. [2024-11-19 14:47:45,864 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:45,864 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17512 states and 32673 transitions. [2024-11-19 14:47:45,897 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17512 states and 32673 transitions. [2024-11-19 14:47:46,314 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17512 to 17486. [2024-11-19 14:47:46,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17486 states, 17486 states have (on average 1.8662930344275421) internal successors, (32634), 17485 states have internal predecessors, (32634), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:46,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17486 states to 17486 states and 32634 transitions. [2024-11-19 14:47:46,380 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17486 states and 32634 transitions. [2024-11-19 14:47:46,380 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:46,383 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-19 14:47:46,384 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-19 14:47:46,385 INFO L87 Difference]: Start difference. First operand 17486 states and 32634 transitions. Second operand has 5 states, 5 states have (on average 10.4) internal successors, (52), 5 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:46,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:46,924 INFO L93 Difference]: Finished difference Result 17468 states and 32503 transitions. [2024-11-19 14:47:46,924 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17468 states and 32503 transitions. [2024-11-19 14:47:47,003 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 4768 [2024-11-19 14:47:47,060 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17468 states to 17459 states and 32494 transitions. [2024-11-19 14:47:47,061 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17440 [2024-11-19 14:47:47,074 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17440 [2024-11-19 14:47:47,074 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17459 states and 32494 transitions. [2024-11-19 14:47:47,081 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:47,081 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17459 states and 32494 transitions. [2024-11-19 14:47:47,098 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17459 states and 32494 transitions. [2024-11-19 14:47:47,383 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17459 to 9724. [2024-11-19 14:47:47,399 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9724 states, 9724 states have (on average 1.8612710818593172) internal successors, (18099), 9723 states have internal predecessors, (18099), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:47,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9724 states to 9724 states and 18099 transitions. [2024-11-19 14:47:47,414 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9724 states and 18099 transitions. [2024-11-19 14:47:47,415 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-19 14:47:47,415 INFO L425 stractBuchiCegarLoop]: Abstraction has 9724 states and 18099 transitions. [2024-11-19 14:47:47,415 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-11-19 14:47:47,417 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9724 states and 18099 transitions. [2024-11-19 14:47:47,471 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2431 [2024-11-19 14:47:47,471 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:47,471 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:47,472 INFO L148 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] [2024-11-19 14:47:47,476 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:47:47,477 INFO L745 eck$LassoCheckResult]: Stem: 78085#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 77826#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 77827#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 79781#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 71922#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 71923#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 73690#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 73691#L564 assume !(0 == getOrigin_~person#1); 72312#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 70359#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 72929#L999 assume 0 == initPersonOnFloor_~floor#1; 72930#L1000 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 72720#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 71174#L791 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 70976#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 72568#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 72569#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 78129#L564-1 assume !(0 == getOrigin_~person#1); 73437#L568-1 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 71301#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 71302#L999-1 assume 0 == initPersonOnFloor_~floor#1; 76945#L1000-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 70514#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 76393#L791-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 72547#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 76443#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 76444#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 79601#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 76770#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 76771#L728 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 78232#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 79599#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 77997#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 76521#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 75477#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 71034#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 71035#L2853 assume !(0 != timeShift_~tmp___9~2#1); 71725#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 72359#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 72360#L728-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 72679#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 75610#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 71347#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 71348#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 73902#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 70911#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 70912#L2612 assume !(1 == ~currentHeading~0); 75386#L2622 assume !(0 == ~currentFloorID~0); 75387#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 75194#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 70381#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 70382#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 72673#L455 assume !(1 == ~prevDir~0); 72674#L481 assume 0 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 1;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 74427#L3156-2 assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~1#1 := 0;existInLiftCallsInDirection_~i~1#1 := 1 + ~currentFloorID~0; 74429#L3160-8 [2024-11-19 14:47:47,477 INFO L747 eck$LassoCheckResult]: Loop: 74429#L3160-8 assume !false; 75212#L3161-2 assume existInLiftCallsInDirection_~i~1#1 < 5; 75213#L3162-2 assume !(0 == existInLiftCallsInDirection_~i~1#1); 75258#$Ultimate##3926 assume !(1 == existInLiftCallsInDirection_~i~1#1); 73537#$Ultimate##3930 assume !(2 == existInLiftCallsInDirection_~i~1#1); 78999#$Ultimate##3934 assume !(3 == existInLiftCallsInDirection_~i~1#1); 76523#$Ultimate##3938 assume !(4 == existInLiftCallsInDirection_~i~1#1); 76524#L3203-5 existInLiftCallsInDirection_~i~1#1 := 1 + existInLiftCallsInDirection_~i~1#1; 74429#L3160-8 [2024-11-19 14:47:47,477 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:47,477 INFO L85 PathProgramCache]: Analyzing trace with hash -1563197109, now seen corresponding path program 1 times [2024-11-19 14:47:47,477 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:47,477 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1659973334] [2024-11-19 14:47:47,477 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:47,478 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:47,517 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:47,640 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:47,640 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:47,640 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1659973334] [2024-11-19 14:47:47,641 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1659973334] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:47,641 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:47,641 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-19 14:47:47,641 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1566677250] [2024-11-19 14:47:47,641 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:47,641 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:47,642 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:47,642 INFO L85 PathProgramCache]: Analyzing trace with hash -1655895939, now seen corresponding path program 1 times [2024-11-19 14:47:47,642 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:47,642 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [745015207] [2024-11-19 14:47:47,642 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:47,642 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:47,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:47,651 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:47,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:47,657 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:47,686 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:47:47,686 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:47:47,686 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:47:47,686 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:47:47,686 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-19 14:47:47,686 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:47,687 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:47:47,687 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:47:47,687 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product31.cil.c_Iteration2_Loop [2024-11-19 14:47:47,687 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:47:47,687 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:47:47,687 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:47:47,725 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:47:47,725 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-19 14:47:47,725 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:47,725 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:47:47,727 INFO L229 MonitoredProcess]: Starting monitored process 6 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) [2024-11-19 14:47:47,728 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2024-11-19 14:47:47,733 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-19 14:47:47,733 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:47:47,753 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2024-11-19 14:47:47,754 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:47,754 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:47:47,758 INFO L229 MonitoredProcess]: Starting monitored process 7 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) [2024-11-19 14:47:47,759 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2024-11-19 14:47:47,760 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-19 14:47:47,761 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:47:47,786 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-19 14:47:47,881 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Forceful destruction successful, exit code 0 [2024-11-19 14:47:47,882 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:47:47,882 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:47:47,882 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:47:47,882 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:47:47,882 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-19 14:47:47,882 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:47,882 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:47:47,882 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:47:47,882 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product31.cil.c_Iteration2_Loop [2024-11-19 14:47:47,882 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:47:47,882 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:47:47,883 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:47:47,926 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:47:47,926 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-19 14:47:47,926 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:47,926 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:47:47,928 INFO L229 MonitoredProcess]: Starting monitored process 8 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) [2024-11-19 14:47:47,932 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 [2024-11-19 14:47:47,936 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2024-11-19 14:47:47,942 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:47:47,942 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:47:47,942 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:47:47,942 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:47:47,942 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:47:47,943 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:47:47,943 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:47:47,945 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-19 14:47:47,947 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2024-11-19 14:47:47,947 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-19 14:47:47,948 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:47:47,948 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:47:47,949 INFO L229 MonitoredProcess]: Starting monitored process 9 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) [2024-11-19 14:47:47,950 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2024-11-19 14:47:47,951 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-19 14:47:47,951 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-19 14:47:47,951 INFO L474 LassoAnalysis]: Proved termination. [2024-11-19 14:47:47,951 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_existInLiftCallsInDirection_~i~1#1) = -1*ULTIMATE.start_existInLiftCallsInDirection_~i~1#1 Supporting invariants [] [2024-11-19 14:47:47,961 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Forceful destruction successful, exit code 0 [2024-11-19 14:47:47,962 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-19 14:47:47,978 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:48,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:48,074 INFO L255 TraceCheckSpWp]: Trace formula consists of 622 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-19 14:47:48,076 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:47:48,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:48,142 WARN L253 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-19 14:47:48,142 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:47:48,261 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:48,262 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 7 loop predicates [2024-11-19 14:47:48,262 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 9724 states and 18099 transitions. cyclomatic complexity: 8409 Second operand has 9 states, 9 states have (on average 7.0) internal successors, (63), 9 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:48,823 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Ended with exit code 0 [2024-11-19 14:47:48,889 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 9724 states and 18099 transitions. cyclomatic complexity: 8409. Second operand has 9 states, 9 states have (on average 7.0) internal successors, (63), 9 states have internal predecessors, (63), 0 states have call successors, (0), 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 17515 states and 32577 transitions. Complement of second has 17 states. [2024-11-19 14:47:48,890 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 9 states 1 stem states 7 non-accepting loop states 1 accepting loop states [2024-11-19 14:47:48,892 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 7.0) internal successors, (63), 9 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:48,906 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 18086 transitions. [2024-11-19 14:47:48,906 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 18086 transitions. Stem has 55 letters. Loop has 8 letters. [2024-11-19 14:47:48,907 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:47:48,908 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 18086 transitions. Stem has 63 letters. Loop has 8 letters. [2024-11-19 14:47:48,908 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:47:48,908 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 18086 transitions. Stem has 55 letters. Loop has 16 letters. [2024-11-19 14:47:48,908 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:47:48,910 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17515 states and 32577 transitions. [2024-11-19 14:47:48,970 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 4782 [2024-11-19 14:47:49,019 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17515 states to 17509 states and 32571 transitions. [2024-11-19 14:47:49,019 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17460 [2024-11-19 14:47:49,030 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17461 [2024-11-19 14:47:49,030 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17509 states and 32571 transitions. [2024-11-19 14:47:49,031 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:49,031 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17509 states and 32571 transitions. [2024-11-19 14:47:49,047 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17509 states and 32571 transitions. [2024-11-19 14:47:49,149 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17509 to 9748. [2024-11-19 14:47:49,160 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9748 states, 9748 states have (on average 1.8605867870332375) internal successors, (18137), 9747 states have internal predecessors, (18137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:49,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9748 states to 9748 states and 18137 transitions. [2024-11-19 14:47:49,174 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9748 states and 18137 transitions. [2024-11-19 14:47:49,174 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:49,175 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-19 14:47:49,175 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-19 14:47:49,175 INFO L87 Difference]: Start difference. First operand 9748 states and 18137 transitions. Second operand has 4 states, 4 states have (on average 13.75) internal successors, (55), 4 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:49,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:49,420 INFO L93 Difference]: Finished difference Result 9766 states and 18155 transitions. [2024-11-19 14:47:49,420 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9766 states and 18155 transitions. [2024-11-19 14:47:49,449 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:49,472 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9766 states to 9766 states and 18155 transitions. [2024-11-19 14:47:49,473 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9728 [2024-11-19 14:47:49,482 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9728 [2024-11-19 14:47:49,482 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9766 states and 18155 transitions. [2024-11-19 14:47:49,487 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:49,487 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9766 states and 18155 transitions. [2024-11-19 14:47:49,495 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9766 states and 18155 transitions. [2024-11-19 14:47:49,569 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9766 to 9763. [2024-11-19 14:47:49,582 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9763 states, 9763 states have (on average 1.8592645703165012) internal successors, (18152), 9762 states have internal predecessors, (18152), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:49,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9763 states to 9763 states and 18152 transitions. [2024-11-19 14:47:49,596 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9763 states and 18152 transitions. [2024-11-19 14:47:49,597 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-19 14:47:49,597 INFO L425 stractBuchiCegarLoop]: Abstraction has 9763 states and 18152 transitions. [2024-11-19 14:47:49,597 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-11-19 14:47:49,597 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9763 states and 18152 transitions. [2024-11-19 14:47:49,620 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:49,620 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:49,620 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:49,621 INFO L148 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] [2024-11-19 14:47:49,622 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:47:49,622 INFO L745 eck$LassoCheckResult]: Stem: 125082#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 124823#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 124824#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 126780#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 118907#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 118908#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 120677#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 120678#L564 assume !(0 == getOrigin_~person#1); 119297#L568 assume !(1 == getOrigin_~person#1); 119299#L572 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 117344#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 127091#L999 assume 0 == initPersonOnFloor_~floor#1; 124735#L1000 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 119706#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 118159#L791 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 117961#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 119554#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 119555#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 125126#L564-1 assume !(0 == getOrigin_~person#1); 120422#L568-1 assume !(1 == getOrigin_~person#1); 120423#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 122651#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 127087#L999-1 assume 0 == initPersonOnFloor_~floor#1; 127074#L1000-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 117499#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 123384#L791-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 119533#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 123434#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 123435#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 126599#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 123763#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 123764#L728 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 125229#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 126597#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 124994#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 123512#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 122467#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 118019#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 118020#L2853 assume !(0 != timeShift_~tmp___9~2#1); 118710#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 119345#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 119346#L728-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 119665#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 122600#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 118332#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 118333#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 120889#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 117896#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 117897#L2612 assume !(1 == ~currentHeading~0); 122376#L2622 assume !(0 == ~currentFloorID~0); 122377#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 122180#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 117366#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 117367#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 119659#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 119661#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 121596#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 121130#L3226-2 [2024-11-19 14:47:49,622 INFO L747 eck$LassoCheckResult]: Loop: 121130#L3226-2 assume !false; 121929#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 121930#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 117604#L3235-2 assume !false; 117605#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 121013#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 121130#L3226-2 [2024-11-19 14:47:49,623 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:49,623 INFO L85 PathProgramCache]: Analyzing trace with hash 2016865714, now seen corresponding path program 1 times [2024-11-19 14:47:49,623 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:49,623 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1497462913] [2024-11-19 14:47:49,624 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:49,624 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:49,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:49,702 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:49,702 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:49,703 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1497462913] [2024-11-19 14:47:49,703 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1497462913] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:49,703 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:49,703 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-19 14:47:49,704 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1915113791] [2024-11-19 14:47:49,704 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:49,704 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:49,705 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:49,705 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 1 times [2024-11-19 14:47:49,705 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:49,705 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1790083328] [2024-11-19 14:47:49,705 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:49,705 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:49,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:49,718 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:49,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:49,730 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:49,756 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:49,757 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-19 14:47:49,757 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-19 14:47:49,758 INFO L87 Difference]: Start difference. First operand 9763 states and 18152 transitions. cyclomatic complexity: 8424 Second operand has 3 states, 3 states have (on average 19.0) internal successors, (57), 3 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:49,917 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:49,918 INFO L93 Difference]: Finished difference Result 9729 states and 18084 transitions. [2024-11-19 14:47:49,918 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9729 states and 18084 transitions. [2024-11-19 14:47:49,948 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:49,973 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9729 states to 9729 states and 18084 transitions. [2024-11-19 14:47:49,973 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9691 [2024-11-19 14:47:49,979 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9691 [2024-11-19 14:47:49,984 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9729 states and 18084 transitions. [2024-11-19 14:47:49,993 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:49,993 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9729 states and 18084 transitions. [2024-11-19 14:47:50,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9729 states and 18084 transitions. [2024-11-19 14:47:50,081 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9729 to 9729. [2024-11-19 14:47:50,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9729 states, 9729 states have (on average 1.85877274128893) internal successors, (18084), 9728 states have internal predecessors, (18084), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:50,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9729 states to 9729 states and 18084 transitions. [2024-11-19 14:47:50,106 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9729 states and 18084 transitions. [2024-11-19 14:47:50,108 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-19 14:47:50,108 INFO L425 stractBuchiCegarLoop]: Abstraction has 9729 states and 18084 transitions. [2024-11-19 14:47:50,108 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-11-19 14:47:50,108 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9729 states and 18084 transitions. [2024-11-19 14:47:50,128 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:50,128 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:50,129 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:50,129 INFO L148 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] [2024-11-19 14:47:50,129 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:47:50,130 INFO L745 eck$LassoCheckResult]: Stem: 144551#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 144294#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 144295#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 146249#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 138402#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 138403#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 140166#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 140167#L564 assume !(0 == getOrigin_~person#1); 138792#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 138793#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 139410#L999 assume !(0 == initPersonOnFloor_~floor#1); 139411#L1026 assume !(1 == initPersonOnFloor_~floor#1); 145310#L1053 assume !(2 == initPersonOnFloor_~floor#1); 145806#L1080 assume 3 == initPersonOnFloor_~floor#1; 142980#L1081 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_3~0 := 1; 140784#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 137654#L791 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 137456#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 139048#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 139049#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 144595#L564-1 assume !(0 == getOrigin_~person#1); 139911#L568-1 assume !(1 == getOrigin_~person#1); 139912#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 142130#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 146555#L999-1 assume 0 == initPersonOnFloor_~floor#1; 146543#L1000-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 136994#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 142863#L791-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 139027#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 142911#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 142912#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 146068#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 143240#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 143241#L728 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 144698#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 146066#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 144465#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 142988#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 141946#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 137516#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 137517#L2853 assume !(0 != timeShift_~tmp___9~2#1); 138205#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 138839#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 138840#L728-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 139162#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 142079#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 137827#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 137828#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 140375#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 137394#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 137395#L2612 assume !(1 == ~currentHeading~0); 141857#L2622 assume !(0 == ~currentFloorID~0); 141858#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 141664#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 136861#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 136862#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 139153#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 139155#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 141081#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 140614#L3226-2 [2024-11-19 14:47:50,130 INFO L747 eck$LassoCheckResult]: Loop: 140614#L3226-2 assume !false; 141414#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 141415#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 137099#L3235-2 assume !false; 137100#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 140497#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 140614#L3226-2 [2024-11-19 14:47:50,130 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:50,130 INFO L85 PathProgramCache]: Analyzing trace with hash -461795163, now seen corresponding path program 1 times [2024-11-19 14:47:50,130 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:50,131 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1104911299] [2024-11-19 14:47:50,131 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:50,131 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:50,148 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:50,214 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:50,214 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:50,214 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1104911299] [2024-11-19 14:47:50,214 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1104911299] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:50,215 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:50,215 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-19 14:47:50,215 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [948690848] [2024-11-19 14:47:50,215 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:50,215 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:50,215 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:50,215 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 2 times [2024-11-19 14:47:50,216 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:50,216 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [160495005] [2024-11-19 14:47:50,216 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:47:50,216 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:50,224 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:47:50,224 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:47:50,224 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:50,225 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:50,232 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:50,246 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:50,246 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-19 14:47:50,246 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-19 14:47:50,246 INFO L87 Difference]: Start difference. First operand 9729 states and 18084 transitions. cyclomatic complexity: 8390 Second operand has 5 states, 5 states have (on average 11.8) internal successors, (59), 5 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:50,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:50,729 INFO L93 Difference]: Finished difference Result 9737 states and 18091 transitions. [2024-11-19 14:47:50,729 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9737 states and 18091 transitions. [2024-11-19 14:47:50,765 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:50,792 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9737 states to 9737 states and 18091 transitions. [2024-11-19 14:47:50,793 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9699 [2024-11-19 14:47:50,799 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9699 [2024-11-19 14:47:50,799 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9737 states and 18091 transitions. [2024-11-19 14:47:50,799 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:50,799 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9737 states and 18091 transitions. [2024-11-19 14:47:50,812 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9737 states and 18091 transitions. [2024-11-19 14:47:50,895 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9737 to 9729. [2024-11-19 14:47:50,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9729 states, 9729 states have (on average 1.8581560283687943) internal successors, (18078), 9728 states have internal predecessors, (18078), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:50,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9729 states to 9729 states and 18078 transitions. [2024-11-19 14:47:50,922 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9729 states and 18078 transitions. [2024-11-19 14:47:50,929 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-19 14:47:50,930 INFO L425 stractBuchiCegarLoop]: Abstraction has 9729 states and 18078 transitions. [2024-11-19 14:47:50,930 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-11-19 14:47:50,930 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9729 states and 18078 transitions. [2024-11-19 14:47:50,954 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:50,954 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:50,954 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:50,955 INFO L148 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] [2024-11-19 14:47:50,955 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:47:50,955 INFO L745 eck$LassoCheckResult]: Stem: 164025#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 163768#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 163769#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 165723#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 157876#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 157877#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 159640#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 159641#L564 assume !(0 == getOrigin_~person#1); 158266#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 158267#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 158887#L999 assume !(0 == initPersonOnFloor_~floor#1); 158888#L1026 assume !(1 == initPersonOnFloor_~floor#1); 164784#L1053 assume !(2 == initPersonOnFloor_~floor#1); 165280#L1080 assume 3 == initPersonOnFloor_~floor#1; 162454#L1081 assume !(0 == initPersonOnFloor_~person#1); 162455#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 160258#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 157128#L791 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 156930#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 158525#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 158526#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 164069#L564-1 assume !(0 == getOrigin_~person#1); 159385#L568-1 assume !(1 == getOrigin_~person#1); 159386#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 161604#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 166029#L999-1 assume 0 == initPersonOnFloor_~floor#1; 166017#L1000-2 assume !(0 == initPersonOnFloor_~person#1); 157239#L1003-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 156473#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 162338#L791-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 158501#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 162385#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 162386#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 165542#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 162714#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 162715#L728 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 164173#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 165540#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 163939#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 162462#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 161420#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 156993#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 156994#L2853 assume !(0 != timeShift_~tmp___9~2#1); 157681#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 158313#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 158314#L728-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 158639#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 161553#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 157301#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 157302#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 159849#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 156871#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 156872#L2612 assume !(1 == ~currentHeading~0); 161331#L2622 assume !(0 == ~currentFloorID~0); 161332#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 161138#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 156335#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 156336#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 158627#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 158629#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 160557#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 160088#L3226-2 [2024-11-19 14:47:50,955 INFO L747 eck$LassoCheckResult]: Loop: 160088#L3226-2 assume !false; 160888#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 160889#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 156573#L3235-2 assume !false; 156574#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 159971#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 160088#L3226-2 [2024-11-19 14:47:50,956 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:50,956 INFO L85 PathProgramCache]: Analyzing trace with hash -122478231, now seen corresponding path program 1 times [2024-11-19 14:47:50,956 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:50,956 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [919295157] [2024-11-19 14:47:50,956 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:50,956 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:50,980 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:51,043 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:51,045 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:51,045 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [919295157] [2024-11-19 14:47:51,045 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [919295157] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:51,045 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:51,045 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-19 14:47:51,046 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [372906151] [2024-11-19 14:47:51,046 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:51,046 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:51,046 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:51,046 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 3 times [2024-11-19 14:47:51,046 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:51,047 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1847301065] [2024-11-19 14:47:51,047 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:47:51,047 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:51,055 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-19 14:47:51,056 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:47:51,056 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:51,057 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:51,106 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:51,122 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:51,122 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-19 14:47:51,122 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-19 14:47:51,123 INFO L87 Difference]: Start difference. First operand 9729 states and 18078 transitions. cyclomatic complexity: 8384 Second operand has 4 states, 4 states have (on average 15.25) internal successors, (61), 4 states have internal predecessors, (61), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:51,295 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:51,296 INFO L93 Difference]: Finished difference Result 9733 states and 18081 transitions. [2024-11-19 14:47:51,296 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9733 states and 18081 transitions. [2024-11-19 14:47:51,329 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:51,355 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9733 states to 9733 states and 18081 transitions. [2024-11-19 14:47:51,355 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9695 [2024-11-19 14:47:51,362 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9695 [2024-11-19 14:47:51,362 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9733 states and 18081 transitions. [2024-11-19 14:47:51,363 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:51,363 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9733 states and 18081 transitions. [2024-11-19 14:47:51,374 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9733 states and 18081 transitions. [2024-11-19 14:47:51,440 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9733 to 9733. [2024-11-19 14:47:51,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9733 states, 9733 states have (on average 1.8577006061851433) internal successors, (18081), 9732 states have internal predecessors, (18081), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:51,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9733 states to 9733 states and 18081 transitions. [2024-11-19 14:47:51,465 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9733 states and 18081 transitions. [2024-11-19 14:47:51,466 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-19 14:47:51,467 INFO L425 stractBuchiCegarLoop]: Abstraction has 9733 states and 18081 transitions. [2024-11-19 14:47:51,467 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-11-19 14:47:51,467 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9733 states and 18081 transitions. [2024-11-19 14:47:51,486 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:51,487 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:51,487 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:51,488 INFO L148 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] [2024-11-19 14:47:51,488 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:47:51,488 INFO L745 eck$LassoCheckResult]: Stem: 183495#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 183239#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 183240#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 185194#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 177346#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 177347#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 179108#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 179109#L564 assume !(0 == getOrigin_~person#1); 177736#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 177737#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 178351#L999 assume !(0 == initPersonOnFloor_~floor#1); 178352#L1026 assume !(1 == initPersonOnFloor_~floor#1); 184255#L1053 assume !(2 == initPersonOnFloor_~floor#1); 184750#L1080 assume 3 == initPersonOnFloor_~floor#1; 181925#L1081 assume !(0 == initPersonOnFloor_~person#1); 181926#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 179725#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 176597#L791 assume !(0 == callOnFloor_~floorID#1); 176446#L794 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 176399#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 177992#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 177993#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 183540#L564-1 assume !(0 == getOrigin_~person#1); 178853#L568-1 assume !(1 == getOrigin_~person#1); 178854#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 181075#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 185500#L999-1 assume 0 == initPersonOnFloor_~floor#1; 185488#L1000-2 assume !(0 == initPersonOnFloor_~person#1); 176706#L1003-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 175937#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 185501#L791-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 177971#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 181856#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 181857#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 185013#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 182184#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 182185#L728 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 183642#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 185011#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 183410#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 181933#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 180891#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 176454#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 176455#L2853 assume !(0 != timeShift_~tmp___9~2#1); 177148#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 177783#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 177784#L728-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 178101#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 181024#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 176770#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 176771#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 179317#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 176334#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 176335#L2612 assume !(1 == ~currentHeading~0); 180802#L2622 assume !(0 == ~currentFloorID~0); 180803#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 180609#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 175804#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 175805#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 178096#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 178098#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 180026#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 179558#L3226-2 [2024-11-19 14:47:51,489 INFO L747 eck$LassoCheckResult]: Loop: 179558#L3226-2 assume !false; 180357#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 180358#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 176042#L3235-2 assume !false; 176043#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 179441#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 179558#L3226-2 [2024-11-19 14:47:51,489 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:51,489 INFO L85 PathProgramCache]: Analyzing trace with hash -940719868, now seen corresponding path program 1 times [2024-11-19 14:47:51,489 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:51,489 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [309124249] [2024-11-19 14:47:51,490 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:51,490 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:51,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:51,563 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:51,563 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:51,563 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [309124249] [2024-11-19 14:47:51,563 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [309124249] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:51,563 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:51,563 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-19 14:47:51,564 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [197713324] [2024-11-19 14:47:51,564 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:51,564 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:51,564 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:51,564 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 4 times [2024-11-19 14:47:51,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:51,564 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1669939049] [2024-11-19 14:47:51,564 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:47:51,564 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:51,574 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:47:51,574 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:47:51,574 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:51,576 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:51,584 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:51,604 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:51,604 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-19 14:47:51,605 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-19 14:47:51,605 INFO L87 Difference]: Start difference. First operand 9733 states and 18081 transitions. cyclomatic complexity: 8383 Second operand has 4 states, 4 states have (on average 15.5) internal successors, (62), 4 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:51,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:51,878 INFO L93 Difference]: Finished difference Result 9739 states and 18086 transitions. [2024-11-19 14:47:51,878 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9739 states and 18086 transitions. [2024-11-19 14:47:51,914 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:51,940 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9739 states to 9739 states and 18086 transitions. [2024-11-19 14:47:51,940 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9701 [2024-11-19 14:47:51,945 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9701 [2024-11-19 14:47:51,946 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9739 states and 18086 transitions. [2024-11-19 14:47:51,946 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:51,947 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9739 states and 18086 transitions. [2024-11-19 14:47:51,956 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9739 states and 18086 transitions. [2024-11-19 14:47:52,039 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9739 to 9739. [2024-11-19 14:47:52,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9739 states, 9739 states have (on average 1.8570695143238525) internal successors, (18086), 9738 states have internal predecessors, (18086), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:52,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9739 states to 9739 states and 18086 transitions. [2024-11-19 14:47:52,067 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9739 states and 18086 transitions. [2024-11-19 14:47:52,068 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-19 14:47:52,068 INFO L425 stractBuchiCegarLoop]: Abstraction has 9739 states and 18086 transitions. [2024-11-19 14:47:52,068 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-11-19 14:47:52,068 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9739 states and 18086 transitions. [2024-11-19 14:47:52,098 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:52,098 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:52,098 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:52,099 INFO L148 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] [2024-11-19 14:47:52,099 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:47:52,099 INFO L745 eck$LassoCheckResult]: Stem: 202976#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 202720#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 202721#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 204675#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 196826#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 196827#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 198588#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 198589#L564 assume !(0 == getOrigin_~person#1); 197216#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 197217#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 197831#L999 assume !(0 == initPersonOnFloor_~floor#1); 197832#L1026 assume !(1 == initPersonOnFloor_~floor#1); 203736#L1053 assume !(2 == initPersonOnFloor_~floor#1); 204231#L1080 assume 3 == initPersonOnFloor_~floor#1; 201406#L1081 assume !(0 == initPersonOnFloor_~person#1); 201407#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 199206#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 196076#L791 assume !(0 == callOnFloor_~floorID#1); 195925#L794 assume !(1 == callOnFloor_~floorID#1); 195877#L797 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 195878#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 197472#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 197473#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 203021#L564-1 assume !(0 == getOrigin_~person#1); 198333#L568-1 assume !(1 == getOrigin_~person#1); 198334#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 200556#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 204981#L999-1 assume 0 == initPersonOnFloor_~floor#1; 204969#L1000-2 assume !(0 == initPersonOnFloor_~person#1); 196186#L1003-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 195416#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 204983#L791-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 197451#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 201337#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 201338#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 204494#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 201665#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 201666#L728 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 203123#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 204492#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 202891#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 201414#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 200372#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 195933#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 195934#L2853 assume !(0 != timeShift_~tmp___9~2#1); 196628#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 197263#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 197264#L728-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 197581#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 200505#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 196250#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 196251#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 198798#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 195813#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 195814#L2612 assume !(1 == ~currentHeading~0); 200283#L2622 assume !(0 == ~currentFloorID~0); 200284#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 200090#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 195283#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 195284#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 197576#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 197578#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 199507#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 199039#L3226-2 [2024-11-19 14:47:52,100 INFO L747 eck$LassoCheckResult]: Loop: 199039#L3226-2 assume !false; 199838#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 199839#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 195521#L3235-2 assume !false; 195522#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 198922#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 199039#L3226-2 [2024-11-19 14:47:52,100 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:52,100 INFO L85 PathProgramCache]: Analyzing trace with hash -1364909148, now seen corresponding path program 1 times [2024-11-19 14:47:52,100 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:52,101 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [677512034] [2024-11-19 14:47:52,101 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:52,101 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:52,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:52,166 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:52,166 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:52,166 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [677512034] [2024-11-19 14:47:52,166 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [677512034] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:52,166 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:52,166 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-19 14:47:52,167 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1485463140] [2024-11-19 14:47:52,167 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:52,167 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:52,167 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:52,167 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 5 times [2024-11-19 14:47:52,168 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:52,168 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [767034203] [2024-11-19 14:47:52,168 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:47:52,168 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:52,178 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:47:52,179 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:47:52,179 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:52,180 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:52,185 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:52,200 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:52,200 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-19 14:47:52,200 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-19 14:47:52,200 INFO L87 Difference]: Start difference. First operand 9739 states and 18086 transitions. cyclomatic complexity: 8382 Second operand has 4 states, 4 states have (on average 15.75) internal successors, (63), 4 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:52,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:52,437 INFO L93 Difference]: Finished difference Result 9747 states and 18093 transitions. [2024-11-19 14:47:52,437 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9747 states and 18093 transitions. [2024-11-19 14:47:52,482 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:52,544 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9747 states to 9747 states and 18093 transitions. [2024-11-19 14:47:52,544 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9709 [2024-11-19 14:47:52,561 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9709 [2024-11-19 14:47:52,568 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9747 states and 18093 transitions. [2024-11-19 14:47:52,572 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:52,572 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9747 states and 18093 transitions. [2024-11-19 14:47:52,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9747 states and 18093 transitions. [2024-11-19 14:47:52,916 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9747 to 9747. [2024-11-19 14:47:52,927 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9747 states, 9747 states have (on average 1.8562634656817483) internal successors, (18093), 9746 states have internal predecessors, (18093), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:52,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9747 states to 9747 states and 18093 transitions. [2024-11-19 14:47:52,942 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9747 states and 18093 transitions. [2024-11-19 14:47:52,946 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-19 14:47:52,947 INFO L425 stractBuchiCegarLoop]: Abstraction has 9747 states and 18093 transitions. [2024-11-19 14:47:52,947 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-11-19 14:47:52,947 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9747 states and 18093 transitions. [2024-11-19 14:47:52,969 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:52,970 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:52,970 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:52,970 INFO L148 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] [2024-11-19 14:47:52,970 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:47:52,971 INFO L745 eck$LassoCheckResult]: Stem: 222472#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 222215#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 222216#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 224170#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 216318#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 216319#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 218083#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 218084#L564 assume !(0 == getOrigin_~person#1); 216708#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 216709#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 217323#L999 assume !(0 == initPersonOnFloor_~floor#1); 217324#L1026 assume !(1 == initPersonOnFloor_~floor#1); 223231#L1053 assume !(2 == initPersonOnFloor_~floor#1); 223726#L1080 assume 3 == initPersonOnFloor_~floor#1; 220900#L1081 assume !(0 == initPersonOnFloor_~person#1); 220901#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 218699#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 215568#L791 assume !(0 == callOnFloor_~floorID#1); 215417#L794 assume !(1 == callOnFloor_~floorID#1); 215370#L797 assume !(2 == callOnFloor_~floorID#1); 215371#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 217361#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 216964#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 216965#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 222516#L564-1 assume !(0 == getOrigin_~person#1); 217828#L568-1 assume !(1 == getOrigin_~person#1); 217829#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 220050#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 224476#L999-1 assume 0 == initPersonOnFloor_~floor#1; 224464#L1000-2 assume !(0 == initPersonOnFloor_~person#1); 215680#L1003-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 214909#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 224479#L791-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 216943#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 220831#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 220832#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 223989#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 221159#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 221160#L728 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 222618#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 223987#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 222386#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 220908#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 219865#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 215428#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 215429#L2853 assume !(0 != timeShift_~tmp___9~2#1); 216121#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 216755#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 216756#L728-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 217075#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 219999#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 215742#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 215743#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 218291#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 215306#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 215307#L2612 assume !(1 == ~currentHeading~0); 219776#L2622 assume !(0 == ~currentFloorID~0); 219777#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 219583#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 214776#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 214777#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 217069#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 217071#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 219000#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 218532#L3226-2 [2024-11-19 14:47:52,971 INFO L747 eck$LassoCheckResult]: Loop: 218532#L3226-2 assume !false; 219333#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 219334#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 215014#L3235-2 assume !false; 215015#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 218415#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 218532#L3226-2 [2024-11-19 14:47:52,972 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:52,972 INFO L85 PathProgramCache]: Analyzing trace with hash 1836590047, now seen corresponding path program 1 times [2024-11-19 14:47:52,972 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:52,972 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2069704836] [2024-11-19 14:47:52,972 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:52,972 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:52,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:53,074 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:53,074 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:53,074 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2069704836] [2024-11-19 14:47:53,074 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2069704836] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:53,074 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:53,075 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-19 14:47:53,075 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1721498576] [2024-11-19 14:47:53,075 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:53,075 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:53,075 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:53,075 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 6 times [2024-11-19 14:47:53,075 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:53,075 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1406098314] [2024-11-19 14:47:53,075 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:47:53,075 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:53,083 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-19 14:47:53,083 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:47:53,083 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:53,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:53,093 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:53,109 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:53,110 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-19 14:47:53,110 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-19 14:47:53,113 INFO L87 Difference]: Start difference. First operand 9747 states and 18093 transitions. cyclomatic complexity: 8381 Second operand has 5 states, 5 states have (on average 12.8) internal successors, (64), 5 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:53,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:53,309 INFO L93 Difference]: Finished difference Result 9733 states and 18067 transitions. [2024-11-19 14:47:53,309 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9733 states and 18067 transitions. [2024-11-19 14:47:53,559 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:53,573 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9733 states to 9733 states and 18067 transitions. [2024-11-19 14:47:53,573 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9695 [2024-11-19 14:47:53,580 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9695 [2024-11-19 14:47:53,580 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9733 states and 18067 transitions. [2024-11-19 14:47:53,586 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:53,587 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9733 states and 18067 transitions. [2024-11-19 14:47:53,594 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9733 states and 18067 transitions. [2024-11-19 14:47:53,655 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9733 to 9733. [2024-11-19 14:47:53,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9733 states, 9733 states have (on average 1.8562622007603) internal successors, (18067), 9732 states have internal predecessors, (18067), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:53,673 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9733 states to 9733 states and 18067 transitions. [2024-11-19 14:47:53,674 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9733 states and 18067 transitions. [2024-11-19 14:47:53,674 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-19 14:47:53,674 INFO L425 stractBuchiCegarLoop]: Abstraction has 9733 states and 18067 transitions. [2024-11-19 14:47:53,675 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-11-19 14:47:53,675 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9733 states and 18067 transitions. [2024-11-19 14:47:53,692 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:53,692 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:53,692 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:53,695 INFO L148 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] [2024-11-19 14:47:53,695 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:47:53,696 INFO L745 eck$LassoCheckResult]: Stem: 241953#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 241696#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 241697#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 243651#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 235803#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 235804#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 237567#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 237568#L564 assume !(0 == getOrigin_~person#1); 236193#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 236194#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 236807#L999 assume !(0 == initPersonOnFloor_~floor#1); 236808#L1026 assume !(1 == initPersonOnFloor_~floor#1); 242713#L1053 assume !(2 == initPersonOnFloor_~floor#1); 243208#L1080 assume 3 == initPersonOnFloor_~floor#1; 240381#L1081 assume !(0 == initPersonOnFloor_~person#1); 240382#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 238186#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 235054#L791 assume !(0 == callOnFloor_~floorID#1); 234903#L794 assume !(1 == callOnFloor_~floorID#1); 234856#L797 assume !(2 == callOnFloor_~floorID#1); 234857#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 236845#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 236449#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 236450#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 241997#L564-1 assume !(0 == getOrigin_~person#1); 237312#L568-1 assume !(1 == getOrigin_~person#1); 237313#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 235181#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 235182#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 240816#L1026-1 assume 1 == initPersonOnFloor_~floor#1; 242971#L1027-2 assume !(0 == initPersonOnFloor_~person#1); 236398#L1030-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_1~0 := 1; 235365#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 243955#L791-2 assume !(0 == callOnFloor_~floorID#1); 243952#L794-2 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 236428#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 240312#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 240313#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 243470#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 240641#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 240642#L728 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 242100#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 243468#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 241867#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 240389#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 239349#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 234916#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 234917#L2853 assume !(0 != timeShift_~tmp___9~2#1); 235606#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 236240#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 236241#L728-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 236563#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 239483#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 235227#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 235228#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 237777#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 234792#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 234793#L2612 assume !(1 == ~currentHeading~0); 239260#L2622 assume !(0 == ~currentFloorID~0); 239261#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 239067#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 234264#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 234265#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 236554#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 236556#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 238484#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 238016#L3226-2 [2024-11-19 14:47:53,696 INFO L747 eck$LassoCheckResult]: Loop: 238016#L3226-2 assume !false; 238817#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 238818#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 234499#L3235-2 assume !false; 234500#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 237899#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 238016#L3226-2 [2024-11-19 14:47:53,697 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:53,697 INFO L85 PathProgramCache]: Analyzing trace with hash -852779595, now seen corresponding path program 1 times [2024-11-19 14:47:53,697 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:53,698 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [584773003] [2024-11-19 14:47:53,698 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:53,698 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:53,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:53,817 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:53,817 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:53,817 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [584773003] [2024-11-19 14:47:53,817 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [584773003] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:53,817 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:53,817 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-19 14:47:53,818 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1385166664] [2024-11-19 14:47:53,818 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:53,818 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:53,818 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:53,818 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 7 times [2024-11-19 14:47:53,818 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:53,818 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [757492790] [2024-11-19 14:47:53,818 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-19 14:47:53,818 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:53,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:53,828 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:53,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:53,835 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:53,864 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:53,864 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-19 14:47:53,864 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-19 14:47:53,865 INFO L87 Difference]: Start difference. First operand 9733 states and 18067 transitions. cyclomatic complexity: 8369 Second operand has 5 states, 5 states have (on average 13.2) internal successors, (66), 5 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:54,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:54,200 INFO L93 Difference]: Finished difference Result 9727 states and 18054 transitions. [2024-11-19 14:47:54,200 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9727 states and 18054 transitions. [2024-11-19 14:47:54,222 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:54,235 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9727 states to 9727 states and 18054 transitions. [2024-11-19 14:47:54,235 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9689 [2024-11-19 14:47:54,239 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9689 [2024-11-19 14:47:54,243 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9727 states and 18054 transitions. [2024-11-19 14:47:54,260 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:54,260 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9727 states and 18054 transitions. [2024-11-19 14:47:54,270 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9727 states and 18054 transitions. [2024-11-19 14:47:54,391 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9727 to 9727. [2024-11-19 14:47:54,402 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9727 states, 9727 states have (on average 1.8560707309550735) internal successors, (18054), 9726 states have internal predecessors, (18054), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:54,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9727 states to 9727 states and 18054 transitions. [2024-11-19 14:47:54,417 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9727 states and 18054 transitions. [2024-11-19 14:47:54,417 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-19 14:47:54,418 INFO L425 stractBuchiCegarLoop]: Abstraction has 9727 states and 18054 transitions. [2024-11-19 14:47:54,418 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-11-19 14:47:54,418 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9727 states and 18054 transitions. [2024-11-19 14:47:54,439 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:54,440 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:54,440 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:54,440 INFO L148 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] [2024-11-19 14:47:54,440 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:47:54,441 INFO L745 eck$LassoCheckResult]: Stem: 261415#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 261158#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 261159#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 263113#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 255269#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 255270#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 257029#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 257030#L564 assume !(0 == getOrigin_~person#1); 255659#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 255660#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 256272#L999 assume !(0 == initPersonOnFloor_~floor#1); 256273#L1026 assume !(1 == initPersonOnFloor_~floor#1); 262176#L1053 assume !(2 == initPersonOnFloor_~floor#1); 262670#L1080 assume 3 == initPersonOnFloor_~floor#1; 259843#L1081 assume !(0 == initPersonOnFloor_~person#1); 259844#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 257648#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 254522#L791 assume !(0 == callOnFloor_~floorID#1); 254371#L794 assume !(1 == callOnFloor_~floorID#1); 254324#L797 assume !(2 == callOnFloor_~floorID#1); 254325#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 256307#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 255911#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 255912#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 261459#L564-1 assume !(0 == getOrigin_~person#1); 256774#L568-1 assume !(1 == getOrigin_~person#1); 256775#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 254649#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 254650#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 260278#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 261651#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 261652#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 262293#L1057-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_2~0 := 1; 260544#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 263416#L791-2 assume !(0 == callOnFloor_~floorID#1); 263415#L794-2 assume !(1 == callOnFloor_~floorID#1); 263414#L797-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 255890#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 259774#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 259775#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 262932#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 260104#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 260105#L728 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 261563#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 262930#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 261329#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 259851#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 258811#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 254387#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 254388#L2853 assume !(0 != timeShift_~tmp___9~2#1); 255074#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 255704#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 255705#L728-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 256028#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 258945#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 254695#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 254696#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 257239#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 254266#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 254267#L2612 assume !(1 == ~currentHeading~0); 258722#L2622 assume !(0 == ~currentFloorID~0); 258723#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 258529#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 253732#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 253733#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 256016#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 256018#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 257946#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 257478#L3226-2 [2024-11-19 14:47:54,441 INFO L747 eck$LassoCheckResult]: Loop: 257478#L3226-2 assume !false; 258279#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 258280#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 253967#L3235-2 assume !false; 253968#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 257361#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 257478#L3226-2 [2024-11-19 14:47:54,441 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:54,442 INFO L85 PathProgramCache]: Analyzing trace with hash -1018003050, now seen corresponding path program 1 times [2024-11-19 14:47:54,442 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:54,442 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [545930758] [2024-11-19 14:47:54,442 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:54,442 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:54,461 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:54,512 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:54,513 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:54,513 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [545930758] [2024-11-19 14:47:54,513 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [545930758] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:54,513 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:54,513 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-19 14:47:54,513 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1605844810] [2024-11-19 14:47:54,513 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:54,514 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:54,514 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:54,514 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 8 times [2024-11-19 14:47:54,514 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:54,514 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [583450227] [2024-11-19 14:47:54,514 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:47:54,514 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:54,521 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:47:54,521 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:47:54,521 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:54,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:54,526 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:54,547 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:54,547 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-19 14:47:54,547 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-19 14:47:54,547 INFO L87 Difference]: Start difference. First operand 9727 states and 18054 transitions. cyclomatic complexity: 8362 Second operand has 4 states, 4 states have (on average 17.0) internal successors, (68), 4 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:55,044 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:55,045 INFO L93 Difference]: Finished difference Result 9743 states and 18066 transitions. [2024-11-19 14:47:55,045 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9743 states and 18066 transitions. [2024-11-19 14:47:55,107 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:55,164 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9743 states to 9743 states and 18066 transitions. [2024-11-19 14:47:55,168 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9705 [2024-11-19 14:47:55,176 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9705 [2024-11-19 14:47:55,176 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9743 states and 18066 transitions. [2024-11-19 14:47:55,177 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:55,177 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9743 states and 18066 transitions. [2024-11-19 14:47:55,189 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9743 states and 18066 transitions. [2024-11-19 14:47:55,277 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9743 to 9727. [2024-11-19 14:47:55,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9727 states, 9727 states have (on average 1.8552482779891024) internal successors, (18046), 9726 states have internal predecessors, (18046), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:55,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9727 states to 9727 states and 18046 transitions. [2024-11-19 14:47:55,307 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9727 states and 18046 transitions. [2024-11-19 14:47:55,307 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-19 14:47:55,308 INFO L425 stractBuchiCegarLoop]: Abstraction has 9727 states and 18046 transitions. [2024-11-19 14:47:55,308 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-11-19 14:47:55,308 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9727 states and 18046 transitions. [2024-11-19 14:47:55,339 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:55,340 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:55,340 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:55,341 INFO L148 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] [2024-11-19 14:47:55,341 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:47:55,341 INFO L745 eck$LassoCheckResult]: Stem: 280891#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 280635#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 280636#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 282590#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 274744#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 274745#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 276504#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 276505#L564 assume !(0 == getOrigin_~person#1); 275134#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 275135#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 275746#L999 assume !(0 == initPersonOnFloor_~floor#1); 275747#L1026 assume !(1 == initPersonOnFloor_~floor#1); 281653#L1053 assume !(2 == initPersonOnFloor_~floor#1); 282146#L1080 assume 3 == initPersonOnFloor_~floor#1; 279320#L1081 assume !(0 == initPersonOnFloor_~person#1); 279321#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 277121#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 273998#L791 assume !(0 == callOnFloor_~floorID#1); 273847#L794 assume !(1 == callOnFloor_~floorID#1); 273800#L797 assume !(2 == callOnFloor_~floorID#1); 273801#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 275784#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 275387#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 275388#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 280936#L564-1 assume !(0 == getOrigin_~person#1); 276249#L568-1 assume !(1 == getOrigin_~person#1); 276250#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 274123#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 274124#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 279755#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 281128#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 281129#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 281770#L1057-2 assume !(1 == initPersonOnFloor_~person#1); 280020#L1060-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 280021#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 282915#L791-2 assume !(0 == callOnFloor_~floorID#1); 282914#L794-2 assume !(1 == callOnFloor_~floorID#1); 282913#L797-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 275366#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 279251#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 279252#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 282409#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 279580#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 279581#L728 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 281038#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 282407#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 280806#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 279328#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 278288#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 273855#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 273856#L2853 assume !(0 != timeShift_~tmp___9~2#1); 274546#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 275180#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 275181#L728-3 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 275496#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 278422#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 274170#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 274171#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 276713#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 273736#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 273737#L2612 assume !(1 == ~currentHeading~0); 278199#L2622 assume !(0 == ~currentFloorID~0); 278200#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 278006#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 273209#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 273210#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 275491#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 275493#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 277423#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 276954#L3226-2 [2024-11-19 14:47:55,341 INFO L747 eck$LassoCheckResult]: Loop: 276954#L3226-2 assume !false; 277754#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 277755#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 273443#L3235-2 assume !false; 273444#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 276837#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 276954#L3226-2 [2024-11-19 14:47:55,342 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:55,342 INFO L85 PathProgramCache]: Analyzing trace with hash 1437608285, now seen corresponding path program 1 times [2024-11-19 14:47:55,342 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:55,342 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2057455393] [2024-11-19 14:47:55,342 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:55,342 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:55,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:55,431 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:55,432 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:55,432 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2057455393] [2024-11-19 14:47:55,432 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2057455393] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:55,432 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:55,432 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-19 14:47:55,433 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [183905401] [2024-11-19 14:47:55,433 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:55,433 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:55,433 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:55,433 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 9 times [2024-11-19 14:47:55,433 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:55,433 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1794976810] [2024-11-19 14:47:55,433 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:47:55,434 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:55,445 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-19 14:47:55,446 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:47:55,446 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:55,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:55,452 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:55,470 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:55,471 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-19 14:47:55,471 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-19 14:47:55,471 INFO L87 Difference]: Start difference. First operand 9727 states and 18046 transitions. cyclomatic complexity: 8354 Second operand has 4 states, 4 states have (on average 17.25) internal successors, (69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:58,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:47:58,835 INFO L93 Difference]: Finished difference Result 9727 states and 17666 transitions. [2024-11-19 14:47:58,835 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9727 states and 17666 transitions. [2024-11-19 14:47:58,867 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:58,889 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9727 states to 9727 states and 17666 transitions. [2024-11-19 14:47:58,890 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9689 [2024-11-19 14:47:58,895 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9689 [2024-11-19 14:47:58,896 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9727 states and 17666 transitions. [2024-11-19 14:47:58,897 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:47:58,897 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9727 states and 17666 transitions. [2024-11-19 14:47:58,906 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9727 states and 17666 transitions. [2024-11-19 14:47:58,967 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9727 to 9727. [2024-11-19 14:47:58,977 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9727 states, 9727 states have (on average 1.8161817621054797) internal successors, (17666), 9726 states have internal predecessors, (17666), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:47:58,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9727 states to 9727 states and 17666 transitions. [2024-11-19 14:47:58,991 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9727 states and 17666 transitions. [2024-11-19 14:47:58,992 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-19 14:47:58,992 INFO L425 stractBuchiCegarLoop]: Abstraction has 9727 states and 17666 transitions. [2024-11-19 14:47:58,992 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-11-19 14:47:58,992 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9727 states and 17666 transitions. [2024-11-19 14:47:59,014 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2435 [2024-11-19 14:47:59,015 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:47:59,015 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:47:59,015 INFO L148 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, 1, 1, 1, 1, 1] [2024-11-19 14:47:59,015 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:47:59,015 INFO L745 eck$LassoCheckResult]: Stem: 300342#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 300084#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 300085#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 302053#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 294187#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 294188#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 295938#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 295939#L564 assume !(0 == getOrigin_~person#1); 294577#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 294578#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 295182#L999 assume !(0 == initPersonOnFloor_~floor#1); 295183#L1026 assume !(1 == initPersonOnFloor_~floor#1); 301108#L1053 assume !(2 == initPersonOnFloor_~floor#1); 301605#L1080 assume 3 == initPersonOnFloor_~floor#1; 298760#L1081 assume !(0 == initPersonOnFloor_~person#1); 298761#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 296556#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 293448#L791 assume !(0 == callOnFloor_~floorID#1); 293300#L794 assume !(1 == callOnFloor_~floorID#1); 293253#L797 assume !(2 == callOnFloor_~floorID#1); 293254#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 295219#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 294827#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 294828#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 300387#L564-1 assume !(0 == getOrigin_~person#1); 295684#L568-1 assume !(1 == getOrigin_~person#1); 295685#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 293573#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 293574#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 299198#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 300580#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 300581#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 301226#L1057-2 assume !(1 == initPersonOnFloor_~person#1); 299465#L1060-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 299466#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 302356#L791-2 assume !(0 == callOnFloor_~floorID#1); 302355#L794-2 assume !(1 == callOnFloor_~floorID#1); 302354#L797-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 294806#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 298692#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 298693#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 301869#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 299023#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 299024#L728 assume !(0 == isFloorCalling_~floorID#1); 301903#L732 assume !(1 == isFloorCalling_~floorID#1); 301904#L736 assume !(2 == isFloorCalling_~floorID#1); 301068#L740 assume !(3 == isFloorCalling_~floorID#1); 300487#L744 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 300488#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 301867#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 300255#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 298768#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 297724#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 293308#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 293309#L2853 assume !(0 != timeShift_~tmp___9~2#1); 293991#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 294622#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 294623#L728-3 assume !(0 == isFloorCalling_~floorID#1); 302016#L732-3 assume !(1 == isFloorCalling_~floorID#1); 294932#L736-3 assume !(2 == isFloorCalling_~floorID#1); 294933#L740-3 assume !(3 == isFloorCalling_~floorID#1); 297026#L744-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 297027#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 297857#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 293618#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 293619#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 296147#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 293190#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 293191#L2612 assume !(1 == ~currentHeading~0); 297635#L2622 assume !(0 == ~currentFloorID~0); 297636#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 297441#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 292672#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 292673#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 294928#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 294930#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 296858#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 296389#L3226-2 [2024-11-19 14:47:59,016 INFO L747 eck$LassoCheckResult]: Loop: 296389#L3226-2 assume !false; 297191#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 297192#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 292902#L3235-2 assume !false; 292903#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 296271#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 296389#L3226-2 [2024-11-19 14:47:59,016 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:59,016 INFO L85 PathProgramCache]: Analyzing trace with hash 526400329, now seen corresponding path program 1 times [2024-11-19 14:47:59,016 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:59,016 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [247180648] [2024-11-19 14:47:59,016 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:47:59,017 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:59,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:47:59,084 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:47:59,085 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:47:59,085 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [247180648] [2024-11-19 14:47:59,085 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [247180648] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:47:59,085 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:47:59,085 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-19 14:47:59,085 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1249487684] [2024-11-19 14:47:59,085 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:47:59,086 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:47:59,086 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:47:59,086 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 10 times [2024-11-19 14:47:59,086 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:47:59,086 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [375026217] [2024-11-19 14:47:59,086 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:47:59,086 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:47:59,093 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:47:59,093 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:47:59,093 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:47:59,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:47:59,098 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:47:59,112 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:47:59,112 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-19 14:47:59,113 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2024-11-19 14:47:59,113 INFO L87 Difference]: Start difference. First operand 9727 states and 17666 transitions. cyclomatic complexity: 7974 Second operand has 6 states, 6 states have (on average 12.833333333333334) internal successors, (77), 5 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:03,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:48:03,916 INFO L93 Difference]: Finished difference Result 19801 states and 35572 transitions. [2024-11-19 14:48:03,916 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 19801 states and 35572 transitions. [2024-11-19 14:48:03,978 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 4951 [2024-11-19 14:48:04,021 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 19801 states to 19801 states and 35572 transitions. [2024-11-19 14:48:04,022 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 19725 [2024-11-19 14:48:04,034 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 19725 [2024-11-19 14:48:04,034 INFO L73 IsDeterministic]: Start isDeterministic. Operand 19801 states and 35572 transitions. [2024-11-19 14:48:04,035 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:48:04,036 INFO L218 hiAutomatonCegarLoop]: Abstraction has 19801 states and 35572 transitions. [2024-11-19 14:48:04,050 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 19801 states and 35572 transitions. [2024-11-19 14:48:04,179 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 19801 to 19298. [2024-11-19 14:48:04,198 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19298 states, 19298 states have (on average 1.8172349466265934) internal successors, (35069), 19297 states have internal predecessors, (35069), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:04,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19298 states to 19298 states and 35069 transitions. [2024-11-19 14:48:04,226 INFO L240 hiAutomatonCegarLoop]: Abstraction has 19298 states and 35069 transitions. [2024-11-19 14:48:04,227 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-11-19 14:48:04,228 INFO L425 stractBuchiCegarLoop]: Abstraction has 19298 states and 35069 transitions. [2024-11-19 14:48:04,228 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-11-19 14:48:04,228 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 19298 states and 35069 transitions. [2024-11-19 14:48:04,273 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 4844 [2024-11-19 14:48:04,273 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:48:04,273 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:48:04,274 INFO L148 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, 1, 1, 1, 1, 1, 1] [2024-11-19 14:48:04,274 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:48:04,274 INFO L745 eck$LassoCheckResult]: Stem: 330006#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 329739#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 329740#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 331863#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 323734#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 323735#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 325503#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 325504#L564 assume !(0 == getOrigin_~person#1); 324124#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 324125#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 324738#L999 assume !(0 == initPersonOnFloor_~floor#1); 324739#L1026 assume !(1 == initPersonOnFloor_~floor#1); 330810#L1053 assume !(2 == initPersonOnFloor_~floor#1); 331354#L1080 assume 3 == initPersonOnFloor_~floor#1; 328370#L1081 assume !(0 == initPersonOnFloor_~person#1); 328371#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 326125#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 322993#L791 assume !(0 == callOnFloor_~floorID#1); 322845#L794 assume !(1 == callOnFloor_~floorID#1); 322798#L797 assume !(2 == callOnFloor_~floorID#1); 322799#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 324775#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 324375#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 324376#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 330052#L564-1 assume !(0 == getOrigin_~person#1); 325247#L568-1 assume !(1 == getOrigin_~person#1); 325248#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 323119#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 323120#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 328823#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 330251#L1053-1 assume !(2 == initPersonOnFloor_~floor#1); 328517#L1080-1 assume !(3 == initPersonOnFloor_~floor#1); 328519#L1107-2 assume !(4 == initPersonOnFloor_~floor#1); 326136#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 336089#L791-2 assume !(0 == callOnFloor_~floorID#1); 336088#L794-2 assume !(1 == callOnFloor_~floorID#1); 331763#L797-2 assume !(2 == callOnFloor_~floorID#1); 324353#L800-2 assume !(3 == callOnFloor_~floorID#1); 324355#L803-3 assume 4 == callOnFloor_~floorID#1;~calls_4~0 := 1; 326374#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 333284#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 333282#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 333280#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 333278#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 333276#L728 assume !(0 == isFloorCalling_~floorID#1); 333274#L732 assume !(1 == isFloorCalling_~floorID#1); 333272#L736 assume !(2 == isFloorCalling_~floorID#1); 333270#L740 assume !(3 == isFloorCalling_~floorID#1); 333268#L744 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 333266#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 333264#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 333257#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 328378#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 327305#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 325930#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 337391#L2853 assume !(0 != timeShift_~tmp___9~2#1); 336455#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 336454#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 336453#L728-3 assume !(0 == isFloorCalling_~floorID#1); 336452#L732-3 assume !(1 == isFloorCalling_~floorID#1); 336451#L736-3 assume !(2 == isFloorCalling_~floorID#1); 336450#L740-3 assume !(3 == isFloorCalling_~floorID#1); 336449#L744-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 336443#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 336441#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 336396#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 336391#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 336390#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 336388#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 336387#L2612 assume !(1 == ~currentHeading~0); 336384#L2622 assume !(0 == ~currentFloorID~0); 336378#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 336377#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 336372#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 336368#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 336369#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 336373#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 338130#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 338131#L3226-2 [2024-11-19 14:48:04,274 INFO L747 eck$LassoCheckResult]: Loop: 338131#L3226-2 assume !false; 338128#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 338129#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 338151#L3235-2 assume !false; 338147#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 338145#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 338131#L3226-2 [2024-11-19 14:48:04,274 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:04,275 INFO L85 PathProgramCache]: Analyzing trace with hash 1873642235, now seen corresponding path program 1 times [2024-11-19 14:48:04,275 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:04,275 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1380178478] [2024-11-19 14:48:04,275 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:48:04,275 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:04,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:48:04,586 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:48:04,586 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:48:04,586 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1380178478] [2024-11-19 14:48:04,586 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1380178478] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:48:04,587 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:48:04,587 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-19 14:48:04,587 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [543525408] [2024-11-19 14:48:04,587 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:48:04,587 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:48:04,587 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:04,588 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 11 times [2024-11-19 14:48:04,588 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:04,588 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1810350735] [2024-11-19 14:48:04,588 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:48:04,588 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:04,602 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:48:04,602 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:48:04,603 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:48:04,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:04,609 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:48:04,636 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:48:04,636 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-19 14:48:04,636 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-19 14:48:04,637 INFO L87 Difference]: Start difference. First operand 19298 states and 35069 transitions. cyclomatic complexity: 15841 Second operand has 4 states, 4 states have (on average 19.5) internal successors, (78), 4 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:04,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:48:04,897 INFO L93 Difference]: Finished difference Result 19270 states and 35019 transitions. [2024-11-19 14:48:04,898 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 19270 states and 35019 transitions. [2024-11-19 14:48:04,987 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 4844 [2024-11-19 14:48:05,044 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 19270 states to 19270 states and 35019 transitions. [2024-11-19 14:48:05,044 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 19194 [2024-11-19 14:48:05,062 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 19194 [2024-11-19 14:48:05,062 INFO L73 IsDeterministic]: Start isDeterministic. Operand 19270 states and 35019 transitions. [2024-11-19 14:48:05,064 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:48:05,064 INFO L218 hiAutomatonCegarLoop]: Abstraction has 19270 states and 35019 transitions. [2024-11-19 14:48:05,083 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 19270 states and 35019 transitions. [2024-11-19 14:48:05,264 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 19270 to 19270. [2024-11-19 14:48:05,286 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19270 states, 19270 states have (on average 1.8172807472755579) internal successors, (35019), 19269 states have internal predecessors, (35019), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:05,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19270 states to 19270 states and 35019 transitions. [2024-11-19 14:48:05,324 INFO L240 hiAutomatonCegarLoop]: Abstraction has 19270 states and 35019 transitions. [2024-11-19 14:48:05,325 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-19 14:48:05,325 INFO L425 stractBuchiCegarLoop]: Abstraction has 19270 states and 35019 transitions. [2024-11-19 14:48:05,326 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-11-19 14:48:05,326 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 19270 states and 35019 transitions. [2024-11-19 14:48:05,391 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 4844 [2024-11-19 14:48:05,391 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:48:05,391 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:48:05,392 INFO L148 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, 1, 1, 1, 1, 1, 1] [2024-11-19 14:48:05,392 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:48:05,393 INFO L745 eck$LassoCheckResult]: Stem: 368471#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 368212#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 368213#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 370223#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 362306#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 362307#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 364057#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 364058#L564 assume !(0 == getOrigin_~person#1); 362695#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 362696#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 363301#L999 assume !(0 == initPersonOnFloor_~floor#1); 363302#L1026 assume !(1 == initPersonOnFloor_~floor#1); 369249#L1053 assume !(2 == initPersonOnFloor_~floor#1); 369757#L1080 assume 3 == initPersonOnFloor_~floor#1; 366880#L1081 assume !(0 == initPersonOnFloor_~person#1); 366881#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 364677#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 361567#L791 assume !(0 == callOnFloor_~floorID#1); 361419#L794 assume !(1 == callOnFloor_~floorID#1); 361372#L797 assume !(2 == callOnFloor_~floorID#1); 361373#L800 assume !(3 == callOnFloor_~floorID#1); 366873#L803 assume 4 == callOnFloor_~floorID#1;~calls_4~0 := 1; 369521#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 374274#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 374272#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 374271#L564-1 assume !(0 == getOrigin_~person#1); 374270#L568-1 assume !(1 == getOrigin_~person#1); 374269#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 374266#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 374265#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 374263#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 374262#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 374261#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 374260#L1057-2 assume !(1 == initPersonOnFloor_~person#1); 374259#L1060-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 374255#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 374254#L791-2 assume !(0 == callOnFloor_~floorID#1); 374253#L794-2 assume !(1 == callOnFloor_~floorID#1); 374251#L797-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 364922#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 374245#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 374243#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 374242#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 374241#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 374240#L728 assume !(0 == isFloorCalling_~floorID#1); 374239#L732 assume !(1 == isFloorCalling_~floorID#1); 374238#L736 assume !(2 == isFloorCalling_~floorID#1); 374237#L740 assume !(3 == isFloorCalling_~floorID#1); 374236#L744 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 374235#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 374234#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 374233#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 366888#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 365844#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 364484#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 374207#L2853 assume !(0 != timeShift_~tmp___9~2#1); 374206#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 374203#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 374201#L728-3 assume !(0 == isFloorCalling_~floorID#1); 374198#L732-3 assume !(1 == isFloorCalling_~floorID#1); 374197#L736-3 assume !(2 == isFloorCalling_~floorID#1); 374196#L740-3 assume !(3 == isFloorCalling_~floorID#1); 374195#L744-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 374194#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 374193#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 374190#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 372313#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 372311#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 372309#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 372307#L2612 assume !(1 == ~currentHeading~0); 372305#L2622 assume !(0 == ~currentFloorID~0); 372299#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 372298#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 372293#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 372289#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 372290#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 372294#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 374984#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 374985#L3226-2 [2024-11-19 14:48:05,393 INFO L747 eck$LassoCheckResult]: Loop: 374985#L3226-2 assume !false; 374982#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 374983#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 374995#L3235-2 assume !false; 374992#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 374991#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 374985#L3226-2 [2024-11-19 14:48:05,393 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:05,393 INFO L85 PathProgramCache]: Analyzing trace with hash 1651041609, now seen corresponding path program 1 times [2024-11-19 14:48:05,393 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:05,394 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [67520971] [2024-11-19 14:48:05,394 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:48:05,394 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:05,420 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:48:05,487 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:48:05,487 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:48:05,487 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [67520971] [2024-11-19 14:48:05,488 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [67520971] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:48:05,488 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:48:05,488 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-19 14:48:05,488 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1086801462] [2024-11-19 14:48:05,488 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:48:05,488 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:48:05,489 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:05,490 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 12 times [2024-11-19 14:48:05,490 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:05,491 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [72668605] [2024-11-19 14:48:05,491 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:48:05,491 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:05,500 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-19 14:48:05,500 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:48:05,501 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:48:05,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:05,506 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:48:05,538 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:48:05,539 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-19 14:48:05,539 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-19 14:48:05,539 INFO L87 Difference]: Start difference. First operand 19270 states and 35019 transitions. cyclomatic complexity: 15819 Second operand has 5 states, 5 states have (on average 15.6) internal successors, (78), 5 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:05,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:48:05,930 INFO L93 Difference]: Finished difference Result 19257 states and 34997 transitions. [2024-11-19 14:48:05,930 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 19257 states and 34997 transitions. [2024-11-19 14:48:05,995 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 4844 [2024-11-19 14:48:06,042 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 19257 states to 19257 states and 34997 transitions. [2024-11-19 14:48:06,042 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 19181 [2024-11-19 14:48:06,057 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 19181 [2024-11-19 14:48:06,058 INFO L73 IsDeterministic]: Start isDeterministic. Operand 19257 states and 34997 transitions. [2024-11-19 14:48:06,064 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:48:06,065 INFO L218 hiAutomatonCegarLoop]: Abstraction has 19257 states and 34997 transitions. [2024-11-19 14:48:06,081 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 19257 states and 34997 transitions. [2024-11-19 14:48:06,206 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 19257 to 19257. [2024-11-19 14:48:06,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19257 states, 19257 states have (on average 1.817365113984525) internal successors, (34997), 19256 states have internal predecessors, (34997), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:06,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19257 states to 19257 states and 34997 transitions. [2024-11-19 14:48:06,256 INFO L240 hiAutomatonCegarLoop]: Abstraction has 19257 states and 34997 transitions. [2024-11-19 14:48:06,256 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-19 14:48:06,257 INFO L425 stractBuchiCegarLoop]: Abstraction has 19257 states and 34997 transitions. [2024-11-19 14:48:06,257 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-11-19 14:48:06,257 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 19257 states and 34997 transitions. [2024-11-19 14:48:06,304 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 4844 [2024-11-19 14:48:06,304 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:48:06,305 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:48:06,305 INFO L148 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, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:48:06,306 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:48:06,306 INFO L745 eck$LassoCheckResult]: Stem: 407000#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 406737#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 406738#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 408733#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 400841#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 400842#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 402594#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 402595#L564 assume !(0 == getOrigin_~person#1); 401230#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 401231#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 401836#L999 assume !(0 == initPersonOnFloor_~floor#1); 401837#L1026 assume !(1 == initPersonOnFloor_~floor#1); 407773#L1053 assume !(2 == initPersonOnFloor_~floor#1); 408273#L1080 assume 3 == initPersonOnFloor_~floor#1; 405411#L1081 assume !(0 == initPersonOnFloor_~person#1); 405412#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 403213#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 400102#L791 assume !(0 == callOnFloor_~floorID#1); 399954#L794 assume !(1 == callOnFloor_~floorID#1); 399907#L797 assume !(2 == callOnFloor_~floorID#1); 399908#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 401873#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 401481#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 401482#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 407044#L564-1 assume !(0 == getOrigin_~person#1); 402340#L568-1 assume !(1 == getOrigin_~person#1); 402341#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 400228#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 400229#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 405851#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 407238#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 407239#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 407894#L1057-2 assume !(1 == initPersonOnFloor_~person#1); 406118#L1060-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 405295#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 405296#L791-2 assume !(0 == callOnFloor_~floorID#1); 408561#L794-2 assume !(1 == callOnFloor_~floorID#1); 408562#L797-2 assume !(2 == callOnFloor_~floorID#1); 401459#L800-2 assume !(3 == callOnFloor_~floorID#1); 401461#L803-3 assume 4 == callOnFloor_~floorID#1;~calls_4~0 := 1; 403455#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 413468#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 413467#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 413466#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 413465#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 413464#L728 assume !(0 == isFloorCalling_~floorID#1); 413463#L732 assume !(1 == isFloorCalling_~floorID#1); 413462#L736 assume !(2 == isFloorCalling_~floorID#1); 413461#L740 assume !(3 == isFloorCalling_~floorID#1); 413460#L744 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 413459#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 413458#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 413457#L2700 assume 0 != stopRequestedAtCurrentFloor_~tmp~24#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 405419#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret83#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret83#1;havoc stopRequestedAtCurrentFloor_#t~ret83#1; 404373#L2704 assume !(~executiveFloor~0 == stopRequestedAtCurrentFloor_~tmp___0~8#1);stopRequestedAtCurrentFloor_~retValue_acc~27#1 := 0;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 403017#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 413426#L2853 assume !(0 != timeShift_~tmp___9~2#1); 413427#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 413878#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 413877#L728-3 assume !(0 == isFloorCalling_~floorID#1); 413876#L732-3 assume !(1 == isFloorCalling_~floorID#1); 413875#L736-3 assume !(2 == isFloorCalling_~floorID#1); 413874#L740-3 assume !(3 == isFloorCalling_~floorID#1); 413873#L744-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 413872#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 413871#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 413870#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 412839#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 412838#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 412836#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 412835#L2612 assume !(1 == ~currentHeading~0); 412832#L2622 assume !(0 == ~currentFloorID~0); 412826#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 412825#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 412820#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 412816#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 412817#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 412821#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 414599#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 414600#L3226-2 [2024-11-19 14:48:06,306 INFO L747 eck$LassoCheckResult]: Loop: 414600#L3226-2 assume !false; 414597#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 414598#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 414610#L3235-2 assume !false; 414607#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 414606#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 414600#L3226-2 [2024-11-19 14:48:06,307 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:06,307 INFO L85 PathProgramCache]: Analyzing trace with hash 1211647684, now seen corresponding path program 1 times [2024-11-19 14:48:06,307 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:06,308 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [854450351] [2024-11-19 14:48:06,308 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:48:06,308 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:06,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:48:06,434 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:48:06,434 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:48:06,434 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [854450351] [2024-11-19 14:48:06,434 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [854450351] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:48:06,434 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:48:06,435 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-19 14:48:06,435 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1030981007] [2024-11-19 14:48:06,435 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:48:06,435 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:48:06,435 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:06,435 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 13 times [2024-11-19 14:48:06,436 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:06,436 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [436906618] [2024-11-19 14:48:06,436 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-19 14:48:06,436 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:06,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:06,443 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:48:06,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:06,449 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:48:06,469 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:48:06,469 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-19 14:48:06,470 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-19 14:48:06,470 INFO L87 Difference]: Start difference. First operand 19257 states and 34997 transitions. cyclomatic complexity: 15810 Second operand has 5 states, 5 states have (on average 15.8) internal successors, (79), 5 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:06,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:48:06,738 INFO L93 Difference]: Finished difference Result 13433 states and 24411 transitions. [2024-11-19 14:48:06,738 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 13433 states and 24411 transitions. [2024-11-19 14:48:06,786 INFO L131 ngComponentsAnalysis]: Automaton has 42 accepting balls. 4476 [2024-11-19 14:48:06,821 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 13433 states to 13433 states and 24411 transitions. [2024-11-19 14:48:06,821 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 13395 [2024-11-19 14:48:06,830 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 13395 [2024-11-19 14:48:06,830 INFO L73 IsDeterministic]: Start isDeterministic. Operand 13433 states and 24411 transitions. [2024-11-19 14:48:06,837 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:48:06,837 INFO L218 hiAutomatonCegarLoop]: Abstraction has 13433 states and 24411 transitions. [2024-11-19 14:48:06,849 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 13433 states and 24411 transitions. [2024-11-19 14:48:06,935 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 13433 to 13433. [2024-11-19 14:48:06,949 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13433 states, 13433 states have (on average 1.8172411226085015) internal successors, (24411), 13432 states have internal predecessors, (24411), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:06,969 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13433 states to 13433 states and 24411 transitions. [2024-11-19 14:48:06,969 INFO L240 hiAutomatonCegarLoop]: Abstraction has 13433 states and 24411 transitions. [2024-11-19 14:48:06,970 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-19 14:48:06,970 INFO L425 stractBuchiCegarLoop]: Abstraction has 13433 states and 24411 transitions. [2024-11-19 14:48:06,970 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-11-19 14:48:06,970 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 13433 states and 24411 transitions. [2024-11-19 14:48:07,003 INFO L131 ngComponentsAnalysis]: Automaton has 42 accepting balls. 4476 [2024-11-19 14:48:07,003 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:48:07,003 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:48:07,004 INFO L148 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, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:48:07,004 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:48:07,004 INFO L745 eck$LassoCheckResult]: Stem: 439621#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 439363#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 439364#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 441319#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 433529#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 433530#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 435259#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 435260#L564 assume !(0 == getOrigin_~person#1); 433913#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 433914#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 434509#L999 assume !(0 == initPersonOnFloor_~floor#1); 434510#L1026 assume !(1 == initPersonOnFloor_~floor#1); 440382#L1053 assume !(2 == initPersonOnFloor_~floor#1); 440872#L1080 assume 3 == initPersonOnFloor_~floor#1; 438049#L1081 assume !(0 == initPersonOnFloor_~person#1); 438050#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 435869#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 432797#L791 assume !(0 == callOnFloor_~floorID#1); 432649#L794 assume !(1 == callOnFloor_~floorID#1); 432602#L797 assume !(2 == callOnFloor_~floorID#1); 432603#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 434546#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 434154#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 434155#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 439665#L564-1 assume !(0 == getOrigin_~person#1); 435008#L568-1 assume !(1 == getOrigin_~person#1); 435009#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 432919#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 432920#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 438480#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 439858#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 439859#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 440499#L1057-2 assume !(1 == initPersonOnFloor_~person#1); 438745#L1060-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 437933#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 437934#L791-2 assume !(0 == callOnFloor_~floorID#1); 441150#L794-2 assume !(1 == callOnFloor_~floorID#1); 441151#L797-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 441238#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 437983#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 437984#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 441134#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 438308#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 438309#L728 assume !(0 == isFloorCalling_~floorID#1); 441168#L732 assume !(1 == isFloorCalling_~floorID#1); 441169#L736 assume !(2 == isFloorCalling_~floorID#1); 440343#L740 assume !(3 == isFloorCalling_~floorID#1); 439766#L744 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 439767#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 441132#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 439534#L2700 assume !(0 != stopRequestedAtCurrentFloor_~tmp~24#1);assume { :begin_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1 := (if stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 < 0 && 0 != stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 % 3 then 1 + stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3 else stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3); 439535#L2674-1 assume ~weight~0 > stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 439206#getCurrentFloorID_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~16#1; 439207#L1980-2 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~16#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~16#1; 438852#buttonForFloorIsPressed_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1 := (if 1 == stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 then 1 else 0);stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1; 434856#stopRequestedAtCurrentFloor__wrappee__twothirdsfull_returnLabel#2 stopRequestedAtCurrentFloor_#t~ret85#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :end_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;stopRequestedAtCurrentFloor_~retValue_acc~27#1 := stopRequestedAtCurrentFloor_#t~ret85#1;havoc stopRequestedAtCurrentFloor_#t~ret85#1;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 432660#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 432661#L2853 assume !(0 != timeShift_~tmp___9~2#1); 433337#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 433958#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 433959#L728-3 assume !(0 == isFloorCalling_~floorID#1); 441282#L732-3 assume !(1 == isFloorCalling_~floorID#1); 434264#L736-3 assume !(2 == isFloorCalling_~floorID#1); 434265#L740-3 assume !(3 == isFloorCalling_~floorID#1); 436331#L744-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 436332#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 437154#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 432963#L2555 assume 0 != stopRequestedInDirection_~tmp___0~5#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 432964#getCurrentFloorID_returnLabel#4 stopRequestedInDirection_#t~ret74#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedInDirection_~tmp~20#1 := stopRequestedInDirection_#t~ret74#1;havoc stopRequestedInDirection_#t~ret74#1;stopRequestedInDirection_~__cil_tmp7~6#1 := (if 1 == stopRequestedInDirection_~dir#1 then 1 else 0);stopRequestedInDirection_~__cil_tmp8~7#1 := (if stopRequestedInDirection_~tmp~20#1 < ~executiveFloor~0 then 1 else 0);stopRequestedInDirection_~retValue_acc~23#1 := (if stopRequestedInDirection_~__cil_tmp8~7#1 == stopRequestedInDirection_~__cil_tmp7~6#1 then 1 else 0);stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 435458#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 432539#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 432540#L2612 assume !(1 == ~currentHeading~0); 436935#L2622 assume !(0 == ~currentFloorID~0); 436936#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 436741#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 432023#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 432024#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 434256#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 434258#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 436163#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 435699#L3226-2 [2024-11-19 14:48:07,005 INFO L747 eck$LassoCheckResult]: Loop: 435699#L3226-2 assume !false; 436493#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 436494#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 432253#L3235-2 assume !false; 432254#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 435582#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 435699#L3226-2 [2024-11-19 14:48:07,005 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:07,005 INFO L85 PathProgramCache]: Analyzing trace with hash 463883413, now seen corresponding path program 1 times [2024-11-19 14:48:07,005 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:07,005 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1737958954] [2024-11-19 14:48:07,005 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:48:07,005 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:07,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:48:07,092 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:48:07,092 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:48:07,092 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1737958954] [2024-11-19 14:48:07,093 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1737958954] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:48:07,093 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:48:07,093 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-19 14:48:07,093 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [736996947] [2024-11-19 14:48:07,093 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:48:07,094 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:48:07,094 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:07,094 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 14 times [2024-11-19 14:48:07,094 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:07,094 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1854820119] [2024-11-19 14:48:07,094 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:48:07,094 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:07,101 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:48:07,101 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:48:07,102 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:48:07,102 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:07,106 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:48:07,120 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:48:07,120 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-19 14:48:07,121 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2024-11-19 14:48:07,121 INFO L87 Difference]: Start difference. First operand 13433 states and 24411 transitions. cyclomatic complexity: 11022 Second operand has 6 states, 6 states have (on average 13.333333333333334) internal successors, (80), 5 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:10,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:48:10,185 INFO L93 Difference]: Finished difference Result 13776 states and 24744 transitions. [2024-11-19 14:48:10,186 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 13776 states and 24744 transitions. [2024-11-19 14:48:10,232 INFO L131 ngComponentsAnalysis]: Automaton has 42 accepting balls. 4581 [2024-11-19 14:48:10,264 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 13776 states to 13776 states and 24744 transitions. [2024-11-19 14:48:10,264 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 13738 [2024-11-19 14:48:10,273 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 13738 [2024-11-19 14:48:10,274 INFO L73 IsDeterministic]: Start isDeterministic. Operand 13776 states and 24744 transitions. [2024-11-19 14:48:10,279 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:48:10,279 INFO L218 hiAutomatonCegarLoop]: Abstraction has 13776 states and 24744 transitions. [2024-11-19 14:48:10,305 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 13776 states and 24744 transitions. [2024-11-19 14:48:10,519 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 13776 to 13423. [2024-11-19 14:48:10,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13423 states, 13423 states have (on average 1.8171049690829173) internal successors, (24391), 13422 states have internal predecessors, (24391), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:10,556 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13423 states to 13423 states and 24391 transitions. [2024-11-19 14:48:10,556 INFO L240 hiAutomatonCegarLoop]: Abstraction has 13423 states and 24391 transitions. [2024-11-19 14:48:10,557 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-11-19 14:48:10,557 INFO L425 stractBuchiCegarLoop]: Abstraction has 13423 states and 24391 transitions. [2024-11-19 14:48:10,561 INFO L332 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2024-11-19 14:48:10,561 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 13423 states and 24391 transitions. [2024-11-19 14:48:10,597 INFO L131 ngComponentsAnalysis]: Automaton has 42 accepting balls. 4474 [2024-11-19 14:48:10,597 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:48:10,597 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:48:10,601 INFO L148 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:48:10,605 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:48:10,606 INFO L745 eck$LassoCheckResult]: Stem: 466931#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 466669#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 466670#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 468750#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 460754#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 460755#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 462489#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 462490#L564 assume !(0 == getOrigin_~person#1); 461139#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 461140#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 461736#L999 assume !(0 == initPersonOnFloor_~floor#1); 461737#L1026 assume !(1 == initPersonOnFloor_~floor#1); 467731#L1053 assume !(2 == initPersonOnFloor_~floor#1); 468257#L1080 assume 3 == initPersonOnFloor_~floor#1; 465326#L1081 assume !(0 == initPersonOnFloor_~person#1); 465327#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 463105#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 460019#L791 assume !(0 == callOnFloor_~floorID#1); 459871#L794 assume !(1 == callOnFloor_~floorID#1); 459824#L797 assume !(2 == callOnFloor_~floorID#1); 459825#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 461773#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 461381#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 461382#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 466980#L564-1 assume !(0 == getOrigin_~person#1); 462236#L568-1 assume !(1 == getOrigin_~person#1); 462237#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 460143#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 460144#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 465776#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 467183#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 467184#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 467858#L1057-2 assume !(1 == initPersonOnFloor_~person#1); 466044#L1060-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 465209#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 465210#L791-2 assume !(0 == callOnFloor_~floorID#1); 468555#L794-2 assume !(1 == callOnFloor_~floorID#1); 468556#L797-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 468655#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 465260#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 465261#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 468539#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 465600#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 465601#L728 assume !(0 == isFloorCalling_~floorID#1); 468575#L732 assume !(1 == isFloorCalling_~floorID#1); 468576#L736 assume !(2 == isFloorCalling_~floorID#1); 467690#L740 assume !(3 == isFloorCalling_~floorID#1); 467084#L744 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 467085#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 468536#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 466843#L2700 assume !(0 != stopRequestedAtCurrentFloor_~tmp~24#1);assume { :begin_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1 := (if stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 < 0 && 0 != stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 % 3 then 1 + stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3 else stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3); 466844#L2674-1 assume ~weight~0 > stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 466509#getCurrentFloorID_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~16#1; 466510#L1980-2 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~16#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~16#1; 466151#buttonForFloorIsPressed_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1 := (if 1 == stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 then 1 else 0);stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1; 462083#stopRequestedAtCurrentFloor__wrappee__twothirdsfull_returnLabel#2 stopRequestedAtCurrentFloor_#t~ret85#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :end_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;stopRequestedAtCurrentFloor_~retValue_acc~27#1 := stopRequestedAtCurrentFloor_#t~ret85#1;havoc stopRequestedAtCurrentFloor_#t~ret85#1;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 459882#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 459883#L2853 assume !(0 != timeShift_~tmp___9~2#1); 460561#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 461184#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 461185#L728-3 assume !(0 == isFloorCalling_~floorID#1); 468706#L732-3 assume !(1 == isFloorCalling_~floorID#1); 461486#L736-3 assume !(2 == isFloorCalling_~floorID#1); 461487#L740-3 assume !(3 == isFloorCalling_~floorID#1); 463573#L744-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 463574#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 464409#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 460187#L2555 assume !(0 != stopRequestedInDirection_~tmp___0~5#1);assume { :begin_inline_stopRequestedInDirection__wrappee__twothirdsfull } true;stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#res#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret70#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret71#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1, stopRequestedInDirection__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1, stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;stopRequestedInDirection__wrappee__twothirdsfull_~dir#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1;stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 := 2 * ~maximumWeight~0;stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1 := (if stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 < 0 && 0 != stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 % 3 then 1 + stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 / 3 else stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 / 3);stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1; 460188#L2577 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~24#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~24#1; 460326#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1 := stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1;stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1 := stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1; 467453#L2521 assume !(0 != stopRequestedInDirection__wrappee__twothirdsfull_~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__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret58#1, stopRequestedInDirection__wrappee__empty_#t~ret59#1, stopRequestedInDirection__wrappee__empty_#t~ret60#1, stopRequestedInDirection__wrappee__empty_#t~ret61#1, stopRequestedInDirection__wrappee__empty_#t~ret62#1, stopRequestedInDirection__wrappee__empty_#t~ret63#1, stopRequestedInDirection__wrappee__empty_#t~ret64#1, stopRequestedInDirection__wrappee__empty_#t~ret65#1, stopRequestedInDirection__wrappee__empty_#t~ret66#1, stopRequestedInDirection__wrappee__empty_#t~ret67#1, stopRequestedInDirection__wrappee__empty_#t~ret68#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1, stopRequestedInDirection__wrappee__empty_~tmp~18#1, stopRequestedInDirection__wrappee__empty_~tmp___0~4#1, stopRequestedInDirection__wrappee__empty_~tmp___1~3#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~21#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~18#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~4#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~3#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; 468075#L2167-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 462557#L2336-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1; 459457#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret58#1, stopRequestedInDirection__wrappee__empty_#t~ret59#1, stopRequestedInDirection__wrappee__empty_#t~ret60#1, stopRequestedInDirection__wrappee__empty_#t~ret61#1, stopRequestedInDirection__wrappee__empty_#t~ret62#1, stopRequestedInDirection__wrappee__empty_#t~ret63#1, stopRequestedInDirection__wrappee__empty_#t~ret64#1, stopRequestedInDirection__wrappee__empty_#t~ret65#1, stopRequestedInDirection__wrappee__empty_#t~ret66#1, stopRequestedInDirection__wrappee__empty_#t~ret67#1, stopRequestedInDirection__wrappee__empty_#t~ret68#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1, stopRequestedInDirection__wrappee__empty_~tmp~18#1, stopRequestedInDirection__wrappee__empty_~tmp___0~4#1, stopRequestedInDirection__wrappee__empty_~tmp___1~3#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;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1 := stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1;stopRequestedInDirection__wrappee__twothirdsfull_#res#1 := stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1; 460393#stopRequestedInDirection__wrappee__twothirdsfull_returnLabel#1 stopRequestedInDirection_#t~ret75#1 := stopRequestedInDirection__wrappee__twothirdsfull_#res#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret70#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret71#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1, stopRequestedInDirection__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1, stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__twothirdsfull } true;stopRequestedInDirection_~retValue_acc~23#1 := stopRequestedInDirection_#t~ret75#1;havoc stopRequestedInDirection_#t~ret75#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 462692#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 459761#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 459762#L2612 assume !(1 == ~currentHeading~0); 464186#L2622 assume !(0 == ~currentFloorID~0); 464187#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 463988#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 459247#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 459248#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 461482#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 461484#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 463406#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 462935#L3226-2 [2024-11-19 14:48:10,606 INFO L747 eck$LassoCheckResult]: Loop: 462935#L3226-2 assume !false; 463737#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 463738#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 459476#L3235-2 assume !false; 459477#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 462816#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 462935#L3226-2 [2024-11-19 14:48:10,607 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:10,607 INFO L85 PathProgramCache]: Analyzing trace with hash 816407335, now seen corresponding path program 1 times [2024-11-19 14:48:10,607 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:10,607 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1436195475] [2024-11-19 14:48:10,607 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:48:10,607 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:10,639 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:48:10,660 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:48:10,660 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:48:10,660 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1436195475] [2024-11-19 14:48:10,660 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1436195475] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:48:10,660 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:48:10,660 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-19 14:48:10,660 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [986977511] [2024-11-19 14:48:10,660 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:48:10,661 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:48:10,661 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:10,661 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 15 times [2024-11-19 14:48:10,661 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:10,661 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1603676104] [2024-11-19 14:48:10,661 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:48:10,661 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:10,668 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-19 14:48:10,668 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:48:10,668 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:48:10,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:10,673 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:48:10,686 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:48:10,687 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-19 14:48:10,687 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-19 14:48:10,687 INFO L87 Difference]: Start difference. First operand 13423 states and 24391 transitions. cyclomatic complexity: 11012 Second operand has 3 states, 3 states have (on average 28.666666666666668) internal successors, (86), 2 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:11,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:48:11,224 INFO L93 Difference]: Finished difference Result 25542 states and 46298 transitions. [2024-11-19 14:48:11,224 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 25542 states and 46298 transitions. [2024-11-19 14:48:11,313 INFO L131 ngComponentsAnalysis]: Automaton has 82 accepting balls. 8826 [2024-11-19 14:48:11,380 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 25542 states to 25542 states and 46298 transitions. [2024-11-19 14:48:11,381 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25468 [2024-11-19 14:48:11,401 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25468 [2024-11-19 14:48:11,401 INFO L73 IsDeterministic]: Start isDeterministic. Operand 25542 states and 46298 transitions. [2024-11-19 14:48:11,402 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:48:11,402 INFO L218 hiAutomatonCegarLoop]: Abstraction has 25542 states and 46298 transitions. [2024-11-19 14:48:11,422 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25542 states and 46298 transitions. [2024-11-19 14:48:11,789 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25542 to 25540. [2024-11-19 14:48:11,814 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25540 states, 25540 states have (on average 1.8126859827721222) internal successors, (46296), 25539 states have internal predecessors, (46296), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:11,854 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25540 states to 25540 states and 46296 transitions. [2024-11-19 14:48:11,854 INFO L240 hiAutomatonCegarLoop]: Abstraction has 25540 states and 46296 transitions. [2024-11-19 14:48:11,854 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-19 14:48:11,855 INFO L425 stractBuchiCegarLoop]: Abstraction has 25540 states and 46296 transitions. [2024-11-19 14:48:11,855 INFO L332 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2024-11-19 14:48:11,855 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 25540 states and 46296 transitions. [2024-11-19 14:48:11,914 INFO L131 ngComponentsAnalysis]: Automaton has 82 accepting balls. 8826 [2024-11-19 14:48:11,915 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:48:11,915 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:48:11,915 INFO L148 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:48:11,916 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:48:11,916 INFO L745 eck$LassoCheckResult]: Stem: 505915#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 505651#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 505652#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 507724#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 499723#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 499724#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 501466#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 501467#L564 assume !(0 == getOrigin_~person#1); 500111#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 500112#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 500712#L999 assume !(0 == initPersonOnFloor_~floor#1); 500713#L1026 assume !(1 == initPersonOnFloor_~floor#1); 506708#L1053 assume !(2 == initPersonOnFloor_~floor#1); 507238#L1080 assume 3 == initPersonOnFloor_~floor#1; 504298#L1081 assume !(0 == initPersonOnFloor_~person#1); 504299#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 502079#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 498989#L791 assume !(0 == callOnFloor_~floorID#1); 498841#L794 assume !(1 == callOnFloor_~floorID#1); 498794#L797 assume !(2 == callOnFloor_~floorID#1); 498795#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 500749#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 500356#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 500357#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 505962#L564-1 assume !(0 == getOrigin_~person#1); 501214#L568-1 assume !(1 == getOrigin_~person#1); 501215#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 499110#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 499111#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 504736#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 506166#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 506167#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 506839#L1057-2 assume !(1 == initPersonOnFloor_~person#1); 505010#L1060-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 504179#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 504180#L791-2 assume !(0 == callOnFloor_~floorID#1); 507537#L794-2 assume !(1 == callOnFloor_~floorID#1); 507538#L797-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 507634#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 504232#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 504233#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 507520#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 504563#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 504564#L728 assume !(0 == isFloorCalling_~floorID#1); 507558#L732 assume !(1 == isFloorCalling_~floorID#1); 507559#L736 assume !(2 == isFloorCalling_~floorID#1); 506668#L740 assume !(3 == isFloorCalling_~floorID#1); 506065#L744 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 506066#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 507517#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 505829#L2700 assume !(0 != stopRequestedAtCurrentFloor_~tmp~24#1);assume { :begin_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1 := (if stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 < 0 && 0 != stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 % 3 then 1 + stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3 else stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3); 505830#L2674-1 assume ~weight~0 > stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 505490#getCurrentFloorID_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~16#1; 505491#L1980-2 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~16#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~16#1; 505122#buttonForFloorIsPressed_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1 := (if 1 == stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 then 1 else 0);stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1; 501059#stopRequestedAtCurrentFloor__wrappee__twothirdsfull_returnLabel#2 stopRequestedAtCurrentFloor_#t~ret85#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :end_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;stopRequestedAtCurrentFloor_~retValue_acc~27#1 := stopRequestedAtCurrentFloor_#t~ret85#1;havoc stopRequestedAtCurrentFloor_#t~ret85#1;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 498849#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 498850#L2853 assume !(0 != timeShift_~tmp___9~2#1); 499527#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 500156#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 500157#L728-3 assume !(0 == isFloorCalling_~floorID#1); 507684#L732-3 assume !(1 == isFloorCalling_~floorID#1); 500461#L736-3 assume !(2 == isFloorCalling_~floorID#1); 500462#L740-3 assume !(3 == isFloorCalling_~floorID#1); 502553#L744-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 502554#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 503392#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 499155#L2555 assume !(0 != stopRequestedInDirection_~tmp___0~5#1);assume { :begin_inline_stopRequestedInDirection__wrappee__twothirdsfull } true;stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#res#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret70#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret71#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1, stopRequestedInDirection__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1, stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;stopRequestedInDirection__wrappee__twothirdsfull_~dir#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1;stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 := 2 * ~maximumWeight~0;stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1 := (if stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 < 0 && 0 != stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 % 3 then 1 + stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 / 3 else stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 / 3);stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1; 499156#L2577 assume !(0 != ~floorButtons_0~0); 503953#L2581 assume 0 != ~floorButtons_1~0;isAnyLiftButtonPressed_~retValue_acc~24#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~24#1; 499294#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1 := stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1;stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1 := stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1; 506433#L2521 assume !(0 != stopRequestedInDirection__wrappee__twothirdsfull_~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__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret58#1, stopRequestedInDirection__wrappee__empty_#t~ret59#1, stopRequestedInDirection__wrappee__empty_#t~ret60#1, stopRequestedInDirection__wrappee__empty_#t~ret61#1, stopRequestedInDirection__wrappee__empty_#t~ret62#1, stopRequestedInDirection__wrappee__empty_#t~ret63#1, stopRequestedInDirection__wrappee__empty_#t~ret64#1, stopRequestedInDirection__wrappee__empty_#t~ret65#1, stopRequestedInDirection__wrappee__empty_#t~ret66#1, stopRequestedInDirection__wrappee__empty_#t~ret67#1, stopRequestedInDirection__wrappee__empty_#t~ret68#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1, stopRequestedInDirection__wrappee__empty_~tmp~18#1, stopRequestedInDirection__wrappee__empty_~tmp___0~4#1, stopRequestedInDirection__wrappee__empty_~tmp___1~3#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~21#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~18#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~4#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~3#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; 507061#L2167-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 501534#L2336-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1; 498426#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret58#1, stopRequestedInDirection__wrappee__empty_#t~ret59#1, stopRequestedInDirection__wrappee__empty_#t~ret60#1, stopRequestedInDirection__wrappee__empty_#t~ret61#1, stopRequestedInDirection__wrappee__empty_#t~ret62#1, stopRequestedInDirection__wrappee__empty_#t~ret63#1, stopRequestedInDirection__wrappee__empty_#t~ret64#1, stopRequestedInDirection__wrappee__empty_#t~ret65#1, stopRequestedInDirection__wrappee__empty_#t~ret66#1, stopRequestedInDirection__wrappee__empty_#t~ret67#1, stopRequestedInDirection__wrappee__empty_#t~ret68#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1, stopRequestedInDirection__wrappee__empty_~tmp~18#1, stopRequestedInDirection__wrappee__empty_~tmp___0~4#1, stopRequestedInDirection__wrappee__empty_~tmp___1~3#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;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1 := stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1;stopRequestedInDirection__wrappee__twothirdsfull_#res#1 := stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1; 499362#stopRequestedInDirection__wrappee__twothirdsfull_returnLabel#1 stopRequestedInDirection_#t~ret75#1 := stopRequestedInDirection__wrappee__twothirdsfull_#res#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret70#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret71#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1, stopRequestedInDirection__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1, stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__twothirdsfull } true;stopRequestedInDirection_~retValue_acc~23#1 := stopRequestedInDirection_#t~ret75#1;havoc stopRequestedInDirection_#t~ret75#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 501668#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 498730#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 498731#L2612 assume !(1 == ~currentHeading~0); 503170#L2622 assume !(0 == ~currentFloorID~0); 503171#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 502971#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 502972#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 509507#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 509508#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 509511#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 509731#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 509732#L3226-2 [2024-11-19 14:48:11,916 INFO L747 eck$LassoCheckResult]: Loop: 509732#L3226-2 assume !false; 509729#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 509730#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 509742#L3235-2 assume !false; 509739#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 509737#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 509732#L3226-2 [2024-11-19 14:48:11,917 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:11,917 INFO L85 PathProgramCache]: Analyzing trace with hash 1916430556, now seen corresponding path program 1 times [2024-11-19 14:48:11,917 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:11,917 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1749564043] [2024-11-19 14:48:11,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:48:11,917 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:11,936 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:48:11,955 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:48:11,955 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:48:11,956 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1749564043] [2024-11-19 14:48:11,956 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1749564043] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:48:11,956 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:48:11,956 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-19 14:48:11,956 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1404480072] [2024-11-19 14:48:11,956 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:48:11,956 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:48:11,956 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:11,957 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 16 times [2024-11-19 14:48:11,957 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:11,957 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1118661098] [2024-11-19 14:48:11,957 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:48:11,957 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:11,964 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:48:11,964 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:48:11,964 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:48:11,965 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:11,968 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:48:11,981 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:48:11,982 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-19 14:48:11,982 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-19 14:48:11,982 INFO L87 Difference]: Start difference. First operand 25540 states and 46296 transitions. cyclomatic complexity: 20842 Second operand has 3 states, 3 states have (on average 29.0) internal successors, (87), 2 states have internal predecessors, (87), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:12,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:48:12,641 INFO L93 Difference]: Finished difference Result 49694 states and 89839 transitions. [2024-11-19 14:48:12,641 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 49694 states and 89839 transitions. [2024-11-19 14:48:13,150 INFO L131 ngComponentsAnalysis]: Automaton has 162 accepting balls. 17510 [2024-11-19 14:48:13,278 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 49694 states to 49694 states and 89839 transitions. [2024-11-19 14:48:13,279 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 49552 [2024-11-19 14:48:13,318 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 49552 [2024-11-19 14:48:13,318 INFO L73 IsDeterministic]: Start isDeterministic. Operand 49694 states and 89839 transitions. [2024-11-19 14:48:13,319 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:48:13,319 INFO L218 hiAutomatonCegarLoop]: Abstraction has 49694 states and 89839 transitions. [2024-11-19 14:48:13,352 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49694 states and 89839 transitions. [2024-11-19 14:48:13,663 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49694 to 49690. [2024-11-19 14:48:13,707 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49690 states, 49690 states have (on average 1.8079090360233447) internal successors, (89835), 49689 states have internal predecessors, (89835), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:13,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49690 states to 49690 states and 89835 transitions. [2024-11-19 14:48:13,789 INFO L240 hiAutomatonCegarLoop]: Abstraction has 49690 states and 89835 transitions. [2024-11-19 14:48:13,790 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-19 14:48:13,790 INFO L425 stractBuchiCegarLoop]: Abstraction has 49690 states and 89835 transitions. [2024-11-19 14:48:13,790 INFO L332 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2024-11-19 14:48:13,790 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 49690 states and 89835 transitions. [2024-11-19 14:48:14,172 INFO L131 ngComponentsAnalysis]: Automaton has 162 accepting balls. 17510 [2024-11-19 14:48:14,172 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:48:14,172 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:48:14,173 INFO L148 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:48:14,173 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:48:14,173 INFO L745 eck$LassoCheckResult]: Stem: 581319#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 581045#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 581046#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 583254#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 574971#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 574972#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 576737#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 576738#L564 assume !(0 == getOrigin_~person#1); 575361#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 575362#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 575973#L999 assume !(0 == initPersonOnFloor_~floor#1); 575974#L1026 assume !(1 == initPersonOnFloor_~floor#1); 582161#L1053 assume !(2 == initPersonOnFloor_~floor#1); 582706#L1080 assume 3 == initPersonOnFloor_~floor#1; 579635#L1081 assume !(0 == initPersonOnFloor_~person#1); 579636#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 577366#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 574228#L791 assume !(0 == callOnFloor_~floorID#1); 574079#L794 assume !(1 == callOnFloor_~floorID#1); 574033#L797 assume !(2 == callOnFloor_~floorID#1); 574034#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 576005#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 575610#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 575611#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 581366#L564-1 assume !(0 == getOrigin_~person#1); 576478#L568-1 assume !(1 == getOrigin_~person#1); 576479#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 574351#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 574352#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 580089#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 581588#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 581589#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 582290#L1057-2 assume !(1 == initPersonOnFloor_~person#1); 580377#L1060-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 579512#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 579513#L791-2 assume !(0 == callOnFloor_~floorID#1); 583032#L794-2 assume !(1 == callOnFloor_~floorID#1); 583033#L797-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 583150#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 579566#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 579567#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 583013#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 579911#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 579912#L728 assume !(0 == isFloorCalling_~floorID#1); 583055#L732 assume !(1 == isFloorCalling_~floorID#1); 583056#L736 assume !(2 == isFloorCalling_~floorID#1); 582121#L740 assume !(3 == isFloorCalling_~floorID#1); 581481#L744 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 581482#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 583009#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 581228#L2700 assume !(0 != stopRequestedAtCurrentFloor_~tmp~24#1);assume { :begin_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1 := (if stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 < 0 && 0 != stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 % 3 then 1 + stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3 else stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3); 581229#L2674-1 assume ~weight~0 > stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 580879#getCurrentFloorID_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~16#1; 580880#L1980-2 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~16#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~16#1; 580491#buttonForFloorIsPressed_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1 := (if 1 == stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 then 1 else 0);stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1; 576319#stopRequestedAtCurrentFloor__wrappee__twothirdsfull_returnLabel#2 stopRequestedAtCurrentFloor_#t~ret85#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :end_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;stopRequestedAtCurrentFloor_~retValue_acc~27#1 := stopRequestedAtCurrentFloor_#t~ret85#1;havoc stopRequestedAtCurrentFloor_#t~ret85#1;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 574095#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 574096#L2853 assume !(0 != timeShift_~tmp___9~2#1); 574777#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 575406#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 575407#L728-3 assume !(0 == isFloorCalling_~floorID#1); 583207#L732-3 assume !(1 == isFloorCalling_~floorID#1); 575722#L736-3 assume !(2 == isFloorCalling_~floorID#1); 575723#L740-3 assume !(3 == isFloorCalling_~floorID#1); 577848#L744-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 577849#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 578700#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 574395#L2555 assume !(0 != stopRequestedInDirection_~tmp___0~5#1);assume { :begin_inline_stopRequestedInDirection__wrappee__twothirdsfull } true;stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#res#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret70#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret71#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1, stopRequestedInDirection__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1, stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;stopRequestedInDirection__wrappee__twothirdsfull_~dir#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1;stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 := 2 * ~maximumWeight~0;stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1 := (if stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 < 0 && 0 != stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 % 3 then 1 + stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 / 3 else stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 / 3);stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1; 574396#L2577 assume !(0 != ~floorButtons_0~0); 579272#L2581 assume !(0 != ~floorButtons_1~0); 575325#L2585 assume 0 != ~floorButtons_2~0;isAnyLiftButtonPressed_~retValue_acc~24#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~24#1; 574534#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1 := stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1;stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1 := stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1; 581872#L2521 assume !(0 != stopRequestedInDirection__wrappee__twothirdsfull_~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__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret58#1, stopRequestedInDirection__wrappee__empty_#t~ret59#1, stopRequestedInDirection__wrappee__empty_#t~ret60#1, stopRequestedInDirection__wrappee__empty_#t~ret61#1, stopRequestedInDirection__wrappee__empty_#t~ret62#1, stopRequestedInDirection__wrappee__empty_#t~ret63#1, stopRequestedInDirection__wrappee__empty_#t~ret64#1, stopRequestedInDirection__wrappee__empty_#t~ret65#1, stopRequestedInDirection__wrappee__empty_#t~ret66#1, stopRequestedInDirection__wrappee__empty_#t~ret67#1, stopRequestedInDirection__wrappee__empty_#t~ret68#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1, stopRequestedInDirection__wrappee__empty_~tmp~18#1, stopRequestedInDirection__wrappee__empty_~tmp___0~4#1, stopRequestedInDirection__wrappee__empty_~tmp___1~3#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~21#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~18#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~4#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~3#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; 582518#L2167-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 576806#L2336-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1; 573665#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret58#1, stopRequestedInDirection__wrappee__empty_#t~ret59#1, stopRequestedInDirection__wrappee__empty_#t~ret60#1, stopRequestedInDirection__wrappee__empty_#t~ret61#1, stopRequestedInDirection__wrappee__empty_#t~ret62#1, stopRequestedInDirection__wrappee__empty_#t~ret63#1, stopRequestedInDirection__wrappee__empty_#t~ret64#1, stopRequestedInDirection__wrappee__empty_#t~ret65#1, stopRequestedInDirection__wrappee__empty_#t~ret66#1, stopRequestedInDirection__wrappee__empty_#t~ret67#1, stopRequestedInDirection__wrappee__empty_#t~ret68#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1, stopRequestedInDirection__wrappee__empty_~tmp~18#1, stopRequestedInDirection__wrappee__empty_~tmp___0~4#1, stopRequestedInDirection__wrappee__empty_~tmp___1~3#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;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1 := stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1;stopRequestedInDirection__wrappee__twothirdsfull_#res#1 := stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1; 574602#stopRequestedInDirection__wrappee__twothirdsfull_returnLabel#1 stopRequestedInDirection_#t~ret75#1 := stopRequestedInDirection__wrappee__twothirdsfull_#res#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret70#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret71#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1, stopRequestedInDirection__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1, stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__twothirdsfull } true;stopRequestedInDirection_~retValue_acc~23#1 := stopRequestedInDirection_#t~ret75#1;havoc stopRequestedInDirection_#t~ret75#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 576946#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 573975#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 573976#L2612 assume !(1 == ~currentHeading~0); 578471#L2622 assume !(0 == ~currentFloorID~0); 578472#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 578265#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 578266#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 586873#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 586854#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 586855#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 588737#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 588738#L3226-2 [2024-11-19 14:48:14,175 INFO L747 eck$LassoCheckResult]: Loop: 588738#L3226-2 assume !false; 588735#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 588736#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 588744#L3235-2 assume !false; 588742#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 588743#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 588738#L3226-2 [2024-11-19 14:48:14,176 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:14,176 INFO L85 PathProgramCache]: Analyzing trace with hash 967017570, now seen corresponding path program 1 times [2024-11-19 14:48:14,176 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:14,176 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1842354297] [2024-11-19 14:48:14,176 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:48:14,176 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:14,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:48:14,230 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:48:14,231 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:48:14,231 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1842354297] [2024-11-19 14:48:14,231 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1842354297] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:48:14,231 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:48:14,231 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-19 14:48:14,231 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [221073144] [2024-11-19 14:48:14,231 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:48:14,232 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:48:14,232 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:14,232 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 17 times [2024-11-19 14:48:14,232 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:14,232 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1847472246] [2024-11-19 14:48:14,232 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:48:14,233 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:14,241 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:48:14,242 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:48:14,242 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:48:14,243 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:14,246 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:48:14,263 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:48:14,264 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-19 14:48:14,264 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-19 14:48:14,264 INFO L87 Difference]: Start difference. First operand 49690 states and 89835 transitions. cyclomatic complexity: 40315 Second operand has 3 states, 3 states have (on average 29.333333333333332) internal successors, (88), 2 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:15,144 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:48:15,144 INFO L93 Difference]: Finished difference Result 97802 states and 176311 transitions. [2024-11-19 14:48:15,144 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 97802 states and 176311 transitions. [2024-11-19 14:48:15,934 INFO L131 ngComponentsAnalysis]: Automaton has 322 accepting balls. 34818 [2024-11-19 14:48:16,171 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 97802 states to 97802 states and 176311 transitions. [2024-11-19 14:48:16,172 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 97528 [2024-11-19 14:48:16,248 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 97528 [2024-11-19 14:48:16,249 INFO L73 IsDeterministic]: Start isDeterministic. Operand 97802 states and 176311 transitions. [2024-11-19 14:48:16,292 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:48:16,292 INFO L218 hiAutomatonCegarLoop]: Abstraction has 97802 states and 176311 transitions. [2024-11-19 14:48:16,410 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97802 states and 176311 transitions. [2024-11-19 14:48:17,229 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97802 to 97794. [2024-11-19 14:48:17,317 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 97794 states, 97794 states have (on average 1.802799762766632) internal successors, (176303), 97793 states have internal predecessors, (176303), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:17,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97794 states to 97794 states and 176303 transitions. [2024-11-19 14:48:17,479 INFO L240 hiAutomatonCegarLoop]: Abstraction has 97794 states and 176303 transitions. [2024-11-19 14:48:17,479 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-19 14:48:17,480 INFO L425 stractBuchiCegarLoop]: Abstraction has 97794 states and 176303 transitions. [2024-11-19 14:48:17,480 INFO L332 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2024-11-19 14:48:17,480 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 97794 states and 176303 transitions. [2024-11-19 14:48:18,159 INFO L131 ngComponentsAnalysis]: Automaton has 322 accepting balls. 34818 [2024-11-19 14:48:18,159 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:48:18,159 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:48:18,160 INFO L148 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:48:18,160 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:48:18,164 INFO L745 eck$LassoCheckResult]: Stem: 728909#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 728616#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 728617#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 730941#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 722465#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 722466#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 724235#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 724236#L564 assume !(0 == getOrigin_~person#1); 722856#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 722857#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 723468#L999 assume !(0 == initPersonOnFloor_~floor#1); 723469#L1026 assume !(1 == initPersonOnFloor_~floor#1); 729787#L1053 assume !(2 == initPersonOnFloor_~floor#1); 730369#L1080 assume 3 == initPersonOnFloor_~floor#1; 727173#L1081 assume !(0 == initPersonOnFloor_~person#1); 727174#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 724863#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 721727#L791 assume !(0 == callOnFloor_~floorID#1); 721577#L794 assume !(1 == callOnFloor_~floorID#1); 721531#L797 assume !(2 == callOnFloor_~floorID#1); 721532#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 723502#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 723104#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 723105#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 728963#L564-1 assume !(0 == getOrigin_~person#1); 723977#L568-1 assume !(1 == getOrigin_~person#1); 723978#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 721848#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 721849#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 727633#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 729191#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 729192#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 729928#L1057-2 assume !(1 == initPersonOnFloor_~person#1); 727938#L1060-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 727051#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 727052#L791-2 assume !(0 == callOnFloor_~floorID#1); 730718#L794-2 assume !(1 == callOnFloor_~floorID#1); 730719#L797-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 730832#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 727104#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 727105#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 730695#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 727447#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 727448#L728 assume !(0 == isFloorCalling_~floorID#1); 730744#L732 assume !(1 == isFloorCalling_~floorID#1); 730745#L736 assume !(2 == isFloorCalling_~floorID#1); 729746#L740 assume !(3 == isFloorCalling_~floorID#1); 729081#L744 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 729082#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 730692#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 728808#L2700 assume !(0 != stopRequestedAtCurrentFloor_~tmp~24#1);assume { :begin_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1 := (if stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 < 0 && 0 != stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 % 3 then 1 + stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3 else stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3); 728809#L2674-1 assume ~weight~0 > stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 728446#getCurrentFloorID_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~16#1; 728447#L1980-2 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~16#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~16#1; 728050#buttonForFloorIsPressed_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1 := (if 1 == stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 then 1 else 0);stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1; 723817#stopRequestedAtCurrentFloor__wrappee__twothirdsfull_returnLabel#2 stopRequestedAtCurrentFloor_#t~ret85#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :end_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;stopRequestedAtCurrentFloor_~retValue_acc~27#1 := stopRequestedAtCurrentFloor_#t~ret85#1;havoc stopRequestedAtCurrentFloor_#t~ret85#1;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 721590#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 721591#L2853 assume !(0 != timeShift_~tmp___9~2#1); 722268#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 722901#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 722902#L728-3 assume !(0 == isFloorCalling_~floorID#1); 730895#L732-3 assume !(1 == isFloorCalling_~floorID#1); 723215#L736-3 assume !(2 == isFloorCalling_~floorID#1); 723216#L740-3 assume !(3 == isFloorCalling_~floorID#1); 725350#L744-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 725351#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 726221#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 721892#L2555 assume !(0 != stopRequestedInDirection_~tmp___0~5#1);assume { :begin_inline_stopRequestedInDirection__wrappee__twothirdsfull } true;stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#res#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret70#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret71#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1, stopRequestedInDirection__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1, stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;stopRequestedInDirection__wrappee__twothirdsfull_~dir#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1;stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 := 2 * ~maximumWeight~0;stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1 := (if stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 < 0 && 0 != stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 % 3 then 1 + stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 / 3 else stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 / 3);stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1; 721893#L2577 assume !(0 != ~floorButtons_0~0); 726804#L2581 assume !(0 != ~floorButtons_1~0); 722818#L2585 assume !(0 != ~floorButtons_2~0); 722819#L2589 assume 0 != ~floorButtons_3~0;isAnyLiftButtonPressed_~retValue_acc~24#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~24#1; 722031#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1 := stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1;stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1 := stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1; 729485#L2521 assume !(0 != stopRequestedInDirection__wrappee__twothirdsfull_~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__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret58#1, stopRequestedInDirection__wrappee__empty_#t~ret59#1, stopRequestedInDirection__wrappee__empty_#t~ret60#1, stopRequestedInDirection__wrappee__empty_#t~ret61#1, stopRequestedInDirection__wrappee__empty_#t~ret62#1, stopRequestedInDirection__wrappee__empty_#t~ret63#1, stopRequestedInDirection__wrappee__empty_#t~ret64#1, stopRequestedInDirection__wrappee__empty_#t~ret65#1, stopRequestedInDirection__wrappee__empty_#t~ret66#1, stopRequestedInDirection__wrappee__empty_#t~ret67#1, stopRequestedInDirection__wrappee__empty_#t~ret68#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1, stopRequestedInDirection__wrappee__empty_~tmp~18#1, stopRequestedInDirection__wrappee__empty_~tmp___0~4#1, stopRequestedInDirection__wrappee__empty_~tmp___1~3#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~21#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~18#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~4#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~3#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; 730174#L2167-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 724303#L2336-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1; 722105#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret58#1, stopRequestedInDirection__wrappee__empty_#t~ret59#1, stopRequestedInDirection__wrappee__empty_#t~ret60#1, stopRequestedInDirection__wrappee__empty_#t~ret61#1, stopRequestedInDirection__wrappee__empty_#t~ret62#1, stopRequestedInDirection__wrappee__empty_#t~ret63#1, stopRequestedInDirection__wrappee__empty_#t~ret64#1, stopRequestedInDirection__wrappee__empty_#t~ret65#1, stopRequestedInDirection__wrappee__empty_#t~ret66#1, stopRequestedInDirection__wrappee__empty_#t~ret67#1, stopRequestedInDirection__wrappee__empty_#t~ret68#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1, stopRequestedInDirection__wrappee__empty_~tmp~18#1, stopRequestedInDirection__wrappee__empty_~tmp___0~4#1, stopRequestedInDirection__wrappee__empty_~tmp___1~3#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;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1 := stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1;stopRequestedInDirection__wrappee__twothirdsfull_#res#1 := stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1; 722100#stopRequestedInDirection__wrappee__twothirdsfull_returnLabel#1 stopRequestedInDirection_#t~ret75#1 := stopRequestedInDirection__wrappee__twothirdsfull_#res#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret70#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret71#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1, stopRequestedInDirection__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1, stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__twothirdsfull } true;stopRequestedInDirection_~retValue_acc~23#1 := stopRequestedInDirection_#t~ret75#1;havoc stopRequestedInDirection_#t~ret75#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 724444#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 721466#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 721467#L2612 assume !(1 == ~currentHeading~0); 725990#L2622 assume !(0 == ~currentFloorID~0); 725991#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 725778#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 720956#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 720957#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 723207#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 723209#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 725172#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 724689#L3226-2 [2024-11-19 14:48:18,165 INFO L747 eck$LassoCheckResult]: Loop: 724689#L3226-2 assume !false; 725519#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 725520#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 721181#L3235-2 assume !false; 721182#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 724569#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 724689#L3226-2 [2024-11-19 14:48:18,165 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:18,165 INFO L85 PathProgramCache]: Analyzing trace with hash 909591607, now seen corresponding path program 1 times [2024-11-19 14:48:18,165 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:18,165 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1253480234] [2024-11-19 14:48:18,165 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:48:18,165 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:18,217 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:48:18,261 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:48:18,261 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:48:18,261 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1253480234] [2024-11-19 14:48:18,261 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1253480234] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:48:18,261 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:48:18,262 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-19 14:48:18,262 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1437897257] [2024-11-19 14:48:18,263 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:48:18,263 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:48:18,264 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:18,264 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 18 times [2024-11-19 14:48:18,264 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:18,264 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [411895320] [2024-11-19 14:48:18,264 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:48:18,264 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:18,281 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-19 14:48:18,281 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:48:18,281 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:48:18,281 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:18,288 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:48:18,316 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:48:18,316 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-19 14:48:18,316 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-19 14:48:18,316 INFO L87 Difference]: Start difference. First operand 97794 states and 176303 transitions. cyclomatic complexity: 78847 Second operand has 3 states, 3 states have (on average 29.666666666666668) internal successors, (89), 2 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:19,964 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:48:19,965 INFO L93 Difference]: Finished difference Result 193598 states and 347967 transitions. [2024-11-19 14:48:19,965 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 193598 states and 347967 transitions. [2024-11-19 14:48:20,804 INFO L131 ngComponentsAnalysis]: Automaton has 642 accepting balls. 69294 [2024-11-19 14:48:21,782 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 193598 states to 193598 states and 347967 transitions. [2024-11-19 14:48:21,783 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 193068 [2024-11-19 14:48:21,919 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 193068 [2024-11-19 14:48:21,919 INFO L73 IsDeterministic]: Start isDeterministic. Operand 193598 states and 347967 transitions. [2024-11-19 14:48:21,920 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:48:21,920 INFO L218 hiAutomatonCegarLoop]: Abstraction has 193598 states and 347967 transitions. [2024-11-19 14:48:22,037 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 193598 states and 347967 transitions. [2024-11-19 14:48:23,896 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 193598 to 193582. [2024-11-19 14:48:24,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 193582 states, 193582 states have (on average 1.7974346788441073) internal successors, (347951), 193581 states have internal predecessors, (347951), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:24,558 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 193582 states to 193582 states and 347951 transitions. [2024-11-19 14:48:24,558 INFO L240 hiAutomatonCegarLoop]: Abstraction has 193582 states and 347951 transitions. [2024-11-19 14:48:24,558 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-19 14:48:24,559 INFO L425 stractBuchiCegarLoop]: Abstraction has 193582 states and 347951 transitions. [2024-11-19 14:48:24,559 INFO L332 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2024-11-19 14:48:24,559 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 193582 states and 347951 transitions. [2024-11-19 14:48:25,593 INFO L131 ngComponentsAnalysis]: Automaton has 642 accepting balls. 69294 [2024-11-19 14:48:25,593 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:48:25,593 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:48:25,594 INFO L148 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:48:25,594 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-19 14:48:25,594 INFO L745 eck$LassoCheckResult]: Stem: 1020414#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(30, 4);call #Ultimate.allocInit(9, 5);call #Ultimate.allocInit(21, 6);call #Ultimate.allocInit(30, 7);call #Ultimate.allocInit(9, 8);call #Ultimate.allocInit(21, 9);call #Ultimate.allocInit(30, 10);call #Ultimate.allocInit(9, 11);call #Ultimate.allocInit(25, 12);call #Ultimate.allocInit(30, 13);call #Ultimate.allocInit(9, 14);call #Ultimate.allocInit(25, 15);call #Ultimate.allocInit(10, 16);call #Ultimate.allocInit(4, 17);call write~init~int#5(91, 17, 0, 1);call write~init~int#5(95, 17, 1, 1);call write~init~int#5(93, 17, 2, 1);call write~init~int#5(0, 17, 3, 1);call #Ultimate.allocInit(4, 18);call write~init~int#6(91, 18, 0, 1);call write~init~int#6(93, 18, 1, 1);call write~init~int#6(32, 18, 2, 1);call write~init~int#6(0, 18, 3, 1);call #Ultimate.allocInit(5, 19);call write~init~int#7(32, 19, 0, 1);call write~init~int#7(97, 19, 1, 1);call write~init~int#7(116, 19, 2, 1);call write~init~int#7(32, 19, 3, 1);call write~init~int#7(0, 19, 4, 1);call #Ultimate.allocInit(3, 20);call write~init~int#8(37, 20, 0, 1);call write~init~int#8(105, 20, 1, 1);call write~init~int#8(0, 20, 2, 1);call #Ultimate.allocInit(10, 21);call #Ultimate.allocInit(3, 22);call write~init~int#9(117, 22, 0, 1);call write~init~int#9(112, 22, 1, 1);call write~init~int#9(0, 22, 2, 1);call #Ultimate.allocInit(5, 23);call write~init~int#10(100, 23, 0, 1);call write~init~int#10(111, 23, 1, 1);call write~init~int#10(119, 23, 2, 1);call write~init~int#10(110, 23, 3, 1);call write~init~int#10(0, 23, 4, 1);call #Ultimate.allocInit(7, 24);call write~init~int#11(32, 24, 0, 1);call write~init~int#11(73, 24, 1, 1);call write~init~int#11(76, 24, 2, 1);call write~init~int#11(95, 24, 3, 1);call write~init~int#11(112, 24, 4, 1);call write~init~int#11(58, 24, 5, 1);call write~init~int#11(0, 24, 6, 1);call #Ultimate.allocInit(4, 25);call write~init~int#12(32, 25, 0, 1);call write~init~int#12(37, 25, 1, 1);call write~init~int#12(105, 25, 2, 1);call write~init~int#12(0, 25, 3, 1);call #Ultimate.allocInit(4, 26);call write~init~int#13(32, 26, 0, 1);call write~init~int#13(37, 26, 1, 1);call write~init~int#13(105, 26, 2, 1);call write~init~int#13(0, 26, 3, 1);call #Ultimate.allocInit(4, 27);call write~init~int#14(32, 27, 0, 1);call write~init~int#14(37, 27, 1, 1);call write~init~int#14(105, 27, 2, 1);call write~init~int#14(0, 27, 3, 1);call #Ultimate.allocInit(4, 28);call write~init~int#15(32, 28, 0, 1);call write~init~int#15(37, 28, 1, 1);call write~init~int#15(105, 28, 2, 1);call write~init~int#15(0, 28, 3, 1);call #Ultimate.allocInit(4, 29);call write~init~int#16(32, 29, 0, 1);call write~init~int#16(37, 29, 1, 1);call write~init~int#16(105, 29, 2, 1);call write~init~int#16(0, 29, 3, 1);call #Ultimate.allocInit(6, 30);call write~init~int#17(32, 30, 0, 1);call write~init~int#17(70, 30, 1, 1);call write~init~int#17(95, 30, 2, 1);call write~init~int#17(112, 30, 3, 1);call write~init~int#17(58, 30, 4, 1);call write~init~int#17(0, 30, 5, 1);call #Ultimate.allocInit(4, 31);call write~init~int#18(32, 31, 0, 1);call write~init~int#18(37, 31, 1, 1);call write~init~int#18(105, 31, 2, 1);call write~init~int#18(0, 31, 3, 1);call #Ultimate.allocInit(4, 32);call write~init~int#19(32, 32, 0, 1);call write~init~int#19(37, 32, 1, 1);call write~init~int#19(105, 32, 2, 1);call write~init~int#19(0, 32, 3, 1);call #Ultimate.allocInit(4, 33);call write~init~int#1(32, 33, 0, 1);call write~init~int#1(37, 33, 1, 1);call write~init~int#1(105, 33, 2, 1);call write~init~int#1(0, 33, 3, 1);call #Ultimate.allocInit(4, 34);call write~init~int#2(32, 34, 0, 1);call write~init~int#2(37, 34, 1, 1);call write~init~int#2(105, 34, 2, 1);call write~init~int#2(0, 34, 3, 1);call #Ultimate.allocInit(4, 35);call write~init~int#3(32, 35, 0, 1);call write~init~int#3(37, 35, 1, 1);call write~init~int#3(105, 35, 2, 1);call write~init~int#3(0, 35, 3, 1);call #Ultimate.allocInit(2, 36);call write~init~int#4(10, 36, 0, 1);call write~init~int#4(0, 36, 1, 1);~head~0.base, ~head~0.offset := 0, 0;~weight~0 := 0;~maximumWeight~0 := 100;~executiveFloor~0 := 4;~prevDir~0 := 0;~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;~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; 1020126#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret47#1, main_~retValue_acc~10#1, main_~tmp~12#1;havoc main_~retValue_acc~10#1;havoc main_~tmp~12#1;assume { :begin_inline_select_helpers } true; 1020127#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 1022565#select_features_returnLabel#1 assume { :end_inline_select_features } true;assume { :begin_inline_valid_product } true;havoc valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;havoc valid_product_~retValue_acc~12#1;valid_product_~retValue_acc~12#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~12#1; 1013869#valid_product_returnLabel#1 main_#t~ret47#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~12#1;assume { :end_inline_valid_product } true;main_~tmp~12#1 := main_#t~ret47#1;havoc main_#t~ret47#1; 1013870#L1651 assume 0 != main_~tmp~12#1;assume { :begin_inline_setup } true; 1015637#setup_returnLabel#1 assume { :end_inline_setup } true;assume { :begin_inline_runTest } true;assume { :begin_inline_test } true;assume { :begin_inline_aliceCall } true;havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;havoc aliceCall_~tmp~5#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 1015638#L564 assume !(0 == getOrigin_~person#1); 1014253#L568 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 1014254#getOrigin_returnLabel#1 aliceCall_#t~ret36#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~5#1 := aliceCall_#t~ret36#1;havoc aliceCall_#t~ret36#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~5#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 1014864#L999 assume !(0 == initPersonOnFloor_~floor#1); 1014865#L1026 assume !(1 == initPersonOnFloor_~floor#1); 1021336#L1053 assume !(2 == initPersonOnFloor_~floor#1); 1021941#L1080 assume 3 == initPersonOnFloor_~floor#1; 1018626#L1081 assume !(0 == initPersonOnFloor_~person#1); 1018627#L1084 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 1016275#L1107-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 1013127#L791 assume !(0 == callOnFloor_~floorID#1); 1012975#L794 assume !(1 == callOnFloor_~floorID#1); 1012929#L797 assume !(2 == callOnFloor_~floorID#1); 1012930#L800 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 1014901#L803-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 1014501#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 1014502#aliceCall_returnLabel#1 havoc aliceCall_#t~ret36#1, aliceCall_~tmp~5#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;havoc angelinaCall_~tmp~6#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~4#1; 1020466#L564-1 assume !(0 == getOrigin_~person#1); 1015376#L568-1 assume !(1 == getOrigin_~person#1); 1015377#L572-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~4#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~4#1; 1013248#getOrigin_returnLabel#2 angelinaCall_#t~ret37#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~4#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~6#1 := angelinaCall_#t~ret37#1;havoc angelinaCall_#t~ret37#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~6#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 1013249#L999-1 assume !(0 == initPersonOnFloor_~floor#1); 1019104#L1026-1 assume !(1 == initPersonOnFloor_~floor#1); 1020718#L1053-1 assume 2 == initPersonOnFloor_~floor#1; 1020719#L1054-2 assume !(0 == initPersonOnFloor_~person#1); 1021473#L1057-2 assume !(1 == initPersonOnFloor_~person#1); 1019419#L1060-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 1018493#L1107-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 1018494#L791-2 assume !(0 == callOnFloor_~floorID#1); 1022327#L794-2 assume !(1 == callOnFloor_~floorID#1); 1022328#L797-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 1022442#L803-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 1018550#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 1018551#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret37#1, angelinaCall_~tmp~6#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret98#1, timeShift_#t~ret99#1, timeShift_#t~ret100#1, timeShift_#t~ret101#1, timeShift_#t~ret102#1, timeShift_#t~ret103#1, timeShift_#t~ret104#1, timeShift_#t~ret105#1, timeShift_#t~ret106#1, timeShift_#t~ret107#1, timeShift_#t~ret108#1, timeShift_~tmp~26#1, timeShift_~tmp___0~10#1, timeShift_~tmp___1~5#1, timeShift_~tmp___2~5#1, timeShift_~tmp___3~4#1, timeShift_~tmp___4~3#1, timeShift_~tmp___5~2#1, timeShift_~tmp___6~2#1, timeShift_~tmp___7~2#1, timeShift_~tmp___8~2#1, timeShift_~tmp___9~2#1;havoc timeShift_~tmp~26#1;havoc timeShift_~tmp___0~10#1;havoc timeShift_~tmp___1~5#1;havoc timeShift_~tmp___2~5#1;havoc timeShift_~tmp___3~4#1;havoc timeShift_~tmp___4~3#1;havoc timeShift_~tmp___5~2#1;havoc timeShift_~tmp___6~2#1;havoc timeShift_~tmp___7~2#1;havoc timeShift_~tmp___8~2#1;havoc timeShift_~tmp___9~2#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;havoc getCurrentHeading_~retValue_acc~17#1;getCurrentHeading_~retValue_acc~17#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~17#1; 1022305#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret27#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~17#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret27#1;havoc __utac_acc__Specification13_spec__1_#t~ret27#1; 1018920#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret27#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~27#1;havoc stopRequestedAtCurrentFloor_~tmp~24#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 1018921#L728 assume !(0 == isFloorCalling_~floorID#1); 1022350#L732 assume !(1 == isFloorCalling_~floorID#1); 1022351#L736 assume !(2 == isFloorCalling_~floorID#1); 1021291#L740 assume !(3 == isFloorCalling_~floorID#1); 1020595#L744 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 1020596#isFloorCalling_returnLabel#1 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 1022299#isExecutiveFloorCalling_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret82#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedAtCurrentFloor_~tmp~24#1 := stopRequestedAtCurrentFloor_#t~ret82#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1; 1020322#L2700 assume !(0 != stopRequestedAtCurrentFloor_~tmp~24#1);assume { :begin_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1 := (if stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 < 0 && 0 != stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 % 3 then 1 + stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3 else stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1 / 3); 1020323#L2674-1 assume ~weight~0 > stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;havoc getCurrentFloorID_~retValue_acc~14#1;getCurrentFloorID_~retValue_acc~14#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~14#1; 1019943#getCurrentFloorID_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~14#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~16#1; 1019944#L1980-2 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~16#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~16#1; 1019537#buttonForFloorIsPressed_returnLabel#3 stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~16#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1;stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1 := (if 1 == stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1 then 1 else 0);stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1; 1015220#stopRequestedAtCurrentFloor__wrappee__twothirdsfull_returnLabel#2 stopRequestedAtCurrentFloor_#t~ret85#1 := stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#res#1;havoc stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret79#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret80#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_#t~ret81#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~retValue_acc~26#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp~23#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~tmp___0~7#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp4~3#1, stopRequestedAtCurrentFloor__wrappee__twothirdsfull_~__cil_tmp5~4#1;assume { :end_inline_stopRequestedAtCurrentFloor__wrappee__twothirdsfull } true;stopRequestedAtCurrentFloor_~retValue_acc~27#1 := stopRequestedAtCurrentFloor_#t~ret85#1;havoc stopRequestedAtCurrentFloor_#t~ret85#1;stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~27#1; 1012983#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret98#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret82#1, stopRequestedAtCurrentFloor_#t~ret83#1, stopRequestedAtCurrentFloor_#t~ret84#1, stopRequestedAtCurrentFloor_#t~ret85#1, stopRequestedAtCurrentFloor_~retValue_acc~27#1, stopRequestedAtCurrentFloor_~tmp~24#1, stopRequestedAtCurrentFloor_~tmp___0~8#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret98#1;havoc timeShift_#t~ret98#1; 1012984#L2853 assume !(0 != timeShift_~tmp___9~2#1); 1013669#L2944 assume 1 == ~doorState~0;~doorState~0 := 0; 1014298#L2944-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~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#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~23#1;havoc stopRequestedInDirection_~tmp~20#1;havoc stopRequestedInDirection_~tmp___0~5#1;havoc stopRequestedInDirection_~__cil_tmp7~6#1;havoc stopRequestedInDirection_~__cil_tmp8~7#1;assume { :begin_inline_isExecutiveFloorCalling } true;havoc isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;havoc isExecutiveFloorCalling_~retValue_acc~30#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := ~executiveFloor~0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~6#1; 1014299#L728-3 assume !(0 == isFloorCalling_~floorID#1); 1022510#L732-3 assume !(1 == isFloorCalling_~floorID#1); 1014608#L736-3 assume !(2 == isFloorCalling_~floorID#1); 1014609#L740-3 assume !(3 == isFloorCalling_~floorID#1); 1016761#L744-3 assume 4 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~6#1 := ~calls_4~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~6#1; 1016762#isFloorCalling_returnLabel#4 isExecutiveFloorCalling_#t~ret135#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~6#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;isExecutiveFloorCalling_~retValue_acc~30#1 := isExecutiveFloorCalling_#t~ret135#1;havoc isExecutiveFloorCalling_#t~ret135#1;isExecutiveFloorCalling_#res#1 := isExecutiveFloorCalling_~retValue_acc~30#1; 1017646#isExecutiveFloorCalling_returnLabel#2 stopRequestedInDirection_#t~ret73#1 := isExecutiveFloorCalling_#res#1;havoc isExecutiveFloorCalling_#t~ret135#1, isExecutiveFloorCalling_~retValue_acc~30#1;assume { :end_inline_isExecutiveFloorCalling } true;stopRequestedInDirection_~tmp___0~5#1 := stopRequestedInDirection_#t~ret73#1;havoc stopRequestedInDirection_#t~ret73#1; 1013294#L2555 assume !(0 != stopRequestedInDirection_~tmp___0~5#1);assume { :begin_inline_stopRequestedInDirection__wrappee__twothirdsfull } true;stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#res#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret70#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret71#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1, stopRequestedInDirection__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1, stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;stopRequestedInDirection__wrappee__twothirdsfull_~dir#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1;stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 := 2 * ~maximumWeight~0;stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1 := (if stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 < 0 && 0 != stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 % 3 then 1 + stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 / 3 else stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1 / 3);stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1; 1013295#L2577 assume !(0 != ~floorButtons_0~0); 1018243#L2581 assume !(0 != ~floorButtons_1~0); 1014209#L2585 assume !(0 != ~floorButtons_2~0); 1014210#L2589 assume !(0 != ~floorButtons_3~0); 1013432#L2593 assume 0 != ~floorButtons_4~0;isAnyLiftButtonPressed_~retValue_acc~24#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~24#1; 1013433#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~24#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1 := stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1;stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1 := stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1; 1021025#L2521 assume !(0 != stopRequestedInDirection__wrappee__twothirdsfull_~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__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret58#1, stopRequestedInDirection__wrappee__empty_#t~ret59#1, stopRequestedInDirection__wrappee__empty_#t~ret60#1, stopRequestedInDirection__wrappee__empty_#t~ret61#1, stopRequestedInDirection__wrappee__empty_#t~ret62#1, stopRequestedInDirection__wrappee__empty_#t~ret63#1, stopRequestedInDirection__wrappee__empty_#t~ret64#1, stopRequestedInDirection__wrappee__empty_#t~ret65#1, stopRequestedInDirection__wrappee__empty_#t~ret66#1, stopRequestedInDirection__wrappee__empty_#t~ret67#1, stopRequestedInDirection__wrappee__empty_#t~ret68#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1, stopRequestedInDirection__wrappee__empty_~tmp~18#1, stopRequestedInDirection__wrappee__empty_~tmp___0~4#1, stopRequestedInDirection__wrappee__empty_~tmp___1~3#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~21#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~18#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~4#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~3#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; 1021728#L2167-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 1015708#L2336-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1; 1013503#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret58#1, stopRequestedInDirection__wrappee__empty_#t~ret59#1, stopRequestedInDirection__wrappee__empty_#t~ret60#1, stopRequestedInDirection__wrappee__empty_#t~ret61#1, stopRequestedInDirection__wrappee__empty_#t~ret62#1, stopRequestedInDirection__wrappee__empty_#t~ret63#1, stopRequestedInDirection__wrappee__empty_#t~ret64#1, stopRequestedInDirection__wrappee__empty_#t~ret65#1, stopRequestedInDirection__wrappee__empty_#t~ret66#1, stopRequestedInDirection__wrappee__empty_#t~ret67#1, stopRequestedInDirection__wrappee__empty_#t~ret68#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~21#1, stopRequestedInDirection__wrappee__empty_~tmp~18#1, stopRequestedInDirection__wrappee__empty_~tmp___0~4#1, stopRequestedInDirection__wrappee__empty_~tmp___1~3#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;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1 := stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1;stopRequestedInDirection__wrappee__twothirdsfull_#res#1 := stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1; 1013500#stopRequestedInDirection__wrappee__twothirdsfull_returnLabel#1 stopRequestedInDirection_#t~ret75#1 := stopRequestedInDirection__wrappee__twothirdsfull_#res#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#t~ret69#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret70#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret71#1, stopRequestedInDirection__wrappee__twothirdsfull_#t~ret72#1, stopRequestedInDirection__wrappee__twothirdsfull_~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_~retValue_acc~22#1, stopRequestedInDirection__wrappee__twothirdsfull_~overload~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~buttonPressed~0#1, stopRequestedInDirection__wrappee__twothirdsfull_~tmp~19#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp8~6#1, stopRequestedInDirection__wrappee__twothirdsfull_~__cil_tmp9~5#1;havoc stopRequestedInDirection__wrappee__twothirdsfull_#in~dir#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__twothirdsfull_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__twothirdsfull } true;stopRequestedInDirection_~retValue_acc~23#1 := stopRequestedInDirection_#t~ret75#1;havoc stopRequestedInDirection_#t~ret75#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~23#1; 1015848#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret105#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret73#1, stopRequestedInDirection_#t~ret74#1, stopRequestedInDirection_#t~ret75#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~23#1, stopRequestedInDirection_~tmp~20#1, stopRequestedInDirection_~tmp___0~5#1, stopRequestedInDirection_~__cil_tmp7~6#1, stopRequestedInDirection_~__cil_tmp8~7#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift_~tmp___8~2#1 := timeShift_#t~ret105#1;havoc timeShift_#t~ret105#1; 1012864#L2952 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~21#1;~currentHeading~0 := continueInDirection_~dir#1; 1012865#L2612 assume !(1 == ~currentHeading~0); 1017414#L2622 assume !(0 == ~currentFloorID~0); 1017415#L2622-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 1017198#L2628-1 havoc continueInDirection_#t~ret76#1, continueInDirection_~dir#1, continueInDirection_~tmp~21#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 1017199#L2961-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret28#1, __utac_acc__Specification13_spec__2_#t~ret29#1, __utac_acc__Specification13_spec__2_#t~ret30#1, __utac_acc__Specification13_spec__2_#t~ret31#1, __utac_acc__Specification13_spec__2_#t~ret32#1, __utac_acc__Specification13_spec__2_#t~ret33#1, __utac_acc__Specification13_spec__2_~tmp~3#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~5#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;havoc __utac_acc__Specification13_spec__2_~tmp~3#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~5#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~5#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~5#1 / 3); 1038433#L454 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~5#1; 1038434#L455 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~29#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~29#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 1038437#L3156 assume !(1 == existInLiftCallsInDirection_~d#1); 1038598#L3222 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 1038599#L3226-2 [2024-11-19 14:48:25,595 INFO L747 eck$LassoCheckResult]: Loop: 1038599#L3226-2 assume !false; 1038596#L3227 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 1038597#L3228 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 1038631#L3235-2 assume !false; 1038628#L3236 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 1038625#L3294 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 1038599#L3226-2 [2024-11-19 14:48:25,596 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:25,596 INFO L85 PathProgramCache]: Analyzing trace with hash -1561007715, now seen corresponding path program 1 times [2024-11-19 14:48:25,596 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:25,600 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [210223857] [2024-11-19 14:48:25,600 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:48:25,600 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:25,635 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:48:25,667 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:48:25,668 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:48:25,668 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [210223857] [2024-11-19 14:48:25,668 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [210223857] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:48:25,668 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:48:25,668 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-19 14:48:25,668 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [471062573] [2024-11-19 14:48:25,668 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:48:25,669 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:48:25,669 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:48:25,669 INFO L85 PathProgramCache]: Analyzing trace with hash 1717871275, now seen corresponding path program 19 times [2024-11-19 14:48:25,669 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:48:25,669 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1289359957] [2024-11-19 14:48:25,669 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-19 14:48:25,670 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:48:25,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:25,679 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:48:25,681 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:48:25,684 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:48:25,706 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:48:25,706 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-19 14:48:25,707 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-19 14:48:25,707 INFO L87 Difference]: Start difference. First operand 193582 states and 347951 transitions. cyclomatic complexity: 155043 Second operand has 3 states, 3 states have (on average 30.0) internal successors, (90), 2 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:48:28,165 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:48:28,165 INFO L93 Difference]: Finished difference Result 384318 states and 688625 transitions. [2024-11-19 14:48:28,165 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 384318 states and 688625 transitions. [2024-11-19 14:48:30,240 INFO L131 ngComponentsAnalysis]: Automaton has 1280 accepting balls. 137880 [2024-11-19 14:48:31,716 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 384318 states to 384318 states and 688625 transitions. [2024-11-19 14:48:31,716 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 383294 [2024-11-19 14:48:31,973 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 383294 [2024-11-19 14:48:31,973 INFO L73 IsDeterministic]: Start isDeterministic. Operand 384318 states and 688625 transitions. [2024-11-19 14:48:31,983 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:48:31,983 INFO L218 hiAutomatonCegarLoop]: Abstraction has 384318 states and 688625 transitions. [2024-11-19 14:48:32,207 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 384318 states and 688625 transitions.