./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/product-lines/elevator_spec13_product21.cil.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 803cd42f Calling Ultimate with: /root/.sdkman/candidates/java/current/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_product21.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 bb3dce9b114483214f320874a7aac06c61be45c777f03f63c22a8ddab1e62ece --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.dk.eval-assert-order-craig-803cd42-m [2024-11-23 02:38:45,291 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-23 02:38:45,369 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2024-11-23 02:38:45,373 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-23 02:38:45,375 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-23 02:38:45,393 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-23 02:38:45,394 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-23 02:38:45,394 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-23 02:38:45,395 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-23 02:38:45,395 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-23 02:38:45,395 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-23 02:38:45,396 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-23 02:38:45,396 INFO L153 SettingsManager]: * Use SBE=true [2024-11-23 02:38:45,396 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-11-23 02:38:45,397 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-11-23 02:38:45,397 INFO L153 SettingsManager]: * Use old map elimination=false [2024-11-23 02:38:45,397 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-11-23 02:38:45,397 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-11-23 02:38:45,398 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-11-23 02:38:45,398 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-23 02:38:45,398 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-11-23 02:38:45,400 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-23 02:38:45,401 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-23 02:38:45,401 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-23 02:38:45,401 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-23 02:38:45,401 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-11-23 02:38:45,401 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-11-23 02:38:45,402 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-11-23 02:38:45,402 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-23 02:38:45,402 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-11-23 02:38:45,402 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-23 02:38:45,403 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-23 02:38:45,403 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-11-23 02:38:45,403 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-23 02:38:45,403 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-23 02:38:45,403 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-23 02:38:45,404 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-23 02:38:45,404 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-23 02:38:45,404 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-11-23 02:38:45,404 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 -> bb3dce9b114483214f320874a7aac06c61be45c777f03f63c22a8ddab1e62ece [2024-11-23 02:38:45,572 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-23 02:38:45,592 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-23 02:38:45,594 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-23 02:38:45,595 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-23 02:38:45,596 INFO L274 PluginConnector]: CDTParser initialized [2024-11-23 02:38:45,596 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/product-lines/elevator_spec13_product21.cil.c [2024-11-23 02:38:46,939 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-23 02:38:47,189 INFO L384 CDTParser]: Found 1 translation units. [2024-11-23 02:38:47,189 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/elevator_spec13_product21.cil.c [2024-11-23 02:38:47,214 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ca906dd49/de9f6a26434f463cb79f866d9bd506d2/FLAG6fc6f8497 [2024-11-23 02:38:47,230 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ca906dd49/de9f6a26434f463cb79f866d9bd506d2 [2024-11-23 02:38:47,232 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-23 02:38:47,233 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-23 02:38:47,236 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-23 02:38:47,236 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-23 02:38:47,240 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-23 02:38:47,240 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:38:47" (1/1) ... [2024-11-23 02:38:47,241 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@ca30abd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:47, skipping insertion in model container [2024-11-23 02:38:47,241 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:38:47" (1/1) ... [2024-11-23 02:38:47,313 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-23 02:38:47,914 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-23 02:38:47,925 INFO L200 MainTranslator]: Completed pre-run [2024-11-23 02:38:47,933 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Floor.i","") [48] [2024-11-23 02:38:47,934 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"featureselect.i","") [716] [2024-11-23 02:38:47,934 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Person.i","") [754] [2024-11-23 02:38:47,934 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Test.i","") [875] [2024-11-23 02:38:47,935 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Elevator.i","") [1230] [2024-11-23 02:38:47,935 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"UnitTests.i","") [2746] [2024-11-23 02:38:47,935 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"wsllib_check.i","") [2837] [2024-11-23 02:38:47,935 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"scenario.i","") [2846] [2024-11-23 02:38:47,936 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Specification13_spec.i","") [2861] [2024-11-23 02:38:47,936 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"libacc.i","") [2950] [2024-11-23 02:38:48,025 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-23 02:38:48,050 INFO L204 MainTranslator]: Completed translation [2024-11-23 02:38:48,051 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48 WrapperNode [2024-11-23 02:38:48,051 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-23 02:38:48,052 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-23 02:38:48,052 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-23 02:38:48,052 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-23 02:38:48,058 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:48,086 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:48,374 INFO L138 Inliner]: procedures = 90, calls = 339, calls flagged for inlining = 192, calls inlined = 925, statements flattened = 33600 [2024-11-23 02:38:48,375 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-23 02:38:48,376 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-23 02:38:48,376 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-23 02:38:48,376 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-23 02:38:48,384 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:48,384 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:48,442 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:48,589 INFO L175 MemorySlicer]: Split 81 memory accesses to 20 slices as follows [2, 4, 4, 5, 3, 3, 5, 7, 4, 4, 4, 4, 4, 6, 4, 4, 4, 4, 4, 2]. 9 percent of accesses are in the largest equivalence class. The 81 initializations are split as follows [2, 4, 4, 5, 3, 3, 5, 7, 4, 4, 4, 4, 4, 6, 4, 4, 4, 4, 4, 2]. 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-23 02:38:48,589 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:48,590 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:48,802 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:48,948 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:48,980 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:49,022 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:49,095 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-23 02:38:49,097 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-23 02:38:49,097 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-23 02:38:49,097 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-23 02:38:49,098 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (1/1) ... [2024-11-23 02:38:49,102 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:38:49,110 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:38:49,126 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-23 02:38:49,129 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-23 02:38:49,169 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-23 02:38:49,169 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-23 02:38:49,169 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-11-23 02:38:49,170 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-11-23 02:38:49,171 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-11-23 02:38:49,171 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2024-11-23 02:38:49,171 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#5 [2024-11-23 02:38:49,171 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#6 [2024-11-23 02:38:49,171 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#7 [2024-11-23 02:38:49,171 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#8 [2024-11-23 02:38:49,171 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#9 [2024-11-23 02:38:49,171 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#10 [2024-11-23 02:38:49,171 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#11 [2024-11-23 02:38:49,171 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#12 [2024-11-23 02:38:49,172 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#13 [2024-11-23 02:38:49,172 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#14 [2024-11-23 02:38:49,172 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#15 [2024-11-23 02:38:49,172 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#16 [2024-11-23 02:38:49,172 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#17 [2024-11-23 02:38:49,173 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#18 [2024-11-23 02:38:49,173 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#19 [2024-11-23 02:38:49,173 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-23 02:38:49,173 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-23 02:38:49,334 INFO L238 CfgBuilder]: Building ICFG [2024-11-23 02:38:49,336 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-23 02:39:00,972 INFO L? ?]: Removed 14452 outVars from TransFormulas that were not future-live. [2024-11-23 02:39:00,972 INFO L287 CfgBuilder]: Performing block encoding [2024-11-23 02:39:01,061 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-23 02:39:01,062 INFO L316 CfgBuilder]: Removed 61 assume(true) statements. [2024-11-23 02:39:01,062 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:39:01 BoogieIcfgContainer [2024-11-23 02:39:01,062 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-23 02:39:01,063 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-11-23 02:39:01,063 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-11-23 02:39:01,066 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-11-23 02:39:01,066 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-23 02:39:01,066 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 23.11 02:38:47" (1/3) ... [2024-11-23 02:39:01,067 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@2fd7c32 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.11 02:39:01, skipping insertion in model container [2024-11-23 02:39:01,067 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-23 02:39:01,067 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:38:48" (2/3) ... [2024-11-23 02:39:01,067 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@2fd7c32 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.11 02:39:01, skipping insertion in model container [2024-11-23 02:39:01,068 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-23 02:39:01,068 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:39:01" (3/3) ... [2024-11-23 02:39:01,068 INFO L332 chiAutomizerObserver]: Analyzing ICFG elevator_spec13_product21.cil.c [2024-11-23 02:39:01,186 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-11-23 02:39:01,186 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-11-23 02:39:01,186 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-11-23 02:39:01,186 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-11-23 02:39:01,187 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-11-23 02:39:01,187 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-11-23 02:39:01,187 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-11-23 02:39:01,187 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-11-23 02:39:01,214 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 9192 states, 9191 states have (on average 1.8817321292568818) internal successors, (17295), 9191 states have internal predecessors, (17295), 0 states have call successors, (0), 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-23 02:39:01,361 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2324 [2024-11-23 02:39:01,361 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:01,362 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:01,369 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] [2024-11-23 02:39:01,370 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:39:01,370 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-11-23 02:39:01,387 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 9192 states, 9191 states have (on average 1.8817321292568818) internal successors, (17295), 9191 states have internal predecessors, (17295), 0 states have call successors, (0), 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-23 02:39:01,458 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2324 [2024-11-23 02:39:01,458 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:01,458 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:01,461 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] [2024-11-23 02:39:01,461 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:39:01,470 INFO L745 eck$LassoCheckResult]: Stem: 4782#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 4502#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 7736#select_helpers_returnLabel#1true assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 7419#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 656#valid_product_returnLabel#1true main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 3081#L1217true assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 1478#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 806#L801true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 2462#getOrigin_returnLabel#1true aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 9009#L409true assume 0 == initPersonOnFloor_~floor#1; 7820#L410true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 996#L517-1true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 2486#L201true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 7600#L213-2true havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 931#initPersonOnFloor_returnLabel#1true havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 7356#aliceCall_returnLabel#1true havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 463#L801-1true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 371#getOrigin_returnLabel#2true angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 5509#L409-1true assume 0 == initPersonOnFloor_~floor#1; 6028#L410-2true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 3480#L517-3true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 8133#L201-2true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 6224#L213-5true havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 3296#initPersonOnFloor_returnLabel#2true havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 7568#angelinaCall_returnLabel#1true havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 6986#getCurrentHeading_returnLabel#1true __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 3591#__utac_acc__Specification13_spec__1_returnLabel#1true havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 4668#L2140true assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 3362#getCurrentFloorID_returnLabel#1true stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 3424#L1476true assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 5581#buttonForFloorIsPressed_returnLabel#1true stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 246#stopRequestedAtCurrentFloor_returnLabel#1true timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 4820#L2290true assume !(0 != timeShift_~tmp___9~2#1); 1473#L2381true assume 1 == ~doorState~0;~doorState~0 := 0; 5046#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 9022#L2043true assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 5368#isAnyLiftButtonPressed_returnLabel#1true stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 3326#L2016true assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 2126#L1663-2true assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 6998#L1832-2true assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 7676#stopRequestedInDirection__wrappee__weight_returnLabel#3true stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 1586#stopRequestedInDirection_returnLabel#1true timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 6193#L2389true assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 6692#L2078true assume !(1 == ~currentHeading~0); 6844#L2088true assume !(0 == ~currentFloorID~0); 8448#L2088-2true assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 970#L2094-1true havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 230#L2398-2true assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 2561#L2887true assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 4857#L2888true 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 462#L2593true assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~1#1 := 0;existInLiftCallsInDirection_~i~1#1 := 1 + ~currentFloorID~0; 6967#L2597-2true [2024-11-23 02:39:01,471 INFO L747 eck$LassoCheckResult]: Loop: 6967#L2597-2true assume !false; 3538#L2598true assume existInLiftCallsInDirection_~i~1#1 < 5; 1091#L2599true assume !(0 == existInLiftCallsInDirection_~i~1#1); 8494#$Ultimate##3606true assume !(1 == existInLiftCallsInDirection_~i~1#1); 8952#$Ultimate##3610true assume !(2 == existInLiftCallsInDirection_~i~1#1); 4564#$Ultimate##3614true assume !(3 == existInLiftCallsInDirection_~i~1#1); 9121#$Ultimate##3618true assume !(4 == existInLiftCallsInDirection_~i~1#1); 4701#L2640-1true existInLiftCallsInDirection_~i~1#1 := 1 + existInLiftCallsInDirection_~i~1#1; 6967#L2597-2true [2024-11-23 02:39:01,479 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:01,479 INFO L85 PathProgramCache]: Analyzing trace with hash 958873418, now seen corresponding path program 1 times [2024-11-23 02:39:01,485 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:01,486 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [651490386] [2024-11-23 02:39:01,486 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:01,486 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:01,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:01,838 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-23 02:39:01,838 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:01,838 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [651490386] [2024-11-23 02:39:01,839 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [651490386] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:01,839 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:01,839 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-23 02:39:01,840 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1792516452] [2024-11-23 02:39:01,841 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:01,844 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:01,844 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:01,845 INFO L85 PathProgramCache]: Analyzing trace with hash 1684916733, now seen corresponding path program 1 times [2024-11-23 02:39:01,845 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:01,845 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1118930247] [2024-11-23 02:39:01,845 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:01,845 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:01,855 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:01,855 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:01,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:01,875 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:01,942 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:39:01,943 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:39:01,943 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:39:01,943 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:39:01,943 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-23 02:39:01,944 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:01,944 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:39:01,944 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:39:01,944 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product21.cil.c_Iteration1_Loop [2024-11-23 02:39:01,944 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:39:01,944 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:39:01,956 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:39:02,017 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:39:02,018 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-23 02:39:02,019 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:02,020 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:39:02,024 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-23 02:39:02,036 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-23 02:39:02,037 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-23 02:39:02,038 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:39:02,055 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-23 02:39:02,056 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:02,056 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:39:02,059 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-23 02:39:02,062 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-23 02:39:02,062 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-23 02:39:02,063 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:39:02,092 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-23 02:39:02,096 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-23 02:39:02,096 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:39:02,096 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:39:02,096 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:39:02,097 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:39:02,097 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-23 02:39:02,097 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:02,097 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:39:02,097 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:39:02,097 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product21.cil.c_Iteration1_Loop [2024-11-23 02:39:02,097 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:39:02,097 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:39:02,099 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:39:02,156 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:39:02,161 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-23 02:39:02,163 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:02,163 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:39:02,166 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-23 02:39:02,168 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-23 02:39:02,169 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-23 02:39:02,182 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:39:02,182 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:39:02,184 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:39:02,185 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:39:02,185 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:39:02,189 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:39:02,189 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:39:02,192 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-23 02:39:02,196 INFO L443 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2024-11-23 02:39:02,196 INFO L444 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2024-11-23 02:39:02,197 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:02,197 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:39:02,200 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-23 02:39:02,202 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-23 02:39:02,203 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-23 02:39:02,203 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-23 02:39:02,204 INFO L474 LassoAnalysis]: Proved termination. [2024-11-23 02:39:02,204 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-23 02:39:02,212 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-23 02:39:02,215 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-23 02:39:02,242 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:02,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:02,351 INFO L255 TraceCheckSpWp]: Trace formula consists of 626 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-23 02:39:02,353 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:39:02,428 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:02,429 WARN L253 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-23 02:39:02,430 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:39:02,552 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-23 02:39:02,576 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-23 02:39:02,596 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 9192 states, 9191 states have (on average 1.8817321292568818) internal successors, (17295), 9191 states have internal predecessors, (17295), 0 states have call successors, (0), 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.555555555555555) internal successors, (59), 9 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-23 02:39:03,502 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-23 02:39:03,701 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 9192 states, 9191 states have (on average 1.8817321292568818) internal successors, (17295), 9191 states have internal predecessors, (17295), 0 states have call successors, (0), 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.555555555555555) internal successors, (59), 9 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) Result 24022 states and 45140 transitions. Complement of second has 18 states. [2024-11-23 02:39:03,706 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-23 02:39:03,710 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 6.555555555555555) internal successors, (59), 9 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-23 02:39:03,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 31237 transitions. [2024-11-23 02:39:03,736 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 31237 transitions. Stem has 51 letters. Loop has 8 letters. [2024-11-23 02:39:03,737 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:39:03,738 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 31237 transitions. Stem has 59 letters. Loop has 8 letters. [2024-11-23 02:39:03,738 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:39:03,738 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 31237 transitions. Stem has 51 letters. Loop has 16 letters. [2024-11-23 02:39:03,739 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:39:03,740 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 24022 states and 45140 transitions. [2024-11-23 02:39:03,905 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 4566 [2024-11-23 02:39:04,009 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 24022 states to 16531 states and 30981 transitions. [2024-11-23 02:39:04,010 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 16501 [2024-11-23 02:39:04,030 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 16502 [2024-11-23 02:39:04,031 INFO L73 IsDeterministic]: Start isDeterministic. Operand 16531 states and 30981 transitions. [2024-11-23 02:39:04,038 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:04,038 INFO L218 hiAutomatonCegarLoop]: Abstraction has 16531 states and 30981 transitions. [2024-11-23 02:39:04,071 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16531 states and 30981 transitions. [2024-11-23 02:39:04,290 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16531 to 16505. [2024-11-23 02:39:04,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16505 states, 16505 states have (on average 1.8747046349591032) internal successors, (30942), 16504 states have internal predecessors, (30942), 0 states have call successors, (0), 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-23 02:39:04,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16505 states to 16505 states and 30942 transitions. [2024-11-23 02:39:04,358 INFO L240 hiAutomatonCegarLoop]: Abstraction has 16505 states and 30942 transitions. [2024-11-23 02:39:04,358 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:04,361 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-23 02:39:04,361 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-23 02:39:04,362 INFO L87 Difference]: Start difference. First operand 16505 states and 30942 transitions. Second operand has 5 states, 5 states have (on average 10.2) internal successors, (51), 5 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:39:04,750 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:04,750 INFO L93 Difference]: Finished difference Result 16487 states and 30811 transitions. [2024-11-23 02:39:04,750 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 16487 states and 30811 transitions. [2024-11-23 02:39:04,822 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 4550 [2024-11-23 02:39:04,884 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 16487 states to 16478 states and 30802 transitions. [2024-11-23 02:39:04,885 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 16459 [2024-11-23 02:39:04,901 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 16459 [2024-11-23 02:39:04,901 INFO L73 IsDeterministic]: Start isDeterministic. Operand 16478 states and 30802 transitions. [2024-11-23 02:39:04,904 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:04,904 INFO L218 hiAutomatonCegarLoop]: Abstraction has 16478 states and 30802 transitions. [2024-11-23 02:39:04,924 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16478 states and 30802 transitions. [2024-11-23 02:39:05,055 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16478 to 9179. [2024-11-23 02:39:05,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9179 states, 9179 states have (on average 1.8693757489922649) internal successors, (17159), 9178 states have internal predecessors, (17159), 0 states have call successors, (0), 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-23 02:39:05,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9179 states to 9179 states and 17159 transitions. [2024-11-23 02:39:05,085 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9179 states and 17159 transitions. [2024-11-23 02:39:05,086 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-23 02:39:05,086 INFO L425 stractBuchiCegarLoop]: Abstraction has 9179 states and 17159 transitions. [2024-11-23 02:39:05,086 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-11-23 02:39:05,086 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9179 states and 17159 transitions. [2024-11-23 02:39:05,112 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2322 [2024-11-23 02:39:05,112 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:05,112 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:05,113 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] [2024-11-23 02:39:05,113 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:39:05,114 INFO L745 eck$LassoCheckResult]: Stem: 73765#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 73503#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 73504#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 75323#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 68023#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 68024#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 69620#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 68332#L801 assume !(0 == getOrigin_~person#1); 68333#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 69651#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 71214#L409 assume 0 == initPersonOnFloor_~floor#1; 75429#L410 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 66757#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 68710#L201 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 68537#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 68578#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 68579#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 67599#L801-1 assume !(0 == getOrigin_~person#1); 67600#L805-1 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 67375#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 67376#L409-1 assume 0 == initPersonOnFloor_~floor#1; 74300#L410-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 67092#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 72505#L201-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 72950#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 72293#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 72294#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 75149#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 72628#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 72629#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 72367#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 72368#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 69909#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 67063#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 67064#L2290 assume !(0 != timeShift_~tmp___9~2#1); 69611#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 69612#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 73963#L2043 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 69436#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 72327#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 70693#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 70694#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 67523#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 68399#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 69803#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 74733#L2078 assume !(1 == ~currentHeading~0); 75013#L2088 assume !(0 == ~currentFloorID~0); 73590#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 68655#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 67023#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 67024#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 71348#L2888 assume !(1 == ~prevDir~0); 70150#L2914 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 70151#L2593-2 assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~1#1 := 0;existInLiftCallsInDirection_~i~1#1 := 1 + ~currentFloorID~0; 70318#L2597-8 [2024-11-23 02:39:05,115 INFO L747 eck$LassoCheckResult]: Loop: 70318#L2597-8 assume !false; 70319#L2598-2 assume existInLiftCallsInDirection_~i~1#1 < 5; 66580#L2599-2 assume !(0 == existInLiftCallsInDirection_~i~1#1); 66582#$Ultimate##3762 assume !(1 == existInLiftCallsInDirection_~i~1#1); 69524#$Ultimate##3766 assume !(2 == existInLiftCallsInDirection_~i~1#1); 72018#$Ultimate##3770 assume !(3 == existInLiftCallsInDirection_~i~1#1); 71691#$Ultimate##3774 assume !(4 == existInLiftCallsInDirection_~i~1#1); 73019#L2640-5 existInLiftCallsInDirection_~i~1#1 := 1 + existInLiftCallsInDirection_~i~1#1; 70318#L2597-8 [2024-11-23 02:39:05,116 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:05,116 INFO L85 PathProgramCache]: Analyzing trace with hash 93287048, now seen corresponding path program 1 times [2024-11-23 02:39:05,116 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:05,116 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1257084653] [2024-11-23 02:39:05,116 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:05,116 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:05,148 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:05,253 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-23 02:39:05,253 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:05,253 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1257084653] [2024-11-23 02:39:05,253 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1257084653] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:05,254 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:05,254 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-23 02:39:05,254 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [490141758] [2024-11-23 02:39:05,254 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:05,254 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:05,254 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:05,255 INFO L85 PathProgramCache]: Analyzing trace with hash 492016125, now seen corresponding path program 1 times [2024-11-23 02:39:05,255 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:05,255 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1022424425] [2024-11-23 02:39:05,255 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:05,255 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:05,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:05,265 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:05,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:05,272 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:05,302 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:39:05,303 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:39:05,303 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:39:05,303 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:39:05,303 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-23 02:39:05,303 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:05,303 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:39:05,303 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:39:05,303 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product21.cil.c_Iteration2_Loop [2024-11-23 02:39:05,303 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:39:05,303 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:39:05,304 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:39:05,348 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:39:05,348 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-23 02:39:05,348 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:05,348 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:39:05,353 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-23 02:39:05,354 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-23 02:39:05,362 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-23 02:39:05,362 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:39:05,398 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-23 02:39:05,399 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:05,399 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:39:05,400 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-23 02:39:05,402 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-23 02:39:05,403 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-23 02:39:05,403 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:39:05,427 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-23 02:39:05,445 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Ended with exit code 0 [2024-11-23 02:39:05,445 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:39:05,446 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:39:05,446 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:39:05,446 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:39:05,446 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-23 02:39:05,446 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:05,446 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:39:05,446 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:39:05,446 INFO L132 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product21.cil.c_Iteration2_Loop [2024-11-23 02:39:05,446 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:39:05,446 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:39:05,447 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:39:05,489 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:39:05,490 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-23 02:39:05,490 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:05,490 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:39:05,492 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-23 02:39:05,495 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-23 02:39:05,498 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-23 02:39:05,509 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:39:05,509 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:39:05,509 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:39:05,509 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:39:05,509 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:39:05,510 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:39:05,510 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:39:05,512 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-23 02:39:05,520 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2024-11-23 02:39:05,521 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-23 02:39:05,521 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:39:05,521 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:39:05,525 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-23 02:39:05,527 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-23 02:39:05,527 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-23 02:39:05,527 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-23 02:39:05,528 INFO L474 LassoAnalysis]: Proved termination. [2024-11-23 02:39:05,528 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-23 02:39:05,534 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Ended with exit code 0 [2024-11-23 02:39:05,535 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-23 02:39:05,549 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:05,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:05,646 INFO L255 TraceCheckSpWp]: Trace formula consists of 629 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-23 02:39:05,648 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:39:05,729 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:05,730 WARN L253 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-23 02:39:05,731 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:39:05,873 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-23 02:39:05,874 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-23 02:39:05,875 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 9179 states and 17159 transitions. cyclomatic complexity: 8014 Second operand has 9 states, 9 states have (on average 6.888888888888889) internal successors, (62), 9 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-23 02:39:06,203 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-23 02:39:06,502 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 9179 states and 17159 transitions. cyclomatic complexity: 8014. Second operand has 9 states, 9 states have (on average 6.888888888888889) internal successors, (62), 9 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) Result 16534 states and 30885 transitions. Complement of second has 17 states. [2024-11-23 02:39:06,503 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-23 02:39:06,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 6.888888888888889) internal successors, (62), 9 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-23 02:39:06,522 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 17146 transitions. [2024-11-23 02:39:06,523 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 17146 transitions. Stem has 54 letters. Loop has 8 letters. [2024-11-23 02:39:06,523 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:39:06,523 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 17146 transitions. Stem has 62 letters. Loop has 8 letters. [2024-11-23 02:39:06,524 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:39:06,524 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 17146 transitions. Stem has 54 letters. Loop has 16 letters. [2024-11-23 02:39:06,524 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:39:06,524 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 16534 states and 30885 transitions. [2024-11-23 02:39:06,602 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 4564 [2024-11-23 02:39:06,658 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 16534 states to 16528 states and 30879 transitions. [2024-11-23 02:39:06,659 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 16479 [2024-11-23 02:39:06,674 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 16480 [2024-11-23 02:39:06,674 INFO L73 IsDeterministic]: Start isDeterministic. Operand 16528 states and 30879 transitions. [2024-11-23 02:39:06,676 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:06,676 INFO L218 hiAutomatonCegarLoop]: Abstraction has 16528 states and 30879 transitions. [2024-11-23 02:39:06,693 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16528 states and 30879 transitions. [2024-11-23 02:39:06,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16528 to 9203. [2024-11-23 02:39:06,835 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9203 states, 9203 states have (on average 1.8686297946321853) internal successors, (17197), 9202 states have internal predecessors, (17197), 0 states have call successors, (0), 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-23 02:39:06,853 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9203 states to 9203 states and 17197 transitions. [2024-11-23 02:39:06,853 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9203 states and 17197 transitions. [2024-11-23 02:39:06,853 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:06,854 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-23 02:39:06,854 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-23 02:39:06,854 INFO L87 Difference]: Start difference. First operand 9203 states and 17197 transitions. Second operand has 4 states, 4 states have (on average 13.5) internal successors, (54), 4 states have internal predecessors, (54), 0 states have call successors, (0), 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-23 02:39:07,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:07,174 INFO L93 Difference]: Finished difference Result 9221 states and 17215 transitions. [2024-11-23 02:39:07,174 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9221 states and 17215 transitions. [2024-11-23 02:39:07,230 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:07,271 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9221 states to 9221 states and 17215 transitions. [2024-11-23 02:39:07,272 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9183 [2024-11-23 02:39:07,291 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9183 [2024-11-23 02:39:07,292 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9221 states and 17215 transitions. [2024-11-23 02:39:07,294 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:07,294 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9221 states and 17215 transitions. [2024-11-23 02:39:07,311 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9221 states and 17215 transitions. [2024-11-23 02:39:07,578 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9221 to 9218. [2024-11-23 02:39:07,609 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9218 states, 9218 states have (on average 1.8672163159036668) internal successors, (17212), 9217 states have internal predecessors, (17212), 0 states have call successors, (0), 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-23 02:39:07,654 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9218 states to 9218 states and 17212 transitions. [2024-11-23 02:39:07,658 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9218 states and 17212 transitions. [2024-11-23 02:39:07,659 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-23 02:39:07,660 INFO L425 stractBuchiCegarLoop]: Abstraction has 9218 states and 17212 transitions. [2024-11-23 02:39:07,663 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-11-23 02:39:07,663 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9218 states and 17212 transitions. [2024-11-23 02:39:07,724 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:07,728 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:07,729 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:07,730 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] [2024-11-23 02:39:07,733 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:07,733 INFO L745 eck$LassoCheckResult]: Stem: 118147#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 117884#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 117885#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 119709#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 112390#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 112391#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 113991#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 112699#L801 assume !(0 == getOrigin_~person#1); 112700#L805 assume !(1 == getOrigin_~person#1); 114023#L809 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 115379#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 119999#L409 assume 0 == initPersonOnFloor_~floor#1; 119815#L410 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 111126#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 113077#L201 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 112905#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 112946#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 112947#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 111966#L801-1 assume !(0 == getOrigin_~person#1); 111967#L805-1 assume !(1 == getOrigin_~person#1); 116468#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 112746#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 120001#L409-1 assume 0 == initPersonOnFloor_~floor#1; 119016#L410-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 111461#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 116885#L201-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 117330#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 116672#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 116673#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 119533#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 117008#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 117009#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 116747#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 116748#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 114280#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 111432#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 111433#L2290 assume !(0 != timeShift_~tmp___9~2#1); 113982#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 113983#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 118345#L2043 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 113804#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 116707#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 115067#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 115068#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 111892#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 112767#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 114174#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 119118#L2078 assume !(1 == ~currentHeading~0); 119398#L2088 assume !(0 == ~currentFloorID~0); 117972#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 113023#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 111392#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 111393#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 115723#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 111963#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 111964#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 117587#L2663-2 [2024-11-23 02:39:07,734 INFO L747 eck$LassoCheckResult]: Loop: 117587#L2663-2 assume !false; 114694#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 114695#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 112379#L2672-2 assume !false; 112380#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 117388#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 117587#L2663-2 [2024-11-23 02:39:07,735 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:07,735 INFO L85 PathProgramCache]: Analyzing trace with hash 1455319815, now seen corresponding path program 1 times [2024-11-23 02:39:07,735 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:07,735 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [883488181] [2024-11-23 02:39:07,735 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:07,735 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:07,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:07,820 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-23 02:39:07,820 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:07,821 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [883488181] [2024-11-23 02:39:07,822 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [883488181] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:07,822 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:07,822 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-23 02:39:07,822 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2024535790] [2024-11-23 02:39:07,823 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:07,823 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:07,823 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:07,824 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 1 times [2024-11-23 02:39:07,824 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:07,824 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [404927806] [2024-11-23 02:39:07,825 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:07,825 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:07,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:07,839 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:07,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:07,852 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:07,888 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:07,889 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-23 02:39:07,889 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-23 02:39:07,889 INFO L87 Difference]: Start difference. First operand 9218 states and 17212 transitions. cyclomatic complexity: 8029 Second operand has 3 states, 3 states have (on average 18.666666666666668) internal successors, (56), 3 states have internal predecessors, (56), 0 states have call successors, (0), 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-23 02:39:08,027 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:08,028 INFO L93 Difference]: Finished difference Result 9184 states and 17144 transitions. [2024-11-23 02:39:08,028 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9184 states and 17144 transitions. [2024-11-23 02:39:08,060 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:08,086 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9184 states to 9184 states and 17144 transitions. [2024-11-23 02:39:08,086 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9146 [2024-11-23 02:39:08,097 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9146 [2024-11-23 02:39:08,097 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9184 states and 17144 transitions. [2024-11-23 02:39:08,098 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:08,099 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9184 states and 17144 transitions. [2024-11-23 02:39:08,109 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9184 states and 17144 transitions. [2024-11-23 02:39:08,182 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9184 to 9184. [2024-11-23 02:39:08,193 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9184 states, 9184 states have (on average 1.8667247386759582) internal successors, (17144), 9183 states have internal predecessors, (17144), 0 states have call successors, (0), 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-23 02:39:08,207 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9184 states to 9184 states and 17144 transitions. [2024-11-23 02:39:08,207 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9184 states and 17144 transitions. [2024-11-23 02:39:08,207 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-23 02:39:08,208 INFO L425 stractBuchiCegarLoop]: Abstraction has 9184 states and 17144 transitions. [2024-11-23 02:39:08,209 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-11-23 02:39:08,209 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9184 states and 17144 transitions. [2024-11-23 02:39:08,232 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:08,233 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:08,233 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:08,233 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] [2024-11-23 02:39:08,235 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:08,235 INFO L745 eck$LassoCheckResult]: Stem: 136531#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 136269#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 136270#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 138089#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 130796#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 130797#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 132392#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 131105#L801 assume !(0 == getOrigin_~person#1); 131106#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 132423#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 133979#L409 assume !(0 == initPersonOnFloor_~floor#1); 130362#L436 assume !(1 == initPersonOnFloor_~floor#1); 130363#L463 assume !(2 == initPersonOnFloor_~floor#1); 131474#L490 assume 3 == initPersonOnFloor_~floor#1; 131475#L491 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_3~0 := 1; 130208#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 131481#L201 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 131311#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 131352#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 131353#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 130372#L801-1 assume !(0 == getOrigin_~person#1); 130373#L805-1 assume !(1 == getOrigin_~person#1); 134857#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 131152#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 138375#L409-1 assume 0 == initPersonOnFloor_~floor#1; 137397#L410-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 129866#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 135273#L201-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 135717#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 135060#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 135061#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 137913#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 135396#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 135397#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 135135#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 135136#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 132680#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 129837#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 129838#L2290 assume !(0 != timeShift_~tmp___9~2#1); 132383#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 132384#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 136729#L2043 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 132205#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 135095#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 133465#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 133466#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 130298#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 131173#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 132574#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 137499#L2078 assume !(1 == ~currentHeading~0); 137779#L2088 assume !(0 == ~currentFloorID~0); 136356#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 131427#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 129797#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 129798#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 134113#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 130369#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 130370#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 135972#L2663-2 [2024-11-23 02:39:08,236 INFO L747 eck$LassoCheckResult]: Loop: 135972#L2663-2 assume !false; 133094#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 133095#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 130785#L2672-2 assume !false; 130786#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 135775#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 135972#L2663-2 [2024-11-23 02:39:08,236 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:08,236 INFO L85 PathProgramCache]: Analyzing trace with hash 821173684, now seen corresponding path program 1 times [2024-11-23 02:39:08,236 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:08,237 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1428765838] [2024-11-23 02:39:08,237 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:08,237 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:08,261 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:08,337 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-23 02:39:08,338 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:08,338 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1428765838] [2024-11-23 02:39:08,338 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1428765838] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:08,338 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:08,338 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-23 02:39:08,338 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [58673038] [2024-11-23 02:39:08,338 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:08,339 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:08,339 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:08,339 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 2 times [2024-11-23 02:39:08,339 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:08,339 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1966253357] [2024-11-23 02:39:08,339 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:39:08,339 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:08,347 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:39:08,348 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:08,348 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:08,349 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:08,355 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:08,369 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:08,370 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-23 02:39:08,370 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-23 02:39:08,370 INFO L87 Difference]: Start difference. First operand 9184 states and 17144 transitions. cyclomatic complexity: 7995 Second operand has 5 states, 5 states have (on average 11.6) internal successors, (58), 5 states have internal predecessors, (58), 0 states have call successors, (0), 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-23 02:39:08,679 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:08,680 INFO L93 Difference]: Finished difference Result 9192 states and 17151 transitions. [2024-11-23 02:39:08,680 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9192 states and 17151 transitions. [2024-11-23 02:39:08,861 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:08,887 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9192 states to 9192 states and 17151 transitions. [2024-11-23 02:39:08,888 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9154 [2024-11-23 02:39:08,896 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9154 [2024-11-23 02:39:08,896 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9192 states and 17151 transitions. [2024-11-23 02:39:08,898 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:08,898 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9192 states and 17151 transitions. [2024-11-23 02:39:08,910 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9192 states and 17151 transitions. [2024-11-23 02:39:08,994 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9192 to 9184. [2024-11-23 02:39:09,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9184 states, 9184 states have (on average 1.8660714285714286) internal successors, (17138), 9183 states have internal predecessors, (17138), 0 states have call successors, (0), 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-23 02:39:09,024 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9184 states to 9184 states and 17138 transitions. [2024-11-23 02:39:09,024 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9184 states and 17138 transitions. [2024-11-23 02:39:09,025 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-23 02:39:09,025 INFO L425 stractBuchiCegarLoop]: Abstraction has 9184 states and 17138 transitions. [2024-11-23 02:39:09,025 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-11-23 02:39:09,025 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9184 states and 17138 transitions. [2024-11-23 02:39:09,053 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:09,054 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:09,054 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:09,055 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] [2024-11-23 02:39:09,055 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:09,055 INFO L745 eck$LassoCheckResult]: Stem: 154915#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 154653#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 154654#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 156473#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 149180#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 149181#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 150776#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 149489#L801 assume !(0 == getOrigin_~person#1); 149490#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 150807#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 152363#L409 assume !(0 == initPersonOnFloor_~floor#1); 148746#L436 assume !(1 == initPersonOnFloor_~floor#1); 148747#L463 assume !(2 == initPersonOnFloor_~floor#1); 149858#L490 assume 3 == initPersonOnFloor_~floor#1; 149859#L491 assume !(0 == initPersonOnFloor_~person#1); 151580#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 148592#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 149865#L201 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 149695#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 149736#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 149737#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 148756#L801-1 assume !(0 == getOrigin_~person#1); 148757#L805-1 assume !(1 == getOrigin_~person#1); 153241#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 149536#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 156759#L409-1 assume 0 == initPersonOnFloor_~floor#1; 155781#L410-2 assume !(0 == initPersonOnFloor_~person#1); 152004#L413-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 148250#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 153657#L201-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 154101#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 153444#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 153445#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 156297#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 153780#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 153781#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 153519#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 153520#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 151064#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 148221#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 148222#L2290 assume !(0 != timeShift_~tmp___9~2#1); 150767#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 150768#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 155113#L2043 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 150589#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 153479#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 151849#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 151850#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 148682#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 149557#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 150958#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 155883#L2078 assume !(1 == ~currentHeading~0); 156163#L2088 assume !(0 == ~currentFloorID~0); 154740#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 149811#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 148181#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 148182#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 152497#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 148753#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 148754#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 154356#L2663-2 [2024-11-23 02:39:09,055 INFO L747 eck$LassoCheckResult]: Loop: 154356#L2663-2 assume !false; 151478#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 151479#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 149169#L2672-2 assume !false; 149170#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 154159#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 154356#L2663-2 [2024-11-23 02:39:09,056 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:09,056 INFO L85 PathProgramCache]: Analyzing trace with hash 1386308720, now seen corresponding path program 1 times [2024-11-23 02:39:09,056 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:09,056 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [578525545] [2024-11-23 02:39:09,057 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:09,057 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:09,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:09,131 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-23 02:39:09,131 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:09,131 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [578525545] [2024-11-23 02:39:09,131 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [578525545] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:09,132 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:09,132 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-23 02:39:09,132 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1614090273] [2024-11-23 02:39:09,132 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:09,132 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:09,132 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:09,132 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 3 times [2024-11-23 02:39:09,133 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:09,133 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1000781807] [2024-11-23 02:39:09,133 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:39:09,133 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:09,140 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-23 02:39:09,140 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:09,140 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:09,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:09,147 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:09,161 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:09,161 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-23 02:39:09,161 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-23 02:39:09,161 INFO L87 Difference]: Start difference. First operand 9184 states and 17138 transitions. cyclomatic complexity: 7989 Second operand has 4 states, 4 states have (on average 15.0) internal successors, (60), 4 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-23 02:39:09,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:09,327 INFO L93 Difference]: Finished difference Result 9188 states and 17141 transitions. [2024-11-23 02:39:09,327 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9188 states and 17141 transitions. [2024-11-23 02:39:09,355 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:09,375 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9188 states to 9188 states and 17141 transitions. [2024-11-23 02:39:09,375 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9150 [2024-11-23 02:39:09,380 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9150 [2024-11-23 02:39:09,381 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9188 states and 17141 transitions. [2024-11-23 02:39:09,384 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:09,384 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9188 states and 17141 transitions. [2024-11-23 02:39:09,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9188 states and 17141 transitions. [2024-11-23 02:39:09,467 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9188 to 9188. [2024-11-23 02:39:09,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9188 states, 9188 states have (on average 1.8655855463648237) internal successors, (17141), 9187 states have internal predecessors, (17141), 0 states have call successors, (0), 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-23 02:39:09,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9188 states to 9188 states and 17141 transitions. [2024-11-23 02:39:09,493 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9188 states and 17141 transitions. [2024-11-23 02:39:09,494 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-23 02:39:09,494 INFO L425 stractBuchiCegarLoop]: Abstraction has 9188 states and 17141 transitions. [2024-11-23 02:39:09,494 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-11-23 02:39:09,494 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9188 states and 17141 transitions. [2024-11-23 02:39:09,517 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:09,517 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:09,517 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:09,518 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-23 02:39:09,518 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:09,518 INFO L745 eck$LassoCheckResult]: Stem: 173296#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 173034#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 173035#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 174854#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 167559#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 167560#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 169155#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 167868#L801 assume !(0 == getOrigin_~person#1); 167869#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 169186#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 170744#L409 assume !(0 == initPersonOnFloor_~floor#1); 167125#L436 assume !(1 == initPersonOnFloor_~floor#1); 167126#L463 assume !(2 == initPersonOnFloor_~floor#1); 168237#L490 assume 3 == initPersonOnFloor_~floor#1; 168238#L491 assume !(0 == initPersonOnFloor_~person#1); 169961#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 166971#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 168244#L201 assume !(0 == callOnFloor_~floorID#1); 170782#L204 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 168074#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 168115#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 168116#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 167135#L801-1 assume !(0 == getOrigin_~person#1); 167136#L805-1 assume !(1 == getOrigin_~person#1); 171622#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 167915#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 175141#L409-1 assume 0 == initPersonOnFloor_~floor#1; 174162#L410-2 assume !(0 == initPersonOnFloor_~person#1); 170385#L413-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 169945#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 175140#L201-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 172482#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 171827#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 171828#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 174678#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 172161#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 172162#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 171900#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 171901#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 169443#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 166600#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 166601#L2290 assume !(0 != timeShift_~tmp___9~2#1); 169146#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 169147#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 173494#L2043 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 168968#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 171861#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 170230#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 170231#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 167061#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 167936#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 169337#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 174264#L2078 assume !(1 == ~currentHeading~0); 174544#L2088 assume !(0 == ~currentFloorID~0); 173123#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 168190#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 166560#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 166561#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 170878#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 167132#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 167133#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 172738#L2663-2 [2024-11-23 02:39:09,518 INFO L747 eck$LassoCheckResult]: Loop: 172738#L2663-2 assume !false; 169858#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 169859#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 167548#L2672-2 assume !false; 167549#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 172540#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 172738#L2663-2 [2024-11-23 02:39:09,519 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:09,519 INFO L85 PathProgramCache]: Analyzing trace with hash 1914103157, now seen corresponding path program 1 times [2024-11-23 02:39:09,519 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:09,519 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2135380359] [2024-11-23 02:39:09,519 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:09,519 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:09,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:09,595 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-23 02:39:09,596 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:09,596 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2135380359] [2024-11-23 02:39:09,596 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2135380359] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:09,597 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:09,597 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-23 02:39:09,597 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [286106856] [2024-11-23 02:39:09,597 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:09,597 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:09,597 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:09,597 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 4 times [2024-11-23 02:39:09,598 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:09,598 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [840313210] [2024-11-23 02:39:09,598 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:39:09,598 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:09,611 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:39:09,611 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:09,612 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:09,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:09,656 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:09,676 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:09,676 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-23 02:39:09,677 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-23 02:39:09,677 INFO L87 Difference]: Start difference. First operand 9188 states and 17141 transitions. cyclomatic complexity: 7988 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-23 02:39:09,843 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:09,843 INFO L93 Difference]: Finished difference Result 9194 states and 17146 transitions. [2024-11-23 02:39:09,843 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9194 states and 17146 transitions. [2024-11-23 02:39:09,870 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:09,890 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9194 states to 9194 states and 17146 transitions. [2024-11-23 02:39:09,890 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9156 [2024-11-23 02:39:09,896 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9156 [2024-11-23 02:39:09,896 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9194 states and 17146 transitions. [2024-11-23 02:39:09,903 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:09,903 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9194 states and 17146 transitions. [2024-11-23 02:39:09,913 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9194 states and 17146 transitions. [2024-11-23 02:39:09,981 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9194 to 9194. [2024-11-23 02:39:09,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9194 states, 9194 states have (on average 1.8649118990646074) internal successors, (17146), 9193 states have internal predecessors, (17146), 0 states have call successors, (0), 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-23 02:39:10,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9194 states to 9194 states and 17146 transitions. [2024-11-23 02:39:10,005 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9194 states and 17146 transitions. [2024-11-23 02:39:10,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-23 02:39:10,006 INFO L425 stractBuchiCegarLoop]: Abstraction has 9194 states and 17146 transitions. [2024-11-23 02:39:10,006 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-11-23 02:39:10,006 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9194 states and 17146 transitions. [2024-11-23 02:39:10,027 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:10,027 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:10,027 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:10,027 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-23 02:39:10,028 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:10,028 INFO L745 eck$LassoCheckResult]: Stem: 191687#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 191425#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 191426#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 193245#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 185949#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 185950#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 187545#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 186258#L801 assume !(0 == getOrigin_~person#1); 186259#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 187576#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 189135#L409 assume !(0 == initPersonOnFloor_~floor#1); 185515#L436 assume !(1 == initPersonOnFloor_~floor#1); 185516#L463 assume !(2 == initPersonOnFloor_~floor#1); 186627#L490 assume 3 == initPersonOnFloor_~floor#1; 186628#L491 assume !(0 == initPersonOnFloor_~person#1); 188352#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 185361#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 186634#L201 assume !(0 == callOnFloor_~floorID#1); 189173#L204 assume !(1 == callOnFloor_~floorID#1); 186463#L207 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 186464#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 186505#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 186506#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 185525#L801-1 assume !(0 == getOrigin_~person#1); 185526#L805-1 assume !(1 == getOrigin_~person#1); 190013#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 186305#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 193534#L409-1 assume 0 == initPersonOnFloor_~floor#1; 192553#L410-2 assume !(0 == initPersonOnFloor_~person#1); 188777#L413-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 188336#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 193532#L201-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 190873#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 190218#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 190219#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 193069#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 190552#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 190553#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 190291#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 190292#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 187833#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 184992#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 184993#L2290 assume !(0 != timeShift_~tmp___9~2#1); 187536#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 187537#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 191885#L2043 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 187358#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 190252#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 188621#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 188622#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 185454#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 186326#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 187727#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 192655#L2078 assume !(1 == ~currentHeading~0); 192935#L2088 assume !(0 == ~currentFloorID~0); 191514#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 186580#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 184950#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 184951#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 189269#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 185522#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 185523#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 191129#L2663-2 [2024-11-23 02:39:10,028 INFO L747 eck$LassoCheckResult]: Loop: 191129#L2663-2 assume !false; 188248#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 188249#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 185938#L2672-2 assume !false; 185939#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 190931#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 191129#L2663-2 [2024-11-23 02:39:10,028 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:10,029 INFO L85 PathProgramCache]: Analyzing trace with hash -1147621675, now seen corresponding path program 1 times [2024-11-23 02:39:10,029 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:10,029 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [461275431] [2024-11-23 02:39:10,029 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:10,029 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:10,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:10,089 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-23 02:39:10,090 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:10,090 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [461275431] [2024-11-23 02:39:10,090 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [461275431] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:10,090 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:10,090 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-23 02:39:10,090 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1044770077] [2024-11-23 02:39:10,090 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:10,091 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:10,091 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:10,091 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 5 times [2024-11-23 02:39:10,091 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:10,091 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [989429015] [2024-11-23 02:39:10,091 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:39:10,091 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:10,099 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:39:10,099 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:10,099 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:10,100 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:10,105 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:10,118 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:10,118 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-23 02:39:10,118 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-23 02:39:10,119 INFO L87 Difference]: Start difference. First operand 9194 states and 17146 transitions. cyclomatic complexity: 7987 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-23 02:39:10,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:10,294 INFO L93 Difference]: Finished difference Result 9202 states and 17153 transitions. [2024-11-23 02:39:10,294 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9202 states and 17153 transitions. [2024-11-23 02:39:10,329 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:10,354 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9202 states to 9202 states and 17153 transitions. [2024-11-23 02:39:10,354 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9164 [2024-11-23 02:39:10,364 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9164 [2024-11-23 02:39:10,364 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9202 states and 17153 transitions. [2024-11-23 02:39:10,375 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:10,376 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9202 states and 17153 transitions. [2024-11-23 02:39:10,386 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9202 states and 17153 transitions. [2024-11-23 02:39:10,467 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9202 to 9202. [2024-11-23 02:39:10,476 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9202 states, 9202 states have (on average 1.8640512931971311) internal successors, (17153), 9201 states have internal predecessors, (17153), 0 states have call successors, (0), 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-23 02:39:10,492 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9202 states to 9202 states and 17153 transitions. [2024-11-23 02:39:10,492 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9202 states and 17153 transitions. [2024-11-23 02:39:10,493 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-23 02:39:10,493 INFO L425 stractBuchiCegarLoop]: Abstraction has 9202 states and 17153 transitions. [2024-11-23 02:39:10,493 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-11-23 02:39:10,494 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9202 states and 17153 transitions. [2024-11-23 02:39:10,513 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:10,514 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:10,514 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:10,514 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-23 02:39:10,514 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:10,515 INFO L745 eck$LassoCheckResult]: Stem: 210092#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 209830#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 209831#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 211650#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 204352#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 204353#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 205949#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 204661#L801 assume !(0 == getOrigin_~person#1); 204662#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 205980#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 207539#L409 assume !(0 == initPersonOnFloor_~floor#1); 203918#L436 assume !(1 == initPersonOnFloor_~floor#1); 203919#L463 assume !(2 == initPersonOnFloor_~floor#1); 205029#L490 assume 3 == initPersonOnFloor_~floor#1; 205030#L491 assume !(0 == initPersonOnFloor_~person#1); 206756#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 203764#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 205036#L201 assume !(0 == callOnFloor_~floorID#1); 207577#L204 assume !(1 == callOnFloor_~floorID#1); 204866#L207 assume !(2 == callOnFloor_~floorID#1); 204867#L210 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 205537#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 204907#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 204908#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 203928#L801-1 assume !(0 == getOrigin_~person#1); 203929#L805-1 assume !(1 == getOrigin_~person#1); 208418#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 204708#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 211942#L409-1 assume 0 == initPersonOnFloor_~floor#1; 210958#L410-2 assume !(0 == initPersonOnFloor_~person#1); 207181#L413-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 206740#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 211938#L201-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 209278#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 208623#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 208624#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 211474#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 208957#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 208958#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 208696#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 208697#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 206238#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 203395#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 203396#L2290 assume !(0 != timeShift_~tmp___9~2#1); 205940#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 205941#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 210290#L2043 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 205762#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 208657#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 207025#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 207026#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 203857#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 204729#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 206131#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 211060#L2078 assume !(1 == ~currentHeading~0); 211340#L2088 assume !(0 == ~currentFloorID~0); 209920#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 204982#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 203353#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 203354#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 207673#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 203925#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 203926#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 209535#L2663-2 [2024-11-23 02:39:10,515 INFO L747 eck$LassoCheckResult]: Loop: 209535#L2663-2 assume !false; 206652#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 206653#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 204341#L2672-2 assume !false; 204342#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 209336#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 209535#L2663-2 [2024-11-23 02:39:10,515 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:10,515 INFO L85 PathProgramCache]: Analyzing trace with hash 479673146, now seen corresponding path program 1 times [2024-11-23 02:39:10,516 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:10,516 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [286917631] [2024-11-23 02:39:10,516 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:10,516 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:10,533 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:10,617 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-23 02:39:10,617 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:10,617 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [286917631] [2024-11-23 02:39:10,617 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [286917631] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:10,617 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:10,617 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-23 02:39:10,617 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [176317721] [2024-11-23 02:39:10,617 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:10,617 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:10,618 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:10,618 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 6 times [2024-11-23 02:39:10,618 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:10,618 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [688549617] [2024-11-23 02:39:10,618 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:39:10,618 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:10,627 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-23 02:39:10,627 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:10,627 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:10,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:10,636 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:10,663 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:10,663 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-23 02:39:10,663 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-23 02:39:10,664 INFO L87 Difference]: Start difference. First operand 9202 states and 17153 transitions. cyclomatic complexity: 7986 Second operand has 5 states, 5 states have (on average 12.6) internal successors, (63), 5 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-23 02:39:10,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:10,987 INFO L93 Difference]: Finished difference Result 9188 states and 17127 transitions. [2024-11-23 02:39:10,987 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9188 states and 17127 transitions. [2024-11-23 02:39:11,015 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:11,036 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9188 states to 9188 states and 17127 transitions. [2024-11-23 02:39:11,036 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9150 [2024-11-23 02:39:11,042 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9150 [2024-11-23 02:39:11,042 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9188 states and 17127 transitions. [2024-11-23 02:39:11,042 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:11,042 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9188 states and 17127 transitions. [2024-11-23 02:39:11,054 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9188 states and 17127 transitions. [2024-11-23 02:39:11,131 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9188 to 9188. [2024-11-23 02:39:11,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9188 states, 9188 states have (on average 1.8640618197649108) internal successors, (17127), 9187 states have internal predecessors, (17127), 0 states have call successors, (0), 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-23 02:39:11,156 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9188 states to 9188 states and 17127 transitions. [2024-11-23 02:39:11,156 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9188 states and 17127 transitions. [2024-11-23 02:39:11,160 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-23 02:39:11,161 INFO L425 stractBuchiCegarLoop]: Abstraction has 9188 states and 17127 transitions. [2024-11-23 02:39:11,161 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-11-23 02:39:11,161 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9188 states and 17127 transitions. [2024-11-23 02:39:11,182 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:11,182 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:11,183 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:11,183 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] [2024-11-23 02:39:11,183 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:11,183 INFO L745 eck$LassoCheckResult]: Stem: 228481#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 228219#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 228220#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 230038#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 222750#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 222751#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 224346#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 223059#L801 assume !(0 == getOrigin_~person#1); 223060#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 224376#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 225930#L409 assume !(0 == initPersonOnFloor_~floor#1); 222316#L436 assume !(1 == initPersonOnFloor_~floor#1); 222317#L463 assume !(2 == initPersonOnFloor_~floor#1); 223425#L490 assume 3 == initPersonOnFloor_~floor#1; 223426#L491 assume !(0 == initPersonOnFloor_~person#1); 225149#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 222162#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 223432#L201 assume !(0 == callOnFloor_~floorID#1); 225968#L204 assume !(1 == callOnFloor_~floorID#1); 223262#L207 assume !(2 == callOnFloor_~floorID#1); 223263#L210 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 223933#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 223305#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 223306#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 222326#L801-1 assume !(0 == getOrigin_~person#1); 222327#L805-1 assume !(1 == getOrigin_~person#1); 226810#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 222103#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 222104#L409-1 assume !(0 == initPersonOnFloor_~floor#1); 226082#L436-1 assume 1 == initPersonOnFloor_~floor#1; 226083#L437-2 assume !(0 == initPersonOnFloor_~person#1); 228289#L440-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_1~0 := 1; 225116#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 230328#L201-2 assume !(0 == callOnFloor_~floorID#1); 230325#L204-2 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 227669#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 227015#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 227016#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 229862#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 227351#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 227352#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 227088#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 227089#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 224634#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 221796#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 221797#L2290 assume !(0 != timeShift_~tmp___9~2#1); 224336#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 224337#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 228679#L2043 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 224158#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 227049#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 225418#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 225419#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 222255#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 223125#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 224527#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 229448#L2078 assume !(1 == ~currentHeading~0); 229728#L2088 assume !(0 == ~currentFloorID~0); 228309#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 223378#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 221751#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 221752#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 226064#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 222323#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 222324#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 227923#L2663-2 [2024-11-23 02:39:11,188 INFO L747 eck$LassoCheckResult]: Loop: 227923#L2663-2 assume !false; 225048#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 225049#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 222739#L2672-2 assume !false; 222740#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 227727#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 227923#L2663-2 [2024-11-23 02:39:11,188 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:11,189 INFO L85 PathProgramCache]: Analyzing trace with hash 1916939940, now seen corresponding path program 1 times [2024-11-23 02:39:11,189 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:11,189 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [983439589] [2024-11-23 02:39:11,189 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:11,189 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:11,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:11,290 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-23 02:39:11,290 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:11,290 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [983439589] [2024-11-23 02:39:11,290 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [983439589] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:11,290 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:11,290 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-23 02:39:11,290 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2054665910] [2024-11-23 02:39:11,290 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:11,290 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:11,291 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:11,291 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 7 times [2024-11-23 02:39:11,291 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:11,291 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [144144744] [2024-11-23 02:39:11,291 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-23 02:39:11,291 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:11,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:11,299 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:11,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:11,307 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:11,330 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:11,330 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-23 02:39:11,331 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-23 02:39:11,331 INFO L87 Difference]: Start difference. First operand 9188 states and 17127 transitions. cyclomatic complexity: 7974 Second operand has 5 states, 5 states have (on average 13.0) internal successors, (65), 5 states have internal predecessors, (65), 0 states have call successors, (0), 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-23 02:39:11,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:11,566 INFO L93 Difference]: Finished difference Result 9182 states and 17114 transitions. [2024-11-23 02:39:11,566 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9182 states and 17114 transitions. [2024-11-23 02:39:11,596 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:11,618 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9182 states to 9182 states and 17114 transitions. [2024-11-23 02:39:11,618 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9144 [2024-11-23 02:39:11,624 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9144 [2024-11-23 02:39:11,625 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9182 states and 17114 transitions. [2024-11-23 02:39:11,626 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:11,626 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9182 states and 17114 transitions. [2024-11-23 02:39:11,638 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9182 states and 17114 transitions. [2024-11-23 02:39:11,710 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9182 to 9182. [2024-11-23 02:39:11,720 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9182 states, 9182 states have (on average 1.8638640818993684) internal successors, (17114), 9181 states have internal predecessors, (17114), 0 states have call successors, (0), 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-23 02:39:11,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9182 states to 9182 states and 17114 transitions. [2024-11-23 02:39:11,734 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9182 states and 17114 transitions. [2024-11-23 02:39:11,734 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-23 02:39:11,735 INFO L425 stractBuchiCegarLoop]: Abstraction has 9182 states and 17114 transitions. [2024-11-23 02:39:11,735 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-11-23 02:39:11,735 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9182 states and 17114 transitions. [2024-11-23 02:39:11,756 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:11,756 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:11,756 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:11,757 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] [2024-11-23 02:39:11,757 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:11,757 INFO L745 eck$LassoCheckResult]: Stem: 246852#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 246592#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 246593#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 248408#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 241128#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 241129#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 242723#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 241437#L801 assume !(0 == getOrigin_~person#1); 241438#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 242754#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 244306#L409 assume !(0 == initPersonOnFloor_~floor#1); 240694#L436 assume !(1 == initPersonOnFloor_~floor#1); 240695#L463 assume !(2 == initPersonOnFloor_~floor#1); 241803#L490 assume 3 == initPersonOnFloor_~floor#1; 241804#L491 assume !(0 == initPersonOnFloor_~person#1); 243525#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 240540#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 241810#L201 assume !(0 == callOnFloor_~floorID#1); 244344#L204 assume !(1 == callOnFloor_~floorID#1); 241640#L207 assume !(2 == callOnFloor_~floorID#1); 241641#L210 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 242311#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 241681#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 241682#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 240704#L801-1 assume !(0 == getOrigin_~person#1); 240705#L805-1 assume !(1 == getOrigin_~person#1); 245183#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 240481#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 240482#L409-1 assume !(0 == initPersonOnFloor_~floor#1); 244458#L436-1 assume !(1 == initPersonOnFloor_~floor#1); 244459#L463-1 assume 2 == initPersonOnFloor_~floor#1; 245801#L464-2 assume !(0 == initPersonOnFloor_~person#1); 245802#L467-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_2~0 := 1; 244934#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 248701#L201-2 assume !(0 == callOnFloor_~floorID#1); 248700#L204-2 assume !(1 == callOnFloor_~floorID#1); 248699#L207-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 246042#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 245386#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 245387#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 248232#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 245722#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 245723#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 245461#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 245462#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 243011#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 240169#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 240170#L2290 assume !(0 != timeShift_~tmp___9~2#1); 242714#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 242715#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 247050#L2043 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 242536#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 245421#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 243794#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 243795#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 240630#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 241503#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 242905#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 247818#L2078 assume !(1 == ~currentHeading~0); 248098#L2088 assume !(0 == ~currentFloorID~0); 246678#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 241756#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 240129#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 240130#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 244440#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 240701#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 240702#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 246296#L2663-2 [2024-11-23 02:39:11,757 INFO L747 eck$LassoCheckResult]: Loop: 246296#L2663-2 assume !false; 243426#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 243427#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 241117#L2672-2 assume !false; 241118#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 246100#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 246296#L2663-2 [2024-11-23 02:39:11,757 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:11,758 INFO L85 PathProgramCache]: Analyzing trace with hash 1773062819, now seen corresponding path program 1 times [2024-11-23 02:39:11,758 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:11,758 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1785358074] [2024-11-23 02:39:11,758 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:11,758 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:11,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:11,824 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-23 02:39:11,824 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:11,824 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1785358074] [2024-11-23 02:39:11,824 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1785358074] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:11,825 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:11,825 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-23 02:39:11,825 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2093990002] [2024-11-23 02:39:11,825 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:11,825 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:11,825 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:11,825 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 8 times [2024-11-23 02:39:11,825 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:11,825 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [431166519] [2024-11-23 02:39:11,825 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:39:11,825 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:11,832 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:39:11,832 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:11,832 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:11,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:11,837 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:11,866 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:11,867 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-23 02:39:11,867 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-23 02:39:11,867 INFO L87 Difference]: Start difference. First operand 9182 states and 17114 transitions. cyclomatic complexity: 7967 Second operand has 4 states, 4 states have (on average 16.75) internal successors, (67), 4 states have internal predecessors, (67), 0 states have call successors, (0), 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-23 02:39:12,177 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:12,178 INFO L93 Difference]: Finished difference Result 9198 states and 17126 transitions. [2024-11-23 02:39:12,178 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9198 states and 17126 transitions. [2024-11-23 02:39:12,205 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:12,226 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9198 states to 9198 states and 17126 transitions. [2024-11-23 02:39:12,227 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 9160 [2024-11-23 02:39:12,235 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 9160 [2024-11-23 02:39:12,236 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9198 states and 17126 transitions. [2024-11-23 02:39:12,237 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:12,237 INFO L218 hiAutomatonCegarLoop]: Abstraction has 9198 states and 17126 transitions. [2024-11-23 02:39:12,250 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9198 states and 17126 transitions. [2024-11-23 02:39:12,478 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9198 to 9182. [2024-11-23 02:39:12,488 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9182 states, 9182 states have (on average 1.8629928120235242) internal successors, (17106), 9181 states have internal predecessors, (17106), 0 states have call successors, (0), 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-23 02:39:12,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9182 states to 9182 states and 17106 transitions. [2024-11-23 02:39:12,507 INFO L240 hiAutomatonCegarLoop]: Abstraction has 9182 states and 17106 transitions. [2024-11-23 02:39:12,511 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-23 02:39:12,512 INFO L425 stractBuchiCegarLoop]: Abstraction has 9182 states and 17106 transitions. [2024-11-23 02:39:12,512 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-11-23 02:39:12,512 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 9182 states and 17106 transitions. [2024-11-23 02:39:12,543 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 2326 [2024-11-23 02:39:12,544 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:12,544 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:12,544 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-23 02:39:12,545 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:12,545 INFO L745 eck$LassoCheckResult]: Stem: 265239#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 264979#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 264980#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 266795#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 259514#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 259515#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 261110#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 259823#L801 assume !(0 == getOrigin_~person#1); 259824#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 261141#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 262693#L409 assume !(0 == initPersonOnFloor_~floor#1); 259079#L436 assume !(1 == initPersonOnFloor_~floor#1); 259080#L463 assume !(2 == initPersonOnFloor_~floor#1); 260189#L490 assume 3 == initPersonOnFloor_~floor#1; 260190#L491 assume !(0 == initPersonOnFloor_~person#1); 261912#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 258925#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 260196#L201 assume !(0 == callOnFloor_~floorID#1); 262731#L204 assume !(1 == callOnFloor_~floorID#1); 260026#L207 assume !(2 == callOnFloor_~floorID#1); 260027#L210 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 260698#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 260067#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 260068#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 259089#L801-1 assume !(0 == getOrigin_~person#1); 259090#L805-1 assume !(1 == getOrigin_~person#1); 263570#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 258866#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 258867#L409-1 assume !(0 == initPersonOnFloor_~floor#1); 262845#L436-1 assume !(1 == initPersonOnFloor_~floor#1); 262846#L463-1 assume 2 == initPersonOnFloor_~floor#1; 264188#L464-2 assume !(0 == initPersonOnFloor_~person#1); 264189#L467-2 assume !(1 == initPersonOnFloor_~person#1); 264404#L470-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 263321#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 267098#L201-2 assume !(0 == callOnFloor_~floorID#1); 267097#L204-2 assume !(1 == callOnFloor_~floorID#1); 267096#L207-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 264429#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 263773#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 263774#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 266619#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 264109#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 264110#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 263848#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 263849#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 261398#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 258555#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 258556#L2290 assume !(0 != timeShift_~tmp___9~2#1); 261101#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 261102#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 265437#L2043 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 260923#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 263808#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 262181#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 262182#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 259015#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 259889#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 261292#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 266205#L2078 assume !(1 == ~currentHeading~0); 266485#L2088 assume !(0 == ~currentFloorID~0); 265065#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 260142#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 258515#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 258516#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 262827#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 259086#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 259087#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 264683#L2663-2 [2024-11-23 02:39:12,545 INFO L747 eck$LassoCheckResult]: Loop: 264683#L2663-2 assume !false; 261813#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 261814#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 259503#L2672-2 assume !false; 259504#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 264487#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 264683#L2663-2 [2024-11-23 02:39:12,546 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:12,546 INFO L85 PathProgramCache]: Analyzing trace with hash 1990823420, now seen corresponding path program 1 times [2024-11-23 02:39:12,546 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:12,546 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2076356445] [2024-11-23 02:39:12,546 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:12,546 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:12,576 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:12,638 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-23 02:39:12,639 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:12,639 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2076356445] [2024-11-23 02:39:12,639 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2076356445] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:12,639 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:12,639 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-23 02:39:12,639 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1193331038] [2024-11-23 02:39:12,639 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:12,639 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:12,640 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:12,640 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 9 times [2024-11-23 02:39:12,640 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:12,640 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1554123501] [2024-11-23 02:39:12,640 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:39:12,640 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:12,662 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-23 02:39:12,665 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:12,665 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:12,667 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:12,674 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:12,692 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:12,693 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-23 02:39:12,693 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-23 02:39:12,693 INFO L87 Difference]: Start difference. First operand 9182 states and 17106 transitions. cyclomatic complexity: 7959 Second operand has 3 states, 3 states have (on average 22.666666666666668) internal successors, (68), 2 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-23 02:39:13,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:13,283 INFO L93 Difference]: Finished difference Result 17168 states and 31881 transitions. [2024-11-23 02:39:13,283 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17168 states and 31881 transitions. [2024-11-23 02:39:13,360 INFO L131 ngComponentsAnalysis]: Automaton has 65 accepting balls. 4578 [2024-11-23 02:39:13,410 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17168 states to 17168 states and 31881 transitions. [2024-11-23 02:39:13,410 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17094 [2024-11-23 02:39:13,424 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17094 [2024-11-23 02:39:13,425 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17168 states and 31881 transitions. [2024-11-23 02:39:13,426 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:13,426 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17168 states and 31881 transitions. [2024-11-23 02:39:13,441 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17168 states and 31881 transitions. [2024-11-23 02:39:13,605 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17168 to 17166. [2024-11-23 02:39:13,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17166 states, 17166 states have (on average 1.8571012466503554) internal successors, (31879), 17165 states have internal predecessors, (31879), 0 states have call successors, (0), 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-23 02:39:13,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17166 states to 17166 states and 31879 transitions. [2024-11-23 02:39:13,668 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17166 states and 31879 transitions. [2024-11-23 02:39:13,668 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-23 02:39:13,669 INFO L425 stractBuchiCegarLoop]: Abstraction has 17166 states and 31879 transitions. [2024-11-23 02:39:13,669 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-11-23 02:39:13,669 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17166 states and 31879 transitions. [2024-11-23 02:39:13,729 INFO L131 ngComponentsAnalysis]: Automaton has 65 accepting balls. 4578 [2024-11-23 02:39:13,729 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:13,729 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:13,730 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-23 02:39:13,730 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:13,730 INFO L745 eck$LassoCheckResult]: Stem: 291656#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 291387#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 291388#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 293279#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 285868#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 285869#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 287474#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 286178#L801 assume !(0 == getOrigin_~person#1); 286179#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 287505#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 289073#L409 assume !(0 == initPersonOnFloor_~floor#1); 285433#L436 assume !(1 == initPersonOnFloor_~floor#1); 285434#L463 assume !(2 == initPersonOnFloor_~floor#1); 286546#L490 assume 3 == initPersonOnFloor_~floor#1; 286547#L491 assume !(0 == initPersonOnFloor_~person#1); 288284#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 285280#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 286553#L201 assume !(0 == callOnFloor_~floorID#1); 289111#L204 assume !(1 == callOnFloor_~floorID#1); 286381#L207 assume !(2 == callOnFloor_~floorID#1); 286382#L210 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 287057#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 286422#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 286423#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 285443#L801-1 assume !(0 == getOrigin_~person#1); 285444#L805-1 assume !(1 == getOrigin_~person#1); 289958#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 285221#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 285222#L409-1 assume !(0 == initPersonOnFloor_~floor#1); 289227#L436-1 assume !(1 == initPersonOnFloor_~floor#1); 289228#L463-1 assume 2 == initPersonOnFloor_~floor#1; 290585#L464-2 assume !(0 == initPersonOnFloor_~person#1); 290586#L467-2 assume !(1 == initPersonOnFloor_~person#1); 290802#L470-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 289704#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 293603#L201-2 assume !(0 == callOnFloor_~floorID#1); 293602#L204-2 assume !(1 == callOnFloor_~floorID#1); 293601#L207-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 290829#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 290165#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 290166#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 293092#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 290506#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 290507#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 290240#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 290241#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 287767#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 284911#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 284912#L2290 assume !(0 != timeShift_~tmp___9~2#1); 287465#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 287466#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 291858#L2043 assume !(0 != ~floorButtons_0~0); 291816#L2047 assume 0 != ~floorButtons_1~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 287283#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 290200#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 288557#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 288558#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 285370#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 286244#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 287659#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 292658#L2078 assume !(1 == ~currentHeading~0); 292948#L2088 assume !(0 == ~currentFloorID~0); 291476#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 286497#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 286498#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 289208#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 289209#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 285440#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 285441#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 291086#L2663-2 [2024-11-23 02:39:13,731 INFO L747 eck$LassoCheckResult]: Loop: 291086#L2663-2 assume !false; 288185#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 288186#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 285857#L2672-2 assume !false; 285858#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 290888#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 291086#L2663-2 [2024-11-23 02:39:13,731 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:13,731 INFO L85 PathProgramCache]: Analyzing trace with hash 177329638, now seen corresponding path program 1 times [2024-11-23 02:39:13,731 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:13,731 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1262941807] [2024-11-23 02:39:13,731 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:13,731 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:13,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:13,796 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-23 02:39:13,796 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:13,796 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1262941807] [2024-11-23 02:39:13,796 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1262941807] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:13,796 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:13,797 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-23 02:39:13,797 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [58072657] [2024-11-23 02:39:13,797 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:13,797 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:13,797 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:13,797 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 10 times [2024-11-23 02:39:13,797 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:13,797 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1058295622] [2024-11-23 02:39:13,797 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:39:13,798 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:13,811 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:39:13,811 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:13,811 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:13,812 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:13,817 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:13,837 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:13,837 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-23 02:39:13,837 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-23 02:39:13,838 INFO L87 Difference]: Start difference. First operand 17166 states and 31879 transitions. cyclomatic complexity: 14782 Second operand has 3 states, 3 states have (on average 23.0) internal successors, (69), 2 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-23 02:39:14,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:14,543 INFO L93 Difference]: Finished difference Result 33042 states and 61175 transitions. [2024-11-23 02:39:14,543 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 33042 states and 61175 transitions. [2024-11-23 02:39:14,823 INFO L131 ngComponentsAnalysis]: Automaton has 129 accepting balls. 9060 [2024-11-23 02:39:14,894 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 33042 states to 33042 states and 61175 transitions. [2024-11-23 02:39:14,894 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32900 [2024-11-23 02:39:14,913 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32900 [2024-11-23 02:39:14,913 INFO L73 IsDeterministic]: Start isDeterministic. Operand 33042 states and 61175 transitions. [2024-11-23 02:39:14,922 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:14,922 INFO L218 hiAutomatonCegarLoop]: Abstraction has 33042 states and 61175 transitions. [2024-11-23 02:39:14,938 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33042 states and 61175 transitions. [2024-11-23 02:39:15,309 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33042 to 33038. [2024-11-23 02:39:15,347 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33038 states, 33038 states have (on average 1.8515345965252135) internal successors, (61171), 33037 states have internal predecessors, (61171), 0 states have call successors, (0), 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-23 02:39:15,410 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33038 states to 33038 states and 61171 transitions. [2024-11-23 02:39:15,410 INFO L240 hiAutomatonCegarLoop]: Abstraction has 33038 states and 61171 transitions. [2024-11-23 02:39:15,411 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-23 02:39:15,411 INFO L425 stractBuchiCegarLoop]: Abstraction has 33038 states and 61171 transitions. [2024-11-23 02:39:15,411 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-11-23 02:39:15,411 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33038 states and 61171 transitions. [2024-11-23 02:39:15,509 INFO L131 ngComponentsAnalysis]: Automaton has 129 accepting balls. 9060 [2024-11-23 02:39:15,510 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:15,510 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:15,510 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] [2024-11-23 02:39:15,510 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:15,511 INFO L745 eck$LassoCheckResult]: Stem: 341932#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 341658#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 341659#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 343633#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 336081#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 336082#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 337698#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 336395#L801 assume !(0 == getOrigin_~person#1); 336396#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 337729#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 339305#L409 assume !(0 == initPersonOnFloor_~floor#1); 335646#L436 assume !(1 == initPersonOnFloor_~floor#1); 335647#L463 assume !(2 == initPersonOnFloor_~floor#1); 336766#L490 assume 3 == initPersonOnFloor_~floor#1; 336767#L491 assume !(0 == initPersonOnFloor_~person#1); 338510#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 335493#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 336773#L201 assume !(0 == callOnFloor_~floorID#1); 339343#L204 assume !(1 == callOnFloor_~floorID#1); 336599#L207 assume !(2 == callOnFloor_~floorID#1); 336600#L210 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 337276#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 336643#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 336644#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 335656#L801-1 assume !(0 == getOrigin_~person#1); 335657#L805-1 assume !(1 == getOrigin_~person#1); 340201#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 335434#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 335435#L409-1 assume !(0 == initPersonOnFloor_~floor#1); 339458#L436-1 assume !(1 == initPersonOnFloor_~floor#1); 339459#L463-1 assume 2 == initPersonOnFloor_~floor#1; 340832#L464-2 assume !(0 == initPersonOnFloor_~person#1); 340833#L467-2 assume !(1 == initPersonOnFloor_~person#1); 341053#L470-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 339944#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 344037#L201-2 assume !(0 == callOnFloor_~floorID#1); 344036#L204-2 assume !(1 == callOnFloor_~floorID#1); 344035#L207-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 341078#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 340413#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 340414#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 343418#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 340751#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 340752#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 340486#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 340487#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 337990#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 335126#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 335127#L2290 assume !(0 != timeShift_~tmp___9~2#1); 337688#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 337689#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 342143#L2043 assume !(0 != ~floorButtons_0~0); 342099#L2047 assume !(0 != ~floorButtons_1~0); 342100#L2051 assume 0 != ~floorButtons_2~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 337505#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 340446#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 338783#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 338784#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 335583#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 336462#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 337881#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 342961#L2078 assume !(1 == ~currentHeading~0); 343269#L2088 assume !(0 == ~currentFloorID~0); 341750#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 336719#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 335085#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 335086#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 339440#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 335653#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 335654#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 341348#L2663-2 [2024-11-23 02:39:15,511 INFO L747 eck$LassoCheckResult]: Loop: 341348#L2663-2 assume !false; 338409#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 338410#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 336070#L2672-2 assume !false; 336071#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 341143#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 341348#L2663-2 [2024-11-23 02:39:15,512 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:15,512 INFO L85 PathProgramCache]: Analyzing trace with hash -2029788863, now seen corresponding path program 1 times [2024-11-23 02:39:15,512 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:15,512 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [774220477] [2024-11-23 02:39:15,512 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:15,512 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:15,542 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:15,578 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-23 02:39:15,579 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:15,579 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [774220477] [2024-11-23 02:39:15,579 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [774220477] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:15,579 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:15,579 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-23 02:39:15,579 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [779975137] [2024-11-23 02:39:15,580 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:15,580 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:15,580 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:15,580 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 11 times [2024-11-23 02:39:15,581 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:15,581 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1968592286] [2024-11-23 02:39:15,581 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:39:15,581 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:15,591 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:39:15,591 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:15,591 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:15,592 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:15,597 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:15,615 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:15,616 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-23 02:39:15,616 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-23 02:39:15,616 INFO L87 Difference]: Start difference. First operand 33038 states and 61171 transitions. cyclomatic complexity: 28270 Second operand has 3 states, 3 states have (on average 23.333333333333332) internal successors, (70), 2 states have internal predecessors, (70), 0 states have call successors, (0), 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-23 02:39:16,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:16,547 INFO L93 Difference]: Finished difference Result 64582 states and 119210 transitions. [2024-11-23 02:39:16,547 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 64582 states and 119210 transitions. [2024-11-23 02:39:17,031 INFO L131 ngComponentsAnalysis]: Automaton has 257 accepting balls. 17970 [2024-11-23 02:39:17,314 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 64582 states to 64582 states and 119210 transitions. [2024-11-23 02:39:17,314 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 64308 [2024-11-23 02:39:17,373 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 64308 [2024-11-23 02:39:17,374 INFO L73 IsDeterministic]: Start isDeterministic. Operand 64582 states and 119210 transitions. [2024-11-23 02:39:17,457 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:17,458 INFO L218 hiAutomatonCegarLoop]: Abstraction has 64582 states and 119210 transitions. [2024-11-23 02:39:17,517 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64582 states and 119210 transitions. [2024-11-23 02:39:18,360 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64582 to 64574. [2024-11-23 02:39:18,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 64574 states, 64574 states have (on average 1.8459751602812278) internal successors, (119202), 64573 states have internal predecessors, (119202), 0 states have call successors, (0), 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-23 02:39:18,519 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64574 states to 64574 states and 119202 transitions. [2024-11-23 02:39:18,520 INFO L240 hiAutomatonCegarLoop]: Abstraction has 64574 states and 119202 transitions. [2024-11-23 02:39:18,520 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-23 02:39:18,520 INFO L425 stractBuchiCegarLoop]: Abstraction has 64574 states and 119202 transitions. [2024-11-23 02:39:18,520 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-11-23 02:39:18,521 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 64574 states and 119202 transitions. [2024-11-23 02:39:18,673 INFO L131 ngComponentsAnalysis]: Automaton has 257 accepting balls. 17970 [2024-11-23 02:39:18,673 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:18,673 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:18,674 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] [2024-11-23 02:39:18,674 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:18,674 INFO L745 eck$LassoCheckResult]: Stem: 439732#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 439446#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 439447#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 441549#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 433709#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 433710#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 435336#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 434025#L801 assume !(0 == getOrigin_~person#1); 434026#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 435368#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 436970#L409 assume !(0 == initPersonOnFloor_~floor#1); 433270#L436 assume !(1 == initPersonOnFloor_~floor#1); 433271#L463 assume !(2 == initPersonOnFloor_~floor#1); 434396#L490 assume 3 == initPersonOnFloor_~floor#1; 434397#L491 assume !(0 == initPersonOnFloor_~person#1); 436154#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 433117#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 434403#L201 assume !(0 == callOnFloor_~floorID#1); 437009#L204 assume !(1 == callOnFloor_~floorID#1); 434231#L207 assume !(2 == callOnFloor_~floorID#1); 434232#L210 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 434913#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 434273#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 434274#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 433280#L801-1 assume !(0 == getOrigin_~person#1); 433281#L805-1 assume !(1 == getOrigin_~person#1); 437877#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 433058#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 433059#L409-1 assume !(0 == initPersonOnFloor_~floor#1); 437129#L436-1 assume !(1 == initPersonOnFloor_~floor#1); 437130#L463-1 assume 2 == initPersonOnFloor_~floor#1; 438554#L464-2 assume !(0 == initPersonOnFloor_~person#1); 438555#L467-2 assume !(1 == initPersonOnFloor_~person#1); 438790#L470-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 437622#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 442031#L201-2 assume !(0 == callOnFloor_~floorID#1); 442030#L204-2 assume !(1 == callOnFloor_~floorID#1); 442029#L207-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 438819#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 438098#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 438099#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 441314#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 438463#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 438464#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 438176#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 438177#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 435627#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 432754#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 432755#L2290 assume !(0 != timeShift_~tmp___9~2#1); 435325#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 435326#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 439962#L2043 assume !(0 != ~floorButtons_0~0); 439917#L2047 assume !(0 != ~floorButtons_1~0); 439918#L2051 assume !(0 != ~floorButtons_2~0); 435390#L2055 assume 0 != ~floorButtons_3~0;isAnyLiftButtonPressed_~retValue_acc~20#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 435142#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 438133#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 436433#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 436434#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 433210#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 434093#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 435520#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 440842#L2078 assume !(1 == ~currentHeading~0); 441162#L2088 assume !(0 == ~currentFloorID~0); 439540#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 434348#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 434349#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 452681#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 452682#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 452683#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 452779#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 452778#L2663-2 [2024-11-23 02:39:18,675 INFO L747 eck$LassoCheckResult]: Loop: 452778#L2663-2 assume !false; 452777#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 452776#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 452775#L2672-2 assume !false; 452773#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 452774#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 452778#L2663-2 [2024-11-23 02:39:18,675 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:18,675 INFO L85 PathProgramCache]: Analyzing trace with hash 740595531, now seen corresponding path program 1 times [2024-11-23 02:39:18,675 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:18,675 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1721918737] [2024-11-23 02:39:18,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:18,676 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:18,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:18,730 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-23 02:39:18,730 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:18,730 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1721918737] [2024-11-23 02:39:18,730 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1721918737] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:18,731 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:18,731 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-23 02:39:18,731 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [372989491] [2024-11-23 02:39:18,731 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:18,731 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:18,731 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:18,732 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 12 times [2024-11-23 02:39:18,732 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:18,732 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1081756351] [2024-11-23 02:39:18,732 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:39:18,736 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:18,744 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-23 02:39:18,746 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:18,746 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:18,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:18,756 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:19,011 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:19,011 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-23 02:39:19,011 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-23 02:39:19,011 INFO L87 Difference]: Start difference. First operand 64574 states and 119202 transitions. cyclomatic complexity: 54901 Second operand has 3 states, 3 states have (on average 23.666666666666668) internal successors, (71), 2 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:39:20,179 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:20,179 INFO L93 Difference]: Finished difference Result 127230 states and 234129 transitions. [2024-11-23 02:39:20,179 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 127230 states and 234129 transitions. [2024-11-23 02:39:21,072 INFO L131 ngComponentsAnalysis]: Automaton has 513 accepting balls. 35672 [2024-11-23 02:39:21,554 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 127230 states to 127230 states and 234129 transitions. [2024-11-23 02:39:21,554 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 126700 [2024-11-23 02:39:21,648 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 126700 [2024-11-23 02:39:21,648 INFO L73 IsDeterministic]: Start isDeterministic. Operand 127230 states and 234129 transitions. [2024-11-23 02:39:21,649 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:21,649 INFO L218 hiAutomatonCegarLoop]: Abstraction has 127230 states and 234129 transitions. [2024-11-23 02:39:21,722 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127230 states and 234129 transitions. [2024-11-23 02:39:23,227 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127230 to 127214. [2024-11-23 02:39:23,378 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127214 states, 127214 states have (on average 1.84030845661641) internal successors, (234113), 127213 states have internal predecessors, (234113), 0 states have call successors, (0), 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-23 02:39:23,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127214 states to 127214 states and 234113 transitions. [2024-11-23 02:39:23,613 INFO L240 hiAutomatonCegarLoop]: Abstraction has 127214 states and 234113 transitions. [2024-11-23 02:39:23,617 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-23 02:39:23,617 INFO L425 stractBuchiCegarLoop]: Abstraction has 127214 states and 234113 transitions. [2024-11-23 02:39:23,617 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-11-23 02:39:23,617 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 127214 states and 234113 transitions. [2024-11-23 02:39:24,547 INFO L131 ngComponentsAnalysis]: Automaton has 513 accepting balls. 35672 [2024-11-23 02:39:24,547 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:24,548 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:24,548 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] [2024-11-23 02:39:24,549 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:24,549 INFO L745 eck$LassoCheckResult]: Stem: 631614#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 631332#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 631333#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 633502#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 625515#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 625516#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 627158#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 625831#L801 assume !(0 == getOrigin_~person#1); 625832#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 627190#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 628818#L409 assume !(0 == initPersonOnFloor_~floor#1); 625076#L436 assume !(1 == initPersonOnFloor_~floor#1); 625077#L463 assume !(2 == initPersonOnFloor_~floor#1); 626205#L490 assume 3 == initPersonOnFloor_~floor#1; 626206#L491 assume !(0 == initPersonOnFloor_~person#1); 627984#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 624923#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 626212#L201 assume !(0 == callOnFloor_~floorID#1); 628860#L204 assume !(1 == callOnFloor_~floorID#1); 626038#L207 assume !(2 == callOnFloor_~floorID#1); 626039#L210 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 626727#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 626082#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 626083#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 625086#L801-1 assume !(0 == getOrigin_~person#1); 625087#L805-1 assume !(1 == getOrigin_~person#1); 629753#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 624864#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 624865#L409-1 assume !(0 == initPersonOnFloor_~floor#1); 628979#L436-1 assume !(1 == initPersonOnFloor_~floor#1); 628980#L463-1 assume 2 == initPersonOnFloor_~floor#1; 630431#L464-2 assume !(0 == initPersonOnFloor_~person#1); 630432#L467-2 assume !(1 == initPersonOnFloor_~person#1); 630671#L470-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 629490#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 634073#L201-2 assume !(0 == callOnFloor_~floorID#1); 634072#L204-2 assume !(1 == callOnFloor_~floorID#1); 634071#L207-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 630697#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 629975#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 629976#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 633263#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 630344#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 630345#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 630056#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 630057#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 627454#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 624560#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 624561#L2290 assume !(0 != timeShift_~tmp___9~2#1); 627147#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 627148#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 631841#L2043 assume !(0 != ~floorButtons_0~0); 631795#L2047 assume !(0 != ~floorButtons_1~0); 631796#L2051 assume !(0 != ~floorButtons_2~0); 627213#L2055 assume !(0 != ~floorButtons_3~0); 626959#L2059 assume !(0 != ~floorButtons_4~0);isAnyLiftButtonPressed_~retValue_acc~20#1 := 0;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 626960#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 630013#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 628275#L1663-2 assume !(1 == stopRequestedInDirection__wrappee__weight_~dir#1); 628276#L1832-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 625016#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 625898#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 627347#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 632747#L2078 assume !(1 == ~currentHeading~0); 633098#L2088 assume !(0 == ~currentFloorID~0); 631425#L2088-2 assume 1 == ~currentHeading~0;~currentFloorID~0 := 1 + ~currentFloorID~0; 626157#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 624516#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 624517#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 628961#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 625083#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 625084#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 630989#L2663-2 [2024-11-23 02:39:24,550 INFO L747 eck$LassoCheckResult]: Loop: 630989#L2663-2 assume !false; 627882#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 627883#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 625504#L2672-2 assume !false; 625505#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 630767#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 630989#L2663-2 [2024-11-23 02:39:24,550 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:24,550 INFO L85 PathProgramCache]: Analyzing trace with hash 1606399112, now seen corresponding path program 1 times [2024-11-23 02:39:24,550 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:24,550 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [691512589] [2024-11-23 02:39:24,550 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:24,551 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:24,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:24,649 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-23 02:39:24,650 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:24,650 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [691512589] [2024-11-23 02:39:24,650 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [691512589] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:24,650 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:24,650 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-23 02:39:24,650 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1930708990] [2024-11-23 02:39:24,650 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:24,651 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:24,651 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:24,651 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 13 times [2024-11-23 02:39:24,651 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:24,651 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [768860072] [2024-11-23 02:39:24,651 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-23 02:39:24,651 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:24,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:24,660 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:24,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:24,665 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:24,679 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:24,680 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-23 02:39:24,680 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-23 02:39:24,680 INFO L87 Difference]: Start difference. First operand 127214 states and 234113 transitions. cyclomatic complexity: 107444 Second operand has 5 states, 5 states have (on average 14.4) internal successors, (72), 4 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:39:26,381 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:26,381 INFO L93 Difference]: Finished difference Result 213066 states and 391007 transitions. [2024-11-23 02:39:26,382 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 213066 states and 391007 transitions. [2024-11-23 02:39:27,817 INFO L131 ngComponentsAnalysis]: Automaton has 905 accepting balls. 66622 [2024-11-23 02:39:28,989 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 213066 states to 213066 states and 391007 transitions. [2024-11-23 02:39:28,990 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 212514 [2024-11-23 02:39:29,126 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 212514 [2024-11-23 02:39:29,127 INFO L73 IsDeterministic]: Start isDeterministic. Operand 213066 states and 391007 transitions. [2024-11-23 02:39:29,127 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:29,128 INFO L218 hiAutomatonCegarLoop]: Abstraction has 213066 states and 391007 transitions. [2024-11-23 02:39:29,257 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 213066 states and 391007 transitions. [2024-11-23 02:39:31,641 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 213066 to 212968. [2024-11-23 02:39:31,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 212968 states, 212968 states have (on average 1.835299199879794) internal successors, (390860), 212967 states have internal predecessors, (390860), 0 states have call successors, (0), 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-23 02:39:32,265 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212968 states to 212968 states and 390860 transitions. [2024-11-23 02:39:32,265 INFO L240 hiAutomatonCegarLoop]: Abstraction has 212968 states and 390860 transitions. [2024-11-23 02:39:32,266 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-23 02:39:32,266 INFO L425 stractBuchiCegarLoop]: Abstraction has 212968 states and 390860 transitions. [2024-11-23 02:39:32,266 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-11-23 02:39:32,266 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 212968 states and 390860 transitions. [2024-11-23 02:39:33,354 INFO L131 ngComponentsAnalysis]: Automaton has 905 accepting balls. 66590 [2024-11-23 02:39:33,354 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:33,354 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:33,354 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] [2024-11-23 02:39:33,355 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:33,355 INFO L745 eck$LassoCheckResult]: Stem: 971816#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 971518#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 971519#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 973735#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 965787#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 965788#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 967402#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 966099#L801 assume !(0 == getOrigin_~person#1); 966100#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 967432#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 969020#L409 assume !(0 == initPersonOnFloor_~floor#1); 965348#L436 assume !(1 == initPersonOnFloor_~floor#1); 965349#L463 assume !(2 == initPersonOnFloor_~floor#1); 966469#L490 assume 3 == initPersonOnFloor_~floor#1; 966470#L491 assume !(0 == initPersonOnFloor_~person#1); 968217#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 965197#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 966476#L201 assume !(0 == callOnFloor_~floorID#1); 969060#L204 assume !(1 == callOnFloor_~floorID#1); 966300#L207 assume !(2 == callOnFloor_~floorID#1); 966301#L210 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 966983#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 966342#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 966343#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 965358#L801-1 assume !(0 == getOrigin_~person#1); 965359#L805-1 assume !(1 == getOrigin_~person#1); 969936#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 965138#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 965139#L409-1 assume !(0 == initPersonOnFloor_~floor#1); 969179#L436-1 assume !(1 == initPersonOnFloor_~floor#1); 969180#L463-1 assume 2 == initPersonOnFloor_~floor#1; 970627#L464-2 assume !(0 == initPersonOnFloor_~person#1); 970628#L467-2 assume !(1 == initPersonOnFloor_~person#1); 970872#L470-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 969675#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 970402#L201-2 assume !(0 == callOnFloor_~floorID#1); 973784#L204-2 assume !(1 == callOnFloor_~floorID#1); 973785#L207-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 970900#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 970163#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 970164#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 973502#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 970535#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 970536#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 970245#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 970246#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 967688#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 964834#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 964835#L2290 assume !(0 != timeShift_~tmp___9~2#1); 967393#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 967394#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 972041#L2043 assume !(0 != ~floorButtons_0~0); 971996#L2047 assume !(0 != ~floorButtons_1~0); 971997#L2051 assume !(0 != ~floorButtons_2~0); 967452#L2055 assume !(0 != ~floorButtons_3~0); 967215#L2059 assume !(0 != ~floorButtons_4~0);isAnyLiftButtonPressed_~retValue_acc~20#1 := 0;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 967216#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 970200#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 968493#L1663-2 assume 1 == stopRequestedInDirection__wrappee__weight_~dir#1;assume { :begin_inline_isTopFloor } true;isTopFloor_#in~floorID#1 := ~currentFloorID~0;havoc isTopFloor_#res#1;havoc isTopFloor_~floorID#1, isTopFloor_~retValue_acc~2#1;isTopFloor_~floorID#1 := isTopFloor_#in~floorID#1;havoc isTopFloor_~retValue_acc~2#1;isTopFloor_~retValue_acc~2#1 := (if 4 == isTopFloor_~floorID#1 then 1 else 0);isTopFloor_#res#1 := isTopFloor_~retValue_acc~2#1; 968494#isTopFloor_returnLabel#3 stopRequestedInDirection__wrappee__weight_#t~ret27#1 := isTopFloor_#res#1;havoc isTopFloor_~floorID#1, isTopFloor_~retValue_acc~2#1;havoc isTopFloor_#in~floorID#1;assume { :end_inline_isTopFloor } true;stopRequestedInDirection__wrappee__weight_~tmp~13#1 := stopRequestedInDirection__wrappee__weight_#t~ret27#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1; 972340#L1667-2 assume 0 != stopRequestedInDirection__wrappee__weight_~tmp~13#1;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 0;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 965283#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 966164#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 967583#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 972967#L2078 assume 1 == ~currentHeading~0;assume { :begin_inline_isTopFloor } true;isTopFloor_#in~floorID#1 := ~currentFloorID~0;havoc isTopFloor_#res#1;havoc isTopFloor_~floorID#1, isTopFloor_~retValue_acc~2#1;isTopFloor_~floorID#1 := isTopFloor_#in~floorID#1;havoc isTopFloor_~retValue_acc~2#1;isTopFloor_~retValue_acc~2#1 := (if 4 == isTopFloor_~floorID#1 then 1 else 0);isTopFloor_#res#1 := isTopFloor_~retValue_acc~2#1; 973326#isTopFloor_returnLabel#4 continueInDirection_#t~ret42#1 := isTopFloor_#res#1;havoc isTopFloor_~floorID#1, isTopFloor_~retValue_acc~2#1;havoc isTopFloor_#in~floorID#1;assume { :end_inline_isTopFloor } true;continueInDirection_~tmp~15#1 := continueInDirection_#t~ret42#1;havoc continueInDirection_#t~ret42#1; 971608#L2082 assume 0 != continueInDirection_~tmp~15#1;~currentHeading~0 := 0; 971609#L2088-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 974407#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 974385#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 974378#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 974379#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 974384#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 974453#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 974454#L2663-2 [2024-11-23 02:39:33,357 INFO L747 eck$LassoCheckResult]: Loop: 974454#L2663-2 assume !false; 974457#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 974458#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 974468#L2672-2 assume !false; 974464#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 974461#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 974454#L2663-2 [2024-11-23 02:39:33,358 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:33,358 INFO L85 PathProgramCache]: Analyzing trace with hash 244105344, now seen corresponding path program 1 times [2024-11-23 02:39:33,358 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:33,358 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [56349227] [2024-11-23 02:39:33,358 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:33,358 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:33,398 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:33,465 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-23 02:39:33,466 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:33,466 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [56349227] [2024-11-23 02:39:33,466 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [56349227] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:33,466 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:33,466 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-23 02:39:33,466 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [73236142] [2024-11-23 02:39:33,466 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:33,467 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:33,467 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:33,467 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 14 times [2024-11-23 02:39:33,467 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:33,467 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1229178330] [2024-11-23 02:39:33,467 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:39:33,467 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:33,474 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:39:33,474 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:33,474 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:33,475 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:33,478 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:33,491 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:33,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-23 02:39:33,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-23 02:39:33,492 INFO L87 Difference]: Start difference. First operand 212968 states and 390860 transitions. cyclomatic complexity: 178831 Second operand has 5 states, 5 states have (on average 14.8) internal successors, (74), 5 states have internal predecessors, (74), 0 states have call successors, (0), 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-23 02:39:35,271 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:35,272 INFO L93 Difference]: Finished difference Result 213994 states and 391886 transitions. [2024-11-23 02:39:35,272 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 213994 states and 391886 transitions. [2024-11-23 02:39:36,678 INFO L131 ngComponentsAnalysis]: Automaton has 905 accepting balls. 66878 [2024-11-23 02:39:37,492 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 213994 states to 213994 states and 391886 transitions. [2024-11-23 02:39:37,493 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 213442 [2024-11-23 02:39:37,705 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 213442 [2024-11-23 02:39:37,705 INFO L73 IsDeterministic]: Start isDeterministic. Operand 213994 states and 391886 transitions. [2024-11-23 02:39:37,707 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:39:37,707 INFO L218 hiAutomatonCegarLoop]: Abstraction has 213994 states and 391886 transitions. [2024-11-23 02:39:37,875 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 213994 states and 391886 transitions. [2024-11-23 02:39:40,047 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 213994 to 213538. [2024-11-23 02:39:40,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 213538 states, 213538 states have (on average 1.833069523925484) internal successors, (391430), 213537 states have internal predecessors, (391430), 0 states have call successors, (0), 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-23 02:39:40,675 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 213538 states to 213538 states and 391430 transitions. [2024-11-23 02:39:40,675 INFO L240 hiAutomatonCegarLoop]: Abstraction has 213538 states and 391430 transitions. [2024-11-23 02:39:40,676 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-23 02:39:40,676 INFO L425 stractBuchiCegarLoop]: Abstraction has 213538 states and 391430 transitions. [2024-11-23 02:39:40,676 INFO L332 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2024-11-23 02:39:40,676 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 213538 states and 391430 transitions. [2024-11-23 02:39:41,911 INFO L131 ngComponentsAnalysis]: Automaton has 905 accepting balls. 66750 [2024-11-23 02:39:41,911 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:39:41,911 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:39:41,912 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-23 02:39:41,912 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2024-11-23 02:39:41,916 INFO L745 eck$LassoCheckResult]: Stem: 1398788#$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(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int#1(91, 5, 0, 1);call write~init~int#1(95, 5, 1, 1);call write~init~int#1(93, 5, 2, 1);call write~init~int#1(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int#2(91, 6, 0, 1);call write~init~int#2(93, 6, 1, 1);call write~init~int#2(32, 6, 2, 1);call write~init~int#2(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int#3(32, 7, 0, 1);call write~init~int#3(97, 7, 1, 1);call write~init~int#3(116, 7, 2, 1);call write~init~int#3(32, 7, 3, 1);call write~init~int#3(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int#4(37, 8, 0, 1);call write~init~int#4(105, 8, 1, 1);call write~init~int#4(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int#5(117, 10, 0, 1);call write~init~int#5(112, 10, 1, 1);call write~init~int#5(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int#6(100, 11, 0, 1);call write~init~int#6(111, 11, 1, 1);call write~init~int#6(119, 11, 2, 1);call write~init~int#6(110, 11, 3, 1);call write~init~int#6(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int#7(32, 12, 0, 1);call write~init~int#7(73, 12, 1, 1);call write~init~int#7(76, 12, 2, 1);call write~init~int#7(95, 12, 3, 1);call write~init~int#7(112, 12, 4, 1);call write~init~int#7(58, 12, 5, 1);call write~init~int#7(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int#8(32, 13, 0, 1);call write~init~int#8(37, 13, 1, 1);call write~init~int#8(105, 13, 2, 1);call write~init~int#8(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int#9(32, 14, 0, 1);call write~init~int#9(37, 14, 1, 1);call write~init~int#9(105, 14, 2, 1);call write~init~int#9(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int#10(32, 15, 0, 1);call write~init~int#10(37, 15, 1, 1);call write~init~int#10(105, 15, 2, 1);call write~init~int#10(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int#11(32, 16, 0, 1);call write~init~int#11(37, 16, 1, 1);call write~init~int#11(105, 16, 2, 1);call write~init~int#11(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int#12(32, 17, 0, 1);call write~init~int#12(37, 17, 1, 1);call write~init~int#12(105, 17, 2, 1);call write~init~int#12(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int#13(32, 18, 0, 1);call write~init~int#13(70, 18, 1, 1);call write~init~int#13(95, 18, 2, 1);call write~init~int#13(112, 18, 3, 1);call write~init~int#13(58, 18, 4, 1);call write~init~int#13(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int#14(32, 19, 0, 1);call write~init~int#14(37, 19, 1, 1);call write~init~int#14(105, 19, 2, 1);call write~init~int#14(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int#15(32, 20, 0, 1);call write~init~int#15(37, 20, 1, 1);call write~init~int#15(105, 20, 2, 1);call write~init~int#15(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int#16(32, 21, 0, 1);call write~init~int#16(37, 21, 1, 1);call write~init~int#16(105, 21, 2, 1);call write~init~int#16(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int#17(32, 22, 0, 1);call write~init~int#17(37, 22, 1, 1);call write~init~int#17(105, 22, 2, 1);call write~init~int#17(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int#18(32, 23, 0, 1);call write~init~int#18(37, 23, 1, 1);call write~init~int#18(105, 23, 2, 1);call write~init~int#18(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int#19(10, 24, 0, 1);call write~init~int#19(0, 24, 1, 1);call #Ultimate.allocInit(30, 25);call #Ultimate.allocInit(9, 26);call #Ultimate.allocInit(21, 27);call #Ultimate.allocInit(30, 28);call #Ultimate.allocInit(9, 29);call #Ultimate.allocInit(21, 30);call #Ultimate.allocInit(30, 31);call #Ultimate.allocInit(9, 32);call #Ultimate.allocInit(25, 33);call #Ultimate.allocInit(30, 34);call #Ultimate.allocInit(9, 35);call #Ultimate.allocInit(25, 36);~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;~weight~0 := 0;~maximumWeight~0 := 100;~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;~prevDir~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 1398492#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret18#1, main_~retValue_acc~9#1, main_~tmp~8#1;havoc main_~retValue_acc~9#1;havoc main_~tmp~8#1;assume { :begin_inline_select_helpers } true; 1398493#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 1400754#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~4#1;havoc valid_product_~retValue_acc~4#1;valid_product_~retValue_acc~4#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~4#1; 1392757#valid_product_returnLabel#1 main_#t~ret18#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~4#1;assume { :end_inline_valid_product } true;main_~tmp~8#1 := main_#t~ret18#1;havoc main_#t~ret18#1; 1392758#L1217 assume 0 != main_~tmp~8#1;assume { :begin_inline_setup } true; 1394379#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~ret7#1, aliceCall_~tmp~1#1;havoc aliceCall_~tmp~1#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 1393066#L801 assume !(0 == getOrigin_~person#1); 1393067#L805 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 1394410#getOrigin_returnLabel#1 aliceCall_#t~ret7#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~1#1 := aliceCall_#t~ret7#1;havoc aliceCall_#t~ret7#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~1#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 1396008#L409 assume !(0 == initPersonOnFloor_~floor#1); 1392315#L436 assume !(1 == initPersonOnFloor_~floor#1); 1392316#L463 assume !(2 == initPersonOnFloor_~floor#1); 1393443#L490 assume 3 == initPersonOnFloor_~floor#1; 1393444#L491 assume !(0 == initPersonOnFloor_~person#1); 1395193#L494 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 1392164#L517-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 1393450#L201 assume !(0 == callOnFloor_~floorID#1); 1396047#L204 assume !(1 == callOnFloor_~floorID#1); 1393270#L207 assume !(2 == callOnFloor_~floorID#1); 1393271#L210 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 1393957#L213-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 1393312#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 1393313#aliceCall_returnLabel#1 havoc aliceCall_#t~ret7#1, aliceCall_~tmp~1#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;havoc angelinaCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~6#1; 1392325#L801-1 assume !(0 == getOrigin_~person#1); 1392326#L805-1 assume !(1 == getOrigin_~person#1); 1396928#L809-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~6#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~6#1; 1392103#getOrigin_returnLabel#2 angelinaCall_#t~ret8#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~6#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~2#1 := angelinaCall_#t~ret8#1;havoc angelinaCall_#t~ret8#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 1392104#L409-1 assume !(0 == initPersonOnFloor_~floor#1); 1396164#L436-1 assume !(1 == initPersonOnFloor_~floor#1); 1396165#L463-1 assume 2 == initPersonOnFloor_~floor#1; 1397605#L464-2 assume !(0 == initPersonOnFloor_~person#1); 1397606#L467-2 assume !(1 == initPersonOnFloor_~person#1); 1397841#L470-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 1396655#L517-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 1401571#L201-2 assume !(0 == callOnFloor_~floorID#1); 1401570#L204-2 assume !(1 == callOnFloor_~floorID#1); 1401569#L207-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 1397867#L213-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 1397150#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 1397151#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret8#1, angelinaCall_~tmp~2#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret60#1, timeShift_#t~ret61#1, timeShift_#t~ret62#1, timeShift_#t~ret63#1, timeShift_#t~ret64#1, timeShift_#t~ret65#1, timeShift_#t~ret66#1, timeShift_#t~ret67#1, timeShift_#t~ret68#1, timeShift_#t~ret69#1, timeShift_#t~ret70#1, timeShift_~tmp~19#1, timeShift_~tmp___0~7#1, timeShift_~tmp___1~4#1, timeShift_~tmp___2~4#1, timeShift_~tmp___3~3#1, timeShift_~tmp___4~2#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~19#1;havoc timeShift_~tmp___0~7#1;havoc timeShift_~tmp___1~4#1;havoc timeShift_~tmp___2~4#1;havoc timeShift_~tmp___3~3#1;havoc timeShift_~tmp___4~2#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~ret103#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;havoc getCurrentHeading_~retValue_acc~14#1;getCurrentHeading_~retValue_acc~14#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~14#1; 1400496#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret103#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~14#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret103#1;havoc __utac_acc__Specification13_spec__1_#t~ret103#1; 1397516#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret103#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~22#1;havoc stopRequestedAtCurrentFloor_~tmp~17#1;havoc stopRequestedAtCurrentFloor_~tmp___0~5#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 1397517#L2140 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;havoc getCurrentFloorID_~retValue_acc~11#1;getCurrentFloorID_~retValue_acc~11#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~11#1; 1397229#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret45#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~11#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~17#1 := stopRequestedAtCurrentFloor_#t~ret45#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~17#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~13#1; 1397230#L1476 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~13#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~13#1; 1394668#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret46#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~13#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~5#1 := stopRequestedAtCurrentFloor_#t~ret46#1;havoc stopRequestedAtCurrentFloor_#t~ret46#1;stopRequestedAtCurrentFloor_~retValue_acc~22#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~5#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~22#1; 1391801#stopRequestedAtCurrentFloor_returnLabel#1 timeShift_#t~ret60#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret45#1, stopRequestedAtCurrentFloor_#t~ret46#1, stopRequestedAtCurrentFloor_#t~ret47#1, stopRequestedAtCurrentFloor_~retValue_acc~22#1, stopRequestedAtCurrentFloor_~tmp~17#1, stopRequestedAtCurrentFloor_~tmp___0~5#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift_~tmp___9~2#1 := timeShift_#t~ret60#1;havoc timeShift_#t~ret60#1; 1391802#L2290 assume !(0 != timeShift_~tmp___9~2#1); 1394370#L2381 assume 1 == ~doorState~0;~doorState~0 := 0; 1394371#L2381-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~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~19#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~14#1;havoc stopRequestedInDirection_~__cil_tmp8~0#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~0#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~0#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~0#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~0#1 / 3 else stopRequestedInDirection_~__cil_tmp8~0#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1; 1399032#L2043 assume !(0 != ~floorButtons_0~0); 1398984#L2047 assume !(0 != ~floorButtons_1~0); 1398985#L2051 assume !(0 != ~floorButtons_2~0); 1394431#L2055 assume !(0 != ~floorButtons_3~0); 1394191#L2059 assume !(0 != ~floorButtons_4~0);isAnyLiftButtonPressed_~retValue_acc~20#1 := 0;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~20#1; 1394192#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret38#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~20#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~14#1 := stopRequestedInDirection_#t~ret38#1;havoc stopRequestedInDirection_#t~ret38#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~14#1; 1397188#L2016 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;stopRequestedInDirection__wrappee__weight_~dir#1 := stopRequestedInDirection__wrappee__weight_#in~dir#1;stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1;havoc stopRequestedInDirection__wrappee__weight_~tmp~13#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___0~3#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___1~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___2~2#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___3~1#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__weight_~tmp___9~0#1; 1395469#L1663-2 assume 1 == stopRequestedInDirection__wrappee__weight_~dir#1;assume { :begin_inline_isTopFloor } true;isTopFloor_#in~floorID#1 := ~currentFloorID~0;havoc isTopFloor_#res#1;havoc isTopFloor_~floorID#1, isTopFloor_~retValue_acc~2#1;isTopFloor_~floorID#1 := isTopFloor_#in~floorID#1;havoc isTopFloor_~retValue_acc~2#1;isTopFloor_~retValue_acc~2#1 := (if 4 == isTopFloor_~floorID#1 then 1 else 0);isTopFloor_#res#1 := isTopFloor_~retValue_acc~2#1; 1395470#isTopFloor_returnLabel#3 stopRequestedInDirection__wrappee__weight_#t~ret27#1 := isTopFloor_#res#1;havoc isTopFloor_~floorID#1, isTopFloor_~retValue_acc~2#1;havoc isTopFloor_#in~floorID#1;assume { :end_inline_isTopFloor } true;stopRequestedInDirection__wrappee__weight_~tmp~13#1 := stopRequestedInDirection__wrappee__weight_#t~ret27#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1; 1399320#L1667-2 assume !(0 != stopRequestedInDirection__wrappee__weight_~tmp~13#1); 1399321#L1673-2 assume ~currentFloorID~0 < 0; 1397020#L1674-2 assume 0 != stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1;assume { :begin_inline_isFloorCalling } true;isFloorCalling_#in~floorID#1 := 0;havoc isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~0#1;isFloorCalling_~floorID#1 := isFloorCalling_#in~floorID#1;havoc isFloorCalling_~retValue_acc~0#1; 1397021#L138-21 assume 0 == isFloorCalling_~floorID#1;isFloorCalling_~retValue_acc~0#1 := ~calls_0~0;isFloorCalling_#res#1 := isFloorCalling_~retValue_acc~0#1; 1395574#isFloorCalling_returnLabel#22 stopRequestedInDirection__wrappee__weight_#t~ret28#1 := isFloorCalling_#res#1;havoc isFloorCalling_~floorID#1, isFloorCalling_~retValue_acc~0#1;havoc isFloorCalling_#in~floorID#1;assume { :end_inline_isFloorCalling } true;stopRequestedInDirection__wrappee__weight_~tmp___4~0#1 := stopRequestedInDirection__wrappee__weight_#t~ret28#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret28#1; 1399813#L1678-2 assume 0 != stopRequestedInDirection__wrappee__weight_~tmp___4~0#1;stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1 := 1;stopRequestedInDirection__wrappee__weight_#res#1 := stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1; 1392251#stopRequestedInDirection__wrappee__weight_returnLabel#3 stopRequestedInDirection_#t~ret41#1 := stopRequestedInDirection__wrappee__weight_#res#1;havoc stopRequestedInDirection__wrappee__weight_#t~ret27#1, stopRequestedInDirection__wrappee__weight_#t~ret28#1, stopRequestedInDirection__wrappee__weight_#t~ret29#1, stopRequestedInDirection__wrappee__weight_#t~ret30#1, stopRequestedInDirection__wrappee__weight_#t~ret31#1, stopRequestedInDirection__wrappee__weight_#t~ret32#1, stopRequestedInDirection__wrappee__weight_#t~ret33#1, stopRequestedInDirection__wrappee__weight_#t~ret34#1, stopRequestedInDirection__wrappee__weight_#t~ret35#1, stopRequestedInDirection__wrappee__weight_#t~ret36#1, stopRequestedInDirection__wrappee__weight_#t~ret37#1, stopRequestedInDirection__wrappee__weight_~dir#1, stopRequestedInDirection__wrappee__weight_~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__weight_~retValue_acc~18#1, stopRequestedInDirection__wrappee__weight_~tmp~13#1, stopRequestedInDirection__wrappee__weight_~tmp___0~3#1, stopRequestedInDirection__wrappee__weight_~tmp___1~2#1, stopRequestedInDirection__wrappee__weight_~tmp___2~2#1, stopRequestedInDirection__wrappee__weight_~tmp___3~1#1, stopRequestedInDirection__wrappee__weight_~tmp___4~0#1, stopRequestedInDirection__wrappee__weight_~tmp___5~0#1, stopRequestedInDirection__wrappee__weight_~tmp___6~0#1, stopRequestedInDirection__wrappee__weight_~tmp___7~0#1, stopRequestedInDirection__wrappee__weight_~tmp___8~0#1, stopRequestedInDirection__wrappee__weight_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__weight_#in~dir#1, stopRequestedInDirection__wrappee__weight_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__weight_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__weight } true;stopRequestedInDirection_~retValue_acc~19#1 := stopRequestedInDirection_#t~ret41#1;havoc stopRequestedInDirection_#t~ret41#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~19#1; 1401574#stopRequestedInDirection_returnLabel#1 timeShift_#t~ret67#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret38#1, stopRequestedInDirection_#t~ret39#1, stopRequestedInDirection_#t~ret40#1, stopRequestedInDirection_#t~ret41#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~19#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~14#1, stopRequestedInDirection_~__cil_tmp8~0#1, stopRequestedInDirection_~__cil_tmp9~0#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~ret67#1;havoc timeShift_#t~ret67#1; 1401573#L2389 assume 0 != timeShift_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~15#1;~currentHeading~0 := continueInDirection_~dir#1; 1400306#L2078 assume 1 == ~currentHeading~0;assume { :begin_inline_isTopFloor } true;isTopFloor_#in~floorID#1 := ~currentFloorID~0;havoc isTopFloor_#res#1;havoc isTopFloor_~floorID#1, isTopFloor_~retValue_acc~2#1;isTopFloor_~floorID#1 := isTopFloor_#in~floorID#1;havoc isTopFloor_~retValue_acc~2#1;isTopFloor_~retValue_acc~2#1 := (if 4 == isTopFloor_~floorID#1 then 1 else 0);isTopFloor_#res#1 := isTopFloor_~retValue_acc~2#1; 1400307#isTopFloor_returnLabel#4 continueInDirection_#t~ret42#1 := isTopFloor_#res#1;havoc isTopFloor_~floorID#1, isTopFloor_~retValue_acc~2#1;havoc isTopFloor_#in~floorID#1;assume { :end_inline_isTopFloor } true;continueInDirection_~tmp~15#1 := continueInDirection_#t~ret42#1;havoc continueInDirection_#t~ret42#1; 1398582#L2082 assume 0 != continueInDirection_~tmp~15#1;~currentHeading~0 := 0; 1398583#L2088-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 1401411#L2094-1 havoc continueInDirection_#t~ret42#1, continueInDirection_~dir#1, continueInDirection_~tmp~15#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 1401389#L2398-2 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret104#1, __utac_acc__Specification13_spec__2_#t~ret105#1, __utac_acc__Specification13_spec__2_#t~ret106#1, __utac_acc__Specification13_spec__2_#t~ret107#1, __utac_acc__Specification13_spec__2_#t~ret108#1, __utac_acc__Specification13_spec__2_#t~ret109#1, __utac_acc__Specification13_spec__2_~tmp~23#1, __utac_acc__Specification13_spec__2_~tmp___0~11#1, __utac_acc__Specification13_spec__2_~tmp___1~8#1, __utac_acc__Specification13_spec__2_~tmp___2~6#1, __utac_acc__Specification13_spec__2_~tmp___3~5#1, __utac_acc__Specification13_spec__2_~tmp___4~3#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;havoc __utac_acc__Specification13_spec__2_~tmp~23#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~11#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~8#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~6#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~5#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~3#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~2#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~1#1 / 3); 1401382#L2887 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~2#1; 1401383#L2888 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~24#1, existInLiftCallsInDirection_~i~1#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~24#1;havoc existInLiftCallsInDirection_~i~1#1;havoc existInLiftCallsInDirection_~i___0~0#1; 1401388#L2593 assume !(1 == existInLiftCallsInDirection_~d#1); 1401437#L2659 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 1401438#L2663-2 [2024-11-23 02:39:41,917 INFO L747 eck$LassoCheckResult]: Loop: 1401438#L2663-2 assume !false; 1401441#L2664 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 1401442#L2665 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 1401525#L2672-2 assume !false; 1401523#L2673 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 1401520#L2731 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 1401438#L2663-2 [2024-11-23 02:39:41,917 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:41,917 INFO L85 PathProgramCache]: Analyzing trace with hash -1924558822, now seen corresponding path program 1 times [2024-11-23 02:39:41,917 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:41,917 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [971588578] [2024-11-23 02:39:41,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:39:41,917 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:41,974 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:39:42,072 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-23 02:39:42,072 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:39:42,072 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [971588578] [2024-11-23 02:39:42,072 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [971588578] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:39:42,072 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:39:42,072 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-23 02:39:42,072 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1889680717] [2024-11-23 02:39:42,072 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:39:42,072 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:39:42,073 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:39:42,073 INFO L85 PathProgramCache]: Analyzing trace with hash 964799947, now seen corresponding path program 15 times [2024-11-23 02:39:42,073 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:39:42,073 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1192583692] [2024-11-23 02:39:42,073 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:39:42,073 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:39:42,080 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-23 02:39:42,081 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:39:42,081 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:39:42,082 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:39:42,085 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:39:42,100 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:39:42,100 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-23 02:39:42,101 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-23 02:39:42,101 INFO L87 Difference]: Start difference. First operand 213538 states and 391430 transitions. cyclomatic complexity: 178831 Second operand has 3 states, 3 states have (on average 26.333333333333332) internal successors, (79), 2 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-23 02:39:45,461 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:39:45,461 INFO L93 Difference]: Finished difference Result 296160 states and 536044 transitions. [2024-11-23 02:39:45,461 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 296160 states and 536044 transitions.