./Ultimate.py --spec ../../sv-benchmarks/c/properties/termination.prp --file ../../sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version e7bb482b Calling Ultimate with: /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Dosgi.configuration.area=/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/data/config -Xmx15G -Xms4m -jar /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/data -tc /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/config/AutomizerTermination.xml -i ../../sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c -s /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/config/svcomp-Termination-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(F end) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash d84130cab59568fb669543ac086f4847eedfc87145b3c30d32e19c1d0d03b42f --- Real Ultimate output --- This is Ultimate 0.2.3-dev-e7bb482 [2023-11-06 22:40:43,215 INFO L188 SettingsManager]: Resetting all preferences to default values... [2023-11-06 22:40:43,326 INFO L114 SettingsManager]: Loading settings from /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/config/svcomp-Termination-32bit-Automizer_Default.epf [2023-11-06 22:40:43,337 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2023-11-06 22:40:43,340 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2023-11-06 22:40:43,378 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2023-11-06 22:40:43,379 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2023-11-06 22:40:43,380 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2023-11-06 22:40:43,382 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-11-06 22:40:43,387 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2023-11-06 22:40:43,388 INFO L153 SettingsManager]: * Use SBE=true [2023-11-06 22:40:43,389 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2023-11-06 22:40:43,389 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2023-11-06 22:40:43,391 INFO L153 SettingsManager]: * Use old map elimination=false [2023-11-06 22:40:43,392 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2023-11-06 22:40:43,392 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2023-11-06 22:40:43,393 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2023-11-06 22:40:43,394 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-11-06 22:40:43,394 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2023-11-06 22:40:43,395 INFO L153 SettingsManager]: * sizeof long=4 [2023-11-06 22:40:43,395 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2023-11-06 22:40:43,396 INFO L153 SettingsManager]: * sizeof POINTER=4 [2023-11-06 22:40:43,397 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2023-11-06 22:40:43,397 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2023-11-06 22:40:43,398 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2023-11-06 22:40:43,398 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2023-11-06 22:40:43,399 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2023-11-06 22:40:43,399 INFO L153 SettingsManager]: * sizeof long double=12 [2023-11-06 22:40:43,400 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2023-11-06 22:40:43,400 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2023-11-06 22:40:43,402 INFO L153 SettingsManager]: * Use constant arrays=true [2023-11-06 22:40:43,402 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-11-06 22:40:43,402 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2023-11-06 22:40:43,403 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-11-06 22:40:43,403 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2023-11-06 22:40:43,403 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2023-11-06 22:40:43,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:/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/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 -> /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(F end) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> d84130cab59568fb669543ac086f4847eedfc87145b3c30d32e19c1d0d03b42f [2023-11-06 22:40:43,714 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-11-06 22:40:43,748 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-11-06 22:40:43,751 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-11-06 22:40:43,753 INFO L270 PluginConnector]: Initializing CDTParser... [2023-11-06 22:40:43,756 INFO L274 PluginConnector]: CDTParser initialized [2023-11-06 22:40:43,758 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/../../sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c [2023-11-06 22:40:47,008 INFO L533 CDTParser]: Created temporary CDT project at NULL [2023-11-06 22:40:47,395 INFO L384 CDTParser]: Found 1 translation units. [2023-11-06 22:40:47,395 INFO L180 CDTParser]: Scanning /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/sv-benchmarks/c/product-lines/elevator_spec13_product30.cil.c [2023-11-06 22:40:47,420 INFO L427 CDTParser]: About to delete temporary CDT project at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/data/f35cb898d/9bd6463ecea941e69ee61d9987e34003/FLAGab814268d [2023-11-06 22:40:47,436 INFO L435 CDTParser]: Successfully deleted /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/data/f35cb898d/9bd6463ecea941e69ee61d9987e34003 [2023-11-06 22:40:47,439 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-11-06 22:40:47,441 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2023-11-06 22:40:47,443 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2023-11-06 22:40:47,443 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2023-11-06 22:40:47,454 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2023-11-06 22:40:47,455 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.11 10:40:47" (1/1) ... [2023-11-06 22:40:47,457 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@53cce383 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:47, skipping insertion in model container [2023-11-06 22:40:47,457 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.11 10:40:47" (1/1) ... [2023-11-06 22:40:47,582 INFO L177 MainTranslator]: Built tables and reachable declarations [2023-11-06 22:40:48,238 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-06 22:40:48,269 INFO L202 MainTranslator]: Completed pre-run [2023-11-06 22:40:48,279 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Person.i","") [48] [2023-11-06 22:40:48,281 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Floor.i","") [169] [2023-11-06 22:40:48,282 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Specification13_spec.i","") [837] [2023-11-06 22:40:48,282 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Test.i","") [932] [2023-11-06 22:40:48,282 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"UnitTests.i","") [1290] [2023-11-06 22:40:48,283 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Elevator.i","") [1382] [2023-11-06 22:40:48,283 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"featureselect.i","") [2960] [2023-11-06 22:40:48,283 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"wsllib_check.i","") [2995] [2023-11-06 22:40:48,283 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"scenario.i","") [3004] [2023-11-06 22:40:48,284 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"libacc.i","") [3019] [2023-11-06 22:40:48,418 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-06 22:40:48,451 INFO L206 MainTranslator]: Completed translation [2023-11-06 22:40:48,452 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48 WrapperNode [2023-11-06 22:40:48,452 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2023-11-06 22:40:48,453 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-11-06 22:40:48,453 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-11-06 22:40:48,453 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2023-11-06 22:40:48,460 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:48,493 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:49,530 INFO L138 Inliner]: procedures = 93, calls = 347, calls flagged for inlining = 199, calls inlined = 1885, statements flattened = 66512 [2023-11-06 22:40:49,531 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-11-06 22:40:49,532 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-11-06 22:40:49,532 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-11-06 22:40:49,532 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-11-06 22:40:49,556 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:49,556 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:49,838 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:49,838 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:50,469 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:50,993 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:51,041 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:51,224 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:51,398 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-11-06 22:40:51,399 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-11-06 22:40:51,400 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-11-06 22:40:51,400 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-11-06 22:40:51,401 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (1/1) ... [2023-11-06 22:40:51,408 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:40:51,420 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 [2023-11-06 22:40:51,436 INFO L229 MonitoredProcess]: Starting monitored process 1 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-06 22:40:51,448 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2023-11-06 22:40:51,475 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2023-11-06 22:40:51,475 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2023-11-06 22:40:51,475 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-11-06 22:40:51,475 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-11-06 22:40:51,711 INFO L236 CfgBuilder]: Building ICFG [2023-11-06 22:40:51,713 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2023-11-06 22:41:19,865 INFO L277 CfgBuilder]: Performing block encoding [2023-11-06 22:41:19,966 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-11-06 22:41:19,966 INFO L302 CfgBuilder]: Removed 61 assume(true) statements. [2023-11-06 22:41:19,984 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 06.11 10:41:19 BoogieIcfgContainer [2023-11-06 22:41:19,985 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-11-06 22:41:19,986 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2023-11-06 22:41:19,986 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2023-11-06 22:41:19,990 INFO L274 PluginConnector]: BuchiAutomizer initialized [2023-11-06 22:41:19,991 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-11-06 22:41:19,991 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 06.11 10:40:47" (1/3) ... [2023-11-06 22:41:19,992 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@606a2834 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 06.11 10:41:19, skipping insertion in model container [2023-11-06 22:41:19,992 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-11-06 22:41:19,992 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.11 10:40:48" (2/3) ... [2023-11-06 22:41:19,993 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@606a2834 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 06.11 10:41:19, skipping insertion in model container [2023-11-06 22:41:19,993 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-11-06 22:41:19,993 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 06.11 10:41:19" (3/3) ... [2023-11-06 22:41:19,995 INFO L332 chiAutomizerObserver]: Analyzing ICFG elevator_spec13_product30.cil.c [2023-11-06 22:41:20,332 INFO L303 stractBuchiCegarLoop]: Interprodecural is true [2023-11-06 22:41:20,332 INFO L304 stractBuchiCegarLoop]: Hoare is false [2023-11-06 22:41:20,333 INFO L305 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2023-11-06 22:41:20,333 INFO L306 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2023-11-06 22:41:20,333 INFO L307 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2023-11-06 22:41:20,333 INFO L308 stractBuchiCegarLoop]: Difference is false [2023-11-06 22:41:20,333 INFO L309 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2023-11-06 22:41:20,334 INFO L313 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2023-11-06 22:41:20,402 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 17942 states, 17941 states have (on average 1.8803299704587257) internal successors, (33735), 17941 states have internal predecessors, (33735), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:20,839 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4074 [2023-11-06 22:41:20,840 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:20,840 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:20,852 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] [2023-11-06 22:41:20,852 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2023-11-06 22:41:20,852 INFO L335 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2023-11-06 22:41:20,913 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 17942 states, 17941 states have (on average 1.8803299704587257) internal successors, (33735), 17941 states have internal predecessors, (33735), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:21,200 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4074 [2023-11-06 22:41:21,200 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:21,201 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:21,205 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] [2023-11-06 22:41:21,205 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2023-11-06 22:41:21,224 INFO L748 eck$LassoCheckResult]: Stem: 4669#$Ultimate##0true assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 4386#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 16602#select_helpers_returnLabel#1true assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 16276#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 9632#valid_product_returnLabel#1true main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 9011#L1277true assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 10459#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 2461#L95true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 2418#getOrigin_returnLabel#1true aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 17148#L530true assume 0 == initPersonOnFloor_~floor#1; 11856#L531true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 14404#L638-1true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 13174#L322true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 12614#L334-2true havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 9898#initPersonOnFloor_returnLabel#1true havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 16222#aliceCall_returnLabel#1true havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 89#L95-1true assume 0 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 4;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 9403#getOrigin_returnLabel#2true angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 7044#L530-1true assume 0 == initPersonOnFloor_~floor#1; 13078#L531-2true assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 10115#L638-3true assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 2952#L322-2true assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 4390#L334-5true havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 3106#initPersonOnFloor_returnLabel#2true havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 7396#angelinaCall_returnLabel#1true havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 6809#getCurrentHeading_returnLabel#1true __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 12525#__utac_acc__Specification13_spec__1_returnLabel#1true havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 14232#areDoorsOpen_returnLabel#1true timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 2458#L2587true assume 0 != timeShift_~tmp~24#1; 5500#L2588true assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 17499#L2587-1true assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 5134#L869true assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 3712#L870true assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 12393#L2807true assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~3#1 := 0;existInLiftCallsInDirection_~i~3#1 := 1 + ~currentFloorID~0; 6368#L2811-2true [2023-11-06 22:41:21,225 INFO L750 eck$LassoCheckResult]: Loop: 6368#L2811-2true assume !false; 4977#L2812true assume existInLiftCallsInDirection_~i~3#1 < 5; 523#L2813true assume !(0 == existInLiftCallsInDirection_~i~3#1); 15400#$Ultimate##7112true assume !(1 == existInLiftCallsInDirection_~i~3#1); 15878#$Ultimate##7116true assume !(2 == existInLiftCallsInDirection_~i~3#1); 6474#$Ultimate##7120true assume !(3 == existInLiftCallsInDirection_~i~3#1); 2234#$Ultimate##7124true assume !(4 == existInLiftCallsInDirection_~i~3#1); 1017#L2854-1true existInLiftCallsInDirection_~i~3#1 := 1 + existInLiftCallsInDirection_~i~3#1; 6368#L2811-2true [2023-11-06 22:41:21,233 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:21,234 INFO L85 PathProgramCache]: Analyzing trace with hash -1529622645, now seen corresponding path program 1 times [2023-11-06 22:41:21,246 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:21,247 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1073221803] [2023-11-06 22:41:21,247 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:21,248 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:21,449 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:21,891 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:21,891 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:21,892 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1073221803] [2023-11-06 22:41:21,892 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1073221803] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:21,893 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:21,893 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2023-11-06 22:41:21,895 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [223720209] [2023-11-06 22:41:21,897 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:21,904 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:21,906 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:21,907 INFO L85 PathProgramCache]: Analyzing trace with hash -1374005635, now seen corresponding path program 1 times [2023-11-06 22:41:21,908 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:21,908 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1872688453] [2023-11-06 22:41:21,908 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:21,908 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:21,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:21,922 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:21,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:21,970 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:22,059 INFO L210 LassoAnalysis]: Preferences: [2023-11-06 22:41:22,059 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-11-06 22:41:22,060 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-11-06 22:41:22,060 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-11-06 22:41:22,060 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-11-06 22:41:22,060 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:22,061 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-11-06 22:41:22,061 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-11-06 22:41:22,061 INFO L133 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product30.cil.c_Iteration1_Loop [2023-11-06 22:41:22,061 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-11-06 22:41:22,062 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-11-06 22:41:22,092 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-11-06 22:41:22,196 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-11-06 22:41:22,197 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-11-06 22:41:22,199 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:22,200 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 [2023-11-06 22:41:22,204 INFO L229 MonitoredProcess]: Starting monitored process 2 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-06 22:41:22,222 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-11-06 22:41:22,222 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-11-06 22:41:22,238 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2023-11-06 22:41:22,265 INFO L540 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Forceful destruction successful, exit code 0 [2023-11-06 22:41:22,266 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:22,266 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 [2023-11-06 22:41:22,268 INFO L229 MonitoredProcess]: Starting monitored process 3 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-06 22:41:22,279 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-11-06 22:41:22,279 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-11-06 22:41:22,292 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2023-11-06 22:41:22,355 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-11-06 22:41:22,365 INFO L540 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Forceful destruction successful, exit code 0 [2023-11-06 22:41:22,365 INFO L210 LassoAnalysis]: Preferences: [2023-11-06 22:41:22,365 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-11-06 22:41:22,366 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-11-06 22:41:22,366 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-11-06 22:41:22,366 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-11-06 22:41:22,366 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:22,366 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-11-06 22:41:22,366 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-11-06 22:41:22,366 INFO L133 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product30.cil.c_Iteration1_Loop [2023-11-06 22:41:22,366 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-11-06 22:41:22,367 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-11-06 22:41:22,368 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-11-06 22:41:22,448 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-11-06 22:41:22,453 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-11-06 22:41:22,455 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:22,456 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 [2023-11-06 22:41:22,458 INFO L229 MonitoredProcess]: Starting monitored process 4 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-06 22:41:22,466 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 [2023-11-06 22:41:22,481 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2023-11-06 22:41:22,483 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-11-06 22:41:22,484 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-11-06 22:41:22,484 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-11-06 22:41:22,484 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-11-06 22:41:22,485 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-11-06 22:41:22,487 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-11-06 22:41:22,488 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-11-06 22:41:22,498 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2023-11-06 22:41:22,505 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2023-11-06 22:41:22,506 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2023-11-06 22:41:22,507 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:22,508 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 [2023-11-06 22:41:22,552 INFO L229 MonitoredProcess]: Starting monitored process 5 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-06 22:41:22,554 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2023-11-06 22:41:22,555 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2023-11-06 22:41:22,555 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2023-11-06 22:41:22,556 INFO L513 LassoAnalysis]: Proved termination. [2023-11-06 22:41:22,556 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_existInLiftCallsInDirection_~i~3#1) = -1*ULTIMATE.start_existInLiftCallsInDirection_~i~3#1 Supporting invariants [] [2023-11-06 22:41:22,568 INFO L552 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Ended with exit code 0 [2023-11-06 22:41:22,571 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2023-11-06 22:41:22,610 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:22,906 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:22,910 INFO L262 TraceCheckSpWp]: Trace formula consists of 539 conjuncts, 2 conjunts are in the unsatisfiable core [2023-11-06 22:41:22,916 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-06 22:41:23,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:23,026 WARN L260 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjunts are in the unsatisfiable core [2023-11-06 22:41:23,031 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-06 22:41:23,320 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:23,374 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 [2023-11-06 22:41:23,407 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 17942 states, 17941 states have (on average 1.8803299704587257) internal successors, (33735), 17941 states have internal predecessors, (33735), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:26,130 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 17942 states, 17941 states have (on average 1.8803299704587257) internal successors, (33735), 17941 states have internal predecessors, (33735), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0). Second operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 46774 states and 87886 transitions. Complement of second has 18 states. [2023-11-06 22:41:26,133 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 [2023-11-06 22:41:26,139 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:26,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 60831 transitions. [2023-11-06 22:41:26,232 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 60831 transitions. Stem has 34 letters. Loop has 8 letters. [2023-11-06 22:41:26,237 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-11-06 22:41:26,237 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 60831 transitions. Stem has 42 letters. Loop has 8 letters. [2023-11-06 22:41:26,244 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-11-06 22:41:26,245 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 60831 transitions. Stem has 34 letters. Loop has 16 letters. [2023-11-06 22:41:26,246 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-11-06 22:41:26,248 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 46774 states and 87886 transitions. [2023-11-06 22:41:27,025 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 8066 [2023-11-06 22:41:27,390 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 46774 states to 32281 states and 60573 transitions. [2023-11-06 22:41:27,391 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32251 [2023-11-06 22:41:27,453 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32252 [2023-11-06 22:41:27,454 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32281 states and 60573 transitions. [2023-11-06 22:41:27,457 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:27,458 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32281 states and 60573 transitions. [2023-11-06 22:41:27,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32281 states and 60573 transitions. [2023-11-06 22:41:28,494 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32281 to 32255. [2023-11-06 22:41:28,567 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32255 states, 32255 states have (on average 1.876732289567509) internal successors, (60534), 32254 states have internal predecessors, (60534), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:28,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32255 states to 32255 states and 60534 transitions. [2023-11-06 22:41:28,697 INFO L240 hiAutomatonCegarLoop]: Abstraction has 32255 states and 60534 transitions. [2023-11-06 22:41:28,698 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:28,701 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-06 22:41:28,702 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2023-11-06 22:41:28,704 INFO L87 Difference]: Start difference. First operand 32255 states and 60534 transitions. Second operand has 5 states, 5 states have (on average 6.8) internal successors, (34), 5 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:30,051 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:30,052 INFO L93 Difference]: Finished difference Result 32239 states and 60405 transitions. [2023-11-06 22:41:30,052 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32239 states and 60405 transitions. [2023-11-06 22:41:30,448 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 8050 [2023-11-06 22:41:30,664 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32239 states to 32230 states and 60396 transitions. [2023-11-06 22:41:30,664 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32211 [2023-11-06 22:41:30,726 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32211 [2023-11-06 22:41:30,726 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32230 states and 60396 transitions. [2023-11-06 22:41:30,732 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:30,732 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32230 states and 60396 transitions. [2023-11-06 22:41:30,800 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32230 states and 60396 transitions. [2023-11-06 22:41:31,169 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32230 to 17929. [2023-11-06 22:41:31,196 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17929 states, 17929 states have (on average 1.874003011880194) internal successors, (33599), 17928 states have internal predecessors, (33599), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:31,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17929 states to 17929 states and 33599 transitions. [2023-11-06 22:41:31,465 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17929 states and 33599 transitions. [2023-11-06 22:41:31,480 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-06 22:41:31,481 INFO L428 stractBuchiCegarLoop]: Abstraction has 17929 states and 33599 transitions. [2023-11-06 22:41:31,481 INFO L335 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2023-11-06 22:41:31,481 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17929 states and 33599 transitions. [2023-11-06 22:41:31,577 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4072 [2023-11-06 22:41:31,577 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:31,578 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:31,581 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] [2023-11-06 22:41:31,582 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2023-11-06 22:41:31,583 INFO L748 eck$LassoCheckResult]: Stem: 138470#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 138056#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 138057#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 147172#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 144069#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 143554#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 143555#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 134869#L95 assume !(0 == getOrigin_~person#1); 131170#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 131171#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 134786#L530 assume 0 == initPersonOnFloor_~floor#1; 145626#L531 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 129538#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 146275#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 129791#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 144278#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 144279#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 129627#L95-1 assume !(0 == getOrigin_~person#1); 129628#L99-1 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 130386#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 141604#L530-1 assume 0 == initPersonOnFloor_~floor#1; 141605#L531-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 129914#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 135738#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 130457#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 135987#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 135988#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 141340#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 141341#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 145968#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 134862#L2587 assume 0 != timeShift_~tmp~24#1; 134863#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 136473#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 139158#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 137007#L870 assume !(1 == ~prevDir~0); 137008#L896 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~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 146676#L2807-2 assume 1 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i~3#1 := 0;existInLiftCallsInDirection_~i~3#1 := 1 + ~currentFloorID~0; 141303#L2811-8 [2023-11-06 22:41:31,584 INFO L750 eck$LassoCheckResult]: Loop: 141303#L2811-8 assume !false; 141304#L2812-2 assume existInLiftCallsInDirection_~i~3#1 < 5; 141889#L2813-2 assume !(0 == existInLiftCallsInDirection_~i~3#1); 137275#$Ultimate##7268 assume !(1 == existInLiftCallsInDirection_~i~3#1); 137277#$Ultimate##7272 assume !(2 == existInLiftCallsInDirection_~i~3#1); 140198#$Ultimate##7276 assume !(3 == existInLiftCallsInDirection_~i~3#1); 140199#$Ultimate##7280 assume !(4 == existInLiftCallsInDirection_~i~3#1); 146232#L2854-5 existInLiftCallsInDirection_~i~3#1 := 1 + existInLiftCallsInDirection_~i~3#1; 141303#L2811-8 [2023-11-06 22:41:31,584 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:31,585 INFO L85 PathProgramCache]: Analyzing trace with hash 1898793016, now seen corresponding path program 1 times [2023-11-06 22:41:31,586 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:31,586 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1925670139] [2023-11-06 22:41:31,587 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:31,587 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:31,625 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:31,804 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:31,804 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:31,805 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1925670139] [2023-11-06 22:41:31,806 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1925670139] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:31,806 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:31,806 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-06 22:41:31,806 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1625382797] [2023-11-06 22:41:31,807 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:31,807 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:31,808 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:31,808 INFO L85 PathProgramCache]: Analyzing trace with hash 1728061053, now seen corresponding path program 1 times [2023-11-06 22:41:31,808 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:31,811 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [313297993] [2023-11-06 22:41:31,811 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:31,811 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:31,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:31,823 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:31,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:31,834 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:31,901 INFO L210 LassoAnalysis]: Preferences: [2023-11-06 22:41:31,902 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-11-06 22:41:31,902 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-11-06 22:41:31,902 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-11-06 22:41:31,902 INFO L129 ssoRankerPreferences]: Use exernal solver: true [2023-11-06 22:41:31,902 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:31,903 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-11-06 22:41:31,903 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-11-06 22:41:31,903 INFO L133 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product30.cil.c_Iteration2_Loop [2023-11-06 22:41:31,903 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-11-06 22:41:31,903 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-11-06 22:41:31,905 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-11-06 22:41:31,985 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-11-06 22:41:31,986 INFO L404 LassoAnalysis]: Checking for nontermination... [2023-11-06 22:41:31,986 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:31,986 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 [2023-11-06 22:41:31,988 INFO L229 MonitoredProcess]: Starting monitored process 6 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-06 22:41:31,999 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2023-11-06 22:41:31,999 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-11-06 22:41:32,012 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2023-11-06 22:41:32,028 INFO L540 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Forceful destruction successful, exit code 0 [2023-11-06 22:41:32,028 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:32,028 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 [2023-11-06 22:41:32,030 INFO L229 MonitoredProcess]: Starting monitored process 7 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-06 22:41:32,037 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2023-11-06 22:41:32,038 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2023-11-06 22:41:32,038 INFO L160 nArgumentSynthesizer]: Using integer mode. [2023-11-06 22:41:32,084 INFO L444 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2023-11-06 22:41:32,089 INFO L552 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Ended with exit code 0 [2023-11-06 22:41:32,089 INFO L210 LassoAnalysis]: Preferences: [2023-11-06 22:41:32,089 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2023-11-06 22:41:32,089 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2023-11-06 22:41:32,089 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2023-11-06 22:41:32,090 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2023-11-06 22:41:32,090 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:32,090 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2023-11-06 22:41:32,090 INFO L132 ssoRankerPreferences]: Path of dumped script: [2023-11-06 22:41:32,090 INFO L133 ssoRankerPreferences]: Filename of dumped script: elevator_spec13_product30.cil.c_Iteration2_Loop [2023-11-06 22:41:32,090 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2023-11-06 22:41:32,090 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2023-11-06 22:41:32,092 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2023-11-06 22:41:32,163 INFO L294 LassoAnalysis]: Preprocessing complete. [2023-11-06 22:41:32,164 INFO L490 LassoAnalysis]: Using template 'affine'. [2023-11-06 22:41:32,164 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:32,164 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 [2023-11-06 22:41:32,169 INFO L229 MonitoredProcess]: Starting monitored process 8 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-06 22:41:32,174 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2023-11-06 22:41:32,177 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 [2023-11-06 22:41:32,191 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2023-11-06 22:41:32,192 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2023-11-06 22:41:32,192 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2023-11-06 22:41:32,192 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2023-11-06 22:41:32,192 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2023-11-06 22:41:32,194 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2023-11-06 22:41:32,195 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2023-11-06 22:41:32,212 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2023-11-06 22:41:32,226 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2023-11-06 22:41:32,227 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2023-11-06 22:41:32,227 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-06 22:41:32,227 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 [2023-11-06 22:41:32,235 INFO L229 MonitoredProcess]: Starting monitored process 9 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-06 22:41:32,243 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2023-11-06 22:41:32,244 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2023-11-06 22:41:32,244 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2023-11-06 22:41:32,244 INFO L513 LassoAnalysis]: Proved termination. [2023-11-06 22:41:32,245 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_existInLiftCallsInDirection_~i~3#1) = -1*ULTIMATE.start_existInLiftCallsInDirection_~i~3#1 Supporting invariants [] [2023-11-06 22:41:32,258 INFO L540 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Forceful destruction successful, exit code 0 [2023-11-06 22:41:32,259 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2023-11-06 22:41:32,285 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:32,413 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:32,416 INFO L262 TraceCheckSpWp]: Trace formula consists of 542 conjuncts, 2 conjunts are in the unsatisfiable core [2023-11-06 22:41:32,419 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-06 22:41:32,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:32,510 WARN L260 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 9 conjunts are in the unsatisfiable core [2023-11-06 22:41:32,511 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-06 22:41:32,731 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:32,732 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 [2023-11-06 22:41:32,732 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 17929 states and 33599 transitions. cyclomatic complexity: 15704 Second operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 9 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:33,663 INFO L540 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_7b8377f9-989d-4ce3-912c-904dbc48feee/bin/uautomizer-verify-WvqO1wxjHP/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Forceful destruction successful, exit code 0 [2023-11-06 22:41:34,632 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 17929 states and 33599 transitions. cyclomatic complexity: 15704. Second operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 9 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 32286 states and 60479 transitions. Complement of second has 17 states. [2023-11-06 22:41:34,633 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 [2023-11-06 22:41:34,635 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.0) internal successors, (45), 9 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:34,681 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 33588 transitions. [2023-11-06 22:41:34,681 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 33588 transitions. Stem has 37 letters. Loop has 8 letters. [2023-11-06 22:41:34,683 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-11-06 22:41:34,683 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 33588 transitions. Stem has 45 letters. Loop has 8 letters. [2023-11-06 22:41:34,686 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-11-06 22:41:34,686 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 33588 transitions. Stem has 37 letters. Loop has 16 letters. [2023-11-06 22:41:34,689 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2023-11-06 22:41:34,689 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32286 states and 60479 transitions. [2023-11-06 22:41:34,897 INFO L131 ngComponentsAnalysis]: Automaton has 60 accepting balls. 8064 [2023-11-06 22:41:35,087 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32286 states to 32278 states and 60471 transitions. [2023-11-06 22:41:35,088 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32229 [2023-11-06 22:41:35,120 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32230 [2023-11-06 22:41:35,121 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32278 states and 60471 transitions. [2023-11-06 22:41:35,123 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:35,123 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32278 states and 60471 transitions. [2023-11-06 22:41:35,175 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32278 states and 60471 transitions. [2023-11-06 22:41:35,745 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32278 to 17953. [2023-11-06 22:41:35,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17953 states, 17953 states have (on average 1.8736144376984347) internal successors, (33637), 17952 states have internal predecessors, (33637), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:35,825 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17953 states to 17953 states and 33637 transitions. [2023-11-06 22:41:35,825 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17953 states and 33637 transitions. [2023-11-06 22:41:35,826 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:35,827 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2023-11-06 22:41:35,827 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2023-11-06 22:41:35,827 INFO L87 Difference]: Start difference. First operand 17953 states and 33637 transitions. Second operand has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:37,594 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:37,594 INFO L93 Difference]: Finished difference Result 35830 states and 67110 transitions. [2023-11-06 22:41:37,594 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 35830 states and 67110 transitions. [2023-11-06 22:41:38,033 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 8152 [2023-11-06 22:41:38,219 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 35830 states to 35830 states and 67110 transitions. [2023-11-06 22:41:38,219 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 35754 [2023-11-06 22:41:38,257 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 35754 [2023-11-06 22:41:38,257 INFO L73 IsDeterministic]: Start isDeterministic. Operand 35830 states and 67110 transitions. [2023-11-06 22:41:38,258 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:38,258 INFO L218 hiAutomatonCegarLoop]: Abstraction has 35830 states and 67110 transitions. [2023-11-06 22:41:38,312 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35830 states and 67110 transitions. [2023-11-06 22:41:38,640 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35830 to 17968. [2023-11-06 22:41:38,666 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17968 states, 17968 states have (on average 1.8728851291184327) internal successors, (33652), 17967 states have internal predecessors, (33652), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:38,730 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17968 states to 17968 states and 33652 transitions. [2023-11-06 22:41:38,730 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17968 states and 33652 transitions. [2023-11-06 22:41:38,731 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-06 22:41:38,733 INFO L428 stractBuchiCegarLoop]: Abstraction has 17968 states and 33652 transitions. [2023-11-06 22:41:38,733 INFO L335 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2023-11-06 22:41:38,733 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17968 states and 33652 transitions. [2023-11-06 22:41:38,811 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:38,812 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:38,812 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:38,815 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] [2023-11-06 22:41:38,815 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:41:38,823 INFO L748 eck$LassoCheckResult]: Stem: 242649#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 242235#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 242236#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 251370#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 248256#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 247742#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 247743#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 239046#L95 assume !(0 == getOrigin_~person#1); 235347#L99 assume !(1 == getOrigin_~person#1); 235349#L103 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 238736#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 251520#L530 assume 0 == initPersonOnFloor_~floor#1; 249816#L531 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 233716#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 250468#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 233969#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 248467#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 248468#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 233805#L95-1 assume !(0 == getOrigin_~person#1); 233806#L99-1 assume !(1 == getOrigin_~person#1); 246079#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 234563#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 251516#L530-1 assume 0 == initPersonOnFloor_~floor#1; 250429#L531-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 234092#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 239915#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 234634#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 240164#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 240165#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 245525#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 245526#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 250158#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 239039#L2587 assume 0 != timeShift_~tmp~24#1; 239040#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 240650#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 243337#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 241184#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 241186#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 243396#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 243397#L2877-2 [2023-11-06 22:41:38,825 INFO L750 eck$LassoCheckResult]: Loop: 243397#L2877-2 assume !false; 239869#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 239870#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 238179#L2886-2 assume !false; 238180#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 239120#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 243397#L2877-2 [2023-11-06 22:41:38,826 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:38,826 INFO L85 PathProgramCache]: Analyzing trace with hash 1378400671, now seen corresponding path program 1 times [2023-11-06 22:41:38,826 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:38,827 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [492083165] [2023-11-06 22:41:38,828 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:38,828 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:38,850 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:38,945 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:38,946 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:38,946 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [492083165] [2023-11-06 22:41:38,946 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [492083165] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:38,947 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:38,947 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2023-11-06 22:41:38,947 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1029231383] [2023-11-06 22:41:38,947 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:38,948 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:38,948 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:38,948 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 1 times [2023-11-06 22:41:38,948 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:38,949 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [493885858] [2023-11-06 22:41:38,949 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:38,949 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:38,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:38,954 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:38,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:38,961 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:39,017 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:39,018 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2023-11-06 22:41:39,018 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2023-11-06 22:41:39,018 INFO L87 Difference]: Start difference. First operand 17968 states and 33652 transitions. cyclomatic complexity: 15719 Second operand has 3 states, 3 states have (on average 13.0) internal successors, (39), 3 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:39,763 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:39,763 INFO L93 Difference]: Finished difference Result 17934 states and 33584 transitions. [2023-11-06 22:41:39,763 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17934 states and 33584 transitions. [2023-11-06 22:41:39,862 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:39,942 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17934 states to 17934 states and 33584 transitions. [2023-11-06 22:41:39,942 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17896 [2023-11-06 22:41:39,958 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17896 [2023-11-06 22:41:39,959 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17934 states and 33584 transitions. [2023-11-06 22:41:39,973 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:39,973 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17934 states and 33584 transitions. [2023-11-06 22:41:40,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17934 states and 33584 transitions. [2023-11-06 22:41:40,220 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17934 to 17934. [2023-11-06 22:41:40,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17934 states, 17934 states have (on average 1.8726441396230624) internal successors, (33584), 17933 states have internal predecessors, (33584), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:40,302 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17934 states to 17934 states and 33584 transitions. [2023-11-06 22:41:40,302 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17934 states and 33584 transitions. [2023-11-06 22:41:40,303 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2023-11-06 22:41:40,306 INFO L428 stractBuchiCegarLoop]: Abstraction has 17934 states and 33584 transitions. [2023-11-06 22:41:40,307 INFO L335 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2023-11-06 22:41:40,307 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17934 states and 33584 transitions. [2023-11-06 22:41:40,374 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:40,374 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:40,374 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:40,375 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] [2023-11-06 22:41:40,376 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:41:40,376 INFO L748 eck$LassoCheckResult]: Stem: 278543#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 278129#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 278130#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 287248#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 284146#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 283632#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 283633#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 274946#L95 assume !(0 == getOrigin_~person#1); 271256#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 271257#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 274863#L530 assume !(0 == initPersonOnFloor_~floor#1); 285997#L557 assume !(1 == initPersonOnFloor_~floor#1); 273232#L584 assume !(2 == initPersonOnFloor_~floor#1); 273233#L611 assume 3 == initPersonOnFloor_~floor#1; 284717#L612 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_3~0 := 1; 269624#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 286347#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 269877#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 284356#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 284357#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 269713#L95-1 assume !(0 == getOrigin_~person#1); 269714#L99-1 assume !(1 == getOrigin_~person#1); 281969#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 270469#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 287394#L530-1 assume 0 == initPersonOnFloor_~floor#1; 286310#L531-2 assume 0 == initPersonOnFloor_~person#1;~personOnFloor_0_0~0 := 1; 270000#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 275813#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 270540#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 276062#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 276063#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 281415#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 281416#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 286041#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 274939#L2587 assume 0 != timeShift_~tmp~24#1; 274940#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 276546#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 279229#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 277082#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 277084#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 279288#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 279289#L2877-2 [2023-11-06 22:41:40,376 INFO L750 eck$LassoCheckResult]: Loop: 279289#L2877-2 assume !false; 275767#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 275768#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 274082#L2886-2 assume !false; 274083#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 275022#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 279289#L2877-2 [2023-11-06 22:41:40,377 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:40,377 INFO L85 PathProgramCache]: Analyzing trace with hash 368657234, now seen corresponding path program 1 times [2023-11-06 22:41:40,377 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:40,378 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1771847752] [2023-11-06 22:41:40,378 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:40,378 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:40,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:40,518 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:40,519 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:40,519 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1771847752] [2023-11-06 22:41:40,519 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1771847752] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:40,519 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:40,520 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2023-11-06 22:41:40,520 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [346781037] [2023-11-06 22:41:40,520 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:40,520 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:40,521 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:40,521 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 2 times [2023-11-06 22:41:40,521 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:40,522 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1394310750] [2023-11-06 22:41:40,522 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:40,522 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:40,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:40,527 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:40,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:40,534 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:40,563 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:40,564 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-06 22:41:40,564 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2023-11-06 22:41:40,564 INFO L87 Difference]: Start difference. First operand 17934 states and 33584 transitions. cyclomatic complexity: 15685 Second operand has 5 states, 5 states have (on average 8.2) internal successors, (41), 5 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:41,633 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:41,634 INFO L93 Difference]: Finished difference Result 17942 states and 33591 transitions. [2023-11-06 22:41:41,634 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17942 states and 33591 transitions. [2023-11-06 22:41:41,724 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:41,797 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17942 states to 17942 states and 33591 transitions. [2023-11-06 22:41:41,797 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17904 [2023-11-06 22:41:41,817 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17904 [2023-11-06 22:41:41,817 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17942 states and 33591 transitions. [2023-11-06 22:41:41,838 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:41,839 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17942 states and 33591 transitions. [2023-11-06 22:41:41,874 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17942 states and 33591 transitions. [2023-11-06 22:41:42,461 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17942 to 17934. [2023-11-06 22:41:42,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17934 states, 17934 states have (on average 1.8723095795695328) internal successors, (33578), 17933 states have internal predecessors, (33578), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:42,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17934 states to 17934 states and 33578 transitions. [2023-11-06 22:41:42,570 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17934 states and 33578 transitions. [2023-11-06 22:41:42,571 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-06 22:41:42,573 INFO L428 stractBuchiCegarLoop]: Abstraction has 17934 states and 33578 transitions. [2023-11-06 22:41:42,574 INFO L335 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2023-11-06 22:41:42,574 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17934 states and 33578 transitions. [2023-11-06 22:41:42,675 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:42,675 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:42,675 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:42,678 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] [2023-11-06 22:41:42,678 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:41:42,679 INFO L748 eck$LassoCheckResult]: Stem: 314432#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 314018#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 314019#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 323137#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 320035#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 319521#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 319522#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 310835#L95 assume !(0 == getOrigin_~person#1); 307145#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 307146#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 310752#L530 assume !(0 == initPersonOnFloor_~floor#1); 321886#L557 assume !(1 == initPersonOnFloor_~floor#1); 309121#L584 assume !(2 == initPersonOnFloor_~floor#1); 309122#L611 assume 3 == initPersonOnFloor_~floor#1; 320606#L612 assume !(0 == initPersonOnFloor_~person#1); 320607#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 305513#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 322236#L322 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 305766#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 320245#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 320246#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 305602#L95-1 assume !(0 == getOrigin_~person#1); 305603#L99-1 assume !(1 == getOrigin_~person#1); 317859#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 306358#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 323283#L530-1 assume 0 == initPersonOnFloor_~floor#1; 322199#L531-2 assume !(0 == initPersonOnFloor_~person#1); 322033#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 305889#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 311702#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 306429#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 311951#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 311952#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 317304#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 317305#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 321930#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 310828#L2587 assume 0 != timeShift_~tmp~24#1; 310829#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 312435#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 315118#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 312971#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 312973#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 315177#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 315178#L2877-2 [2023-11-06 22:41:42,679 INFO L750 eck$LassoCheckResult]: Loop: 315178#L2877-2 assume !false; 311658#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 311659#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 309971#L2886-2 assume !false; 309972#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 310911#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 315178#L2877-2 [2023-11-06 22:41:42,680 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:42,680 INFO L85 PathProgramCache]: Analyzing trace with hash 590101782, now seen corresponding path program 1 times [2023-11-06 22:41:42,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:42,681 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1497382634] [2023-11-06 22:41:42,681 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:42,681 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:42,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:42,813 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:42,814 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:42,814 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1497382634] [2023-11-06 22:41:42,814 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1497382634] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:42,815 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:42,815 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-06 22:41:42,815 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2109131396] [2023-11-06 22:41:42,815 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:42,816 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:42,817 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:42,818 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 3 times [2023-11-06 22:41:42,818 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:42,818 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1201255356] [2023-11-06 22:41:42,819 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:42,819 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:42,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:42,826 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:42,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:42,838 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:42,863 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:42,864 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2023-11-06 22:41:42,864 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2023-11-06 22:41:42,864 INFO L87 Difference]: Start difference. First operand 17934 states and 33578 transitions. cyclomatic complexity: 15679 Second operand has 4 states, 4 states have (on average 10.75) internal successors, (43), 4 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:43,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:43,660 INFO L93 Difference]: Finished difference Result 17952 states and 33603 transitions. [2023-11-06 22:41:43,660 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17952 states and 33603 transitions. [2023-11-06 22:41:43,763 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:44,148 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17952 states to 17952 states and 33603 transitions. [2023-11-06 22:41:44,148 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17914 [2023-11-06 22:41:44,180 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17914 [2023-11-06 22:41:44,190 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17952 states and 33603 transitions. [2023-11-06 22:41:44,222 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:44,222 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17952 states and 33603 transitions. [2023-11-06 22:41:44,256 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17952 states and 33603 transitions. [2023-11-06 22:41:44,487 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17952 to 17938. [2023-11-06 22:41:44,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17938 states, 17938 states have (on average 1.8720593154197793) internal successors, (33581), 17937 states have internal predecessors, (33581), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:44,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17938 states to 17938 states and 33581 transitions. [2023-11-06 22:41:44,581 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17938 states and 33581 transitions. [2023-11-06 22:41:44,581 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-06 22:41:44,584 INFO L428 stractBuchiCegarLoop]: Abstraction has 17938 states and 33581 transitions. [2023-11-06 22:41:44,584 INFO L335 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2023-11-06 22:41:44,585 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17938 states and 33581 transitions. [2023-11-06 22:41:44,664 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:44,664 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:44,664 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:44,668 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] [2023-11-06 22:41:44,668 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:41:44,669 INFO L748 eck$LassoCheckResult]: Stem: 350329#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 349915#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 349916#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 359035#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 355932#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 355418#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 355419#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 346730#L95 assume !(0 == getOrigin_~person#1); 343042#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 343043#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 346648#L530 assume !(0 == initPersonOnFloor_~floor#1); 357784#L557 assume !(1 == initPersonOnFloor_~floor#1); 345016#L584 assume !(2 == initPersonOnFloor_~floor#1); 345017#L611 assume 3 == initPersonOnFloor_~floor#1; 356504#L612 assume !(0 == initPersonOnFloor_~person#1); 356505#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 341408#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 358134#L322 assume !(0 == callOnFloor_~floorID#1); 341830#L325 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 341661#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 356142#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 356143#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 341503#L95-1 assume !(0 == getOrigin_~person#1); 341504#L99-1 assume !(1 == getOrigin_~person#1); 353756#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 342253#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 359182#L530-1 assume 0 == initPersonOnFloor_~floor#1; 358097#L531-2 assume !(0 == initPersonOnFloor_~person#1); 357931#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 347622#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 356313#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 342324#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 347847#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 347848#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 353201#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 353202#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 357828#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 346723#L2587 assume 0 != timeShift_~tmp~24#1; 346724#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 348331#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 351015#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 348867#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 348869#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 351074#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 351075#L2877-2 [2023-11-06 22:41:44,670 INFO L750 eck$LassoCheckResult]: Loop: 351075#L2877-2 assume !false; 347553#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 347554#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 345866#L2886-2 assume !false; 345867#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 346806#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 351075#L2877-2 [2023-11-06 22:41:44,670 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:44,670 INFO L85 PathProgramCache]: Analyzing trace with hash -1215423119, now seen corresponding path program 1 times [2023-11-06 22:41:44,671 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:44,671 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1758804587] [2023-11-06 22:41:44,671 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:44,672 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:44,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:44,844 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:44,845 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:44,845 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1758804587] [2023-11-06 22:41:44,845 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1758804587] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:44,845 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:44,846 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-06 22:41:44,846 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [189736749] [2023-11-06 22:41:44,846 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:44,847 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:44,847 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:44,847 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 4 times [2023-11-06 22:41:44,847 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:44,851 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2123604699] [2023-11-06 22:41:44,853 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:44,853 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:44,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:44,858 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:44,861 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:44,867 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:44,895 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:44,896 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2023-11-06 22:41:44,896 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2023-11-06 22:41:44,896 INFO L87 Difference]: Start difference. First operand 17938 states and 33581 transitions. cyclomatic complexity: 15678 Second operand has 4 states, 4 states have (on average 11.0) internal successors, (44), 4 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:45,397 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:45,398 INFO L93 Difference]: Finished difference Result 17956 states and 33604 transitions. [2023-11-06 22:41:45,398 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17956 states and 33604 transitions. [2023-11-06 22:41:45,760 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:45,813 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17956 states to 17956 states and 33604 transitions. [2023-11-06 22:41:45,813 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17918 [2023-11-06 22:41:45,825 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17918 [2023-11-06 22:41:45,826 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17956 states and 33604 transitions. [2023-11-06 22:41:45,848 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:45,849 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17956 states and 33604 transitions. [2023-11-06 22:41:45,884 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17956 states and 33604 transitions. [2023-11-06 22:41:46,110 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17956 to 17944. [2023-11-06 22:41:46,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17944 states, 17944 states have (on average 1.8717119928666963) internal successors, (33586), 17943 states have internal predecessors, (33586), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:46,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17944 states to 17944 states and 33586 transitions. [2023-11-06 22:41:46,201 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17944 states and 33586 transitions. [2023-11-06 22:41:46,202 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-06 22:41:46,202 INFO L428 stractBuchiCegarLoop]: Abstraction has 17944 states and 33586 transitions. [2023-11-06 22:41:46,203 INFO L335 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2023-11-06 22:41:46,203 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17944 states and 33586 transitions. [2023-11-06 22:41:46,281 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:46,282 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:46,282 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:46,283 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] [2023-11-06 22:41:46,283 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:41:46,283 INFO L748 eck$LassoCheckResult]: Stem: 386234#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 385820#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 385821#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 394940#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 391838#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 391324#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 391325#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 382634#L95 assume !(0 == getOrigin_~person#1); 378944#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 378945#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 382552#L530 assume !(0 == initPersonOnFloor_~floor#1); 393689#L557 assume !(1 == initPersonOnFloor_~floor#1); 380918#L584 assume !(2 == initPersonOnFloor_~floor#1); 380919#L611 assume 3 == initPersonOnFloor_~floor#1; 392409#L612 assume !(0 == initPersonOnFloor_~person#1); 392410#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 377311#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 394039#L322 assume !(0 == callOnFloor_~floorID#1); 377733#L325 assume !(1 == callOnFloor_~floorID#1); 377734#L328 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 377564#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 392048#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 392049#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 377406#L95-1 assume !(0 == getOrigin_~person#1); 377407#L99-1 assume !(1 == getOrigin_~person#1); 389662#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 378156#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 395087#L530-1 assume 0 == initPersonOnFloor_~floor#1; 394002#L531-2 assume !(0 == initPersonOnFloor_~person#1); 393836#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 383527#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 395104#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 381791#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 383752#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 383753#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 389107#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 389108#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 393733#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 382627#L2587 assume 0 != timeShift_~tmp~24#1; 382628#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 384236#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 386920#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 384772#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 384774#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 386979#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 386980#L2877-2 [2023-11-06 22:41:46,284 INFO L750 eck$LassoCheckResult]: Loop: 386980#L2877-2 assume !false; 383457#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 383458#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 381769#L2886-2 assume !false; 381770#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 382710#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 386980#L2877-2 [2023-11-06 22:41:46,284 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:46,285 INFO L85 PathProgramCache]: Analyzing trace with hash -1197021167, now seen corresponding path program 1 times [2023-11-06 22:41:46,285 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:46,285 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2053475960] [2023-11-06 22:41:46,285 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:46,286 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:46,307 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:46,413 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:46,414 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:46,414 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2053475960] [2023-11-06 22:41:46,414 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2053475960] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:46,415 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:46,415 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-06 22:41:46,415 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1660651259] [2023-11-06 22:41:46,415 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:46,417 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:46,417 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:46,418 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 5 times [2023-11-06 22:41:46,418 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:46,418 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [528284556] [2023-11-06 22:41:46,418 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:46,419 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:46,426 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:46,426 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:46,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:46,433 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:46,458 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:46,459 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2023-11-06 22:41:46,459 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2023-11-06 22:41:46,459 INFO L87 Difference]: Start difference. First operand 17944 states and 33586 transitions. cyclomatic complexity: 15677 Second operand has 4 states, 4 states have (on average 11.25) internal successors, (45), 4 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:47,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:47,260 INFO L93 Difference]: Finished difference Result 17962 states and 33607 transitions. [2023-11-06 22:41:47,260 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17962 states and 33607 transitions. [2023-11-06 22:41:47,321 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:47,366 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17962 states to 17962 states and 33607 transitions. [2023-11-06 22:41:47,366 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17924 [2023-11-06 22:41:47,375 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17924 [2023-11-06 22:41:47,376 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17962 states and 33607 transitions. [2023-11-06 22:41:47,376 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:47,376 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17962 states and 33607 transitions. [2023-11-06 22:41:47,405 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17962 states and 33607 transitions. [2023-11-06 22:41:47,605 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17962 to 17952. [2023-11-06 22:41:47,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17952 states, 17952 states have (on average 1.871267825311943) internal successors, (33593), 17951 states have internal predecessors, (33593), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:47,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17952 states to 17952 states and 33593 transitions. [2023-11-06 22:41:47,691 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17952 states and 33593 transitions. [2023-11-06 22:41:47,692 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-11-06 22:41:47,694 INFO L428 stractBuchiCegarLoop]: Abstraction has 17952 states and 33593 transitions. [2023-11-06 22:41:47,694 INFO L335 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2023-11-06 22:41:47,694 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17952 states and 33593 transitions. [2023-11-06 22:41:47,752 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:47,752 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:47,752 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:47,753 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] [2023-11-06 22:41:47,753 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:41:47,754 INFO L748 eck$LassoCheckResult]: Stem: 422152#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 421738#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 421739#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 430858#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 427756#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 427242#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 427243#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 418551#L95 assume !(0 == getOrigin_~person#1); 414855#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 414856#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 418468#L530 assume !(0 == initPersonOnFloor_~floor#1); 429607#L557 assume !(1 == initPersonOnFloor_~floor#1); 416834#L584 assume !(2 == initPersonOnFloor_~floor#1); 416835#L611 assume 3 == initPersonOnFloor_~floor#1; 428327#L612 assume !(0 == initPersonOnFloor_~person#1); 428328#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 413226#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 429957#L322 assume !(0 == callOnFloor_~floorID#1); 413648#L325 assume !(1 == callOnFloor_~floorID#1); 413649#L328 assume !(2 == callOnFloor_~floorID#1); 413478#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 413479#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 427966#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 427967#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 413315#L95-1 assume !(0 == getOrigin_~person#1); 413316#L99-1 assume !(1 == getOrigin_~person#1); 425579#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 414071#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 431004#L530-1 assume 0 == initPersonOnFloor_~floor#1; 429920#L531-2 assume !(0 == initPersonOnFloor_~person#1); 429754#L534-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_0~0 := 1; 419444#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 431020#L322-2 assume 0 == callOnFloor_~floorID#1;~calls_0~0 := 1; 421275#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 419669#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 419670#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 425025#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 425026#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 429651#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 418544#L2587 assume 0 != timeShift_~tmp~24#1; 418545#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 420153#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 422838#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 420687#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 420689#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 422897#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 422898#L2877-2 [2023-11-06 22:41:47,754 INFO L750 eck$LassoCheckResult]: Loop: 422898#L2877-2 assume !false; 419372#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 419373#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 417686#L2886-2 assume !false; 417687#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 418625#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 422898#L2877-2 [2023-11-06 22:41:47,754 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:47,755 INFO L85 PathProgramCache]: Analyzing trace with hash -471461620, now seen corresponding path program 1 times [2023-11-06 22:41:47,755 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:47,755 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1925682141] [2023-11-06 22:41:47,755 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:47,755 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:47,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:47,917 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:47,917 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:47,917 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1925682141] [2023-11-06 22:41:47,918 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1925682141] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:47,918 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:47,918 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2023-11-06 22:41:47,918 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1734475951] [2023-11-06 22:41:47,919 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:47,919 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:47,919 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:47,920 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 6 times [2023-11-06 22:41:47,920 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:47,920 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [158256562] [2023-11-06 22:41:47,920 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:47,921 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:47,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:47,927 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:47,930 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:47,935 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:47,960 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:47,961 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-06 22:41:47,961 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2023-11-06 22:41:47,961 INFO L87 Difference]: Start difference. First operand 17952 states and 33593 transitions. cyclomatic complexity: 15676 Second operand has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:49,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:49,089 INFO L93 Difference]: Finished difference Result 25116 states and 47008 transitions. [2023-11-06 22:41:49,090 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 25116 states and 47008 transitions. [2023-11-06 22:41:49,237 INFO L131 ngComponentsAnalysis]: Automaton has 42 accepting balls. 7784 [2023-11-06 22:41:49,340 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 25116 states to 25116 states and 47008 transitions. [2023-11-06 22:41:49,341 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25078 [2023-11-06 22:41:49,361 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25078 [2023-11-06 22:41:49,361 INFO L73 IsDeterministic]: Start isDeterministic. Operand 25116 states and 47008 transitions. [2023-11-06 22:41:49,361 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:49,362 INFO L218 hiAutomatonCegarLoop]: Abstraction has 25116 states and 47008 transitions. [2023-11-06 22:41:49,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25116 states and 47008 transitions. [2023-11-06 22:41:49,640 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25116 to 17938. [2023-11-06 22:41:49,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17938 states, 17938 states have (on average 1.8712788493700525) internal successors, (33567), 17937 states have internal predecessors, (33567), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:49,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17938 states to 17938 states and 33567 transitions. [2023-11-06 22:41:49,715 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17938 states and 33567 transitions. [2023-11-06 22:41:49,715 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-06 22:41:49,716 INFO L428 stractBuchiCegarLoop]: Abstraction has 17938 states and 33567 transitions. [2023-11-06 22:41:49,716 INFO L335 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2023-11-06 22:41:49,716 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17938 states and 33567 transitions. [2023-11-06 22:41:49,784 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:49,784 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:49,784 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:49,785 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] [2023-11-06 22:41:49,786 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:41:49,786 INFO L748 eck$LassoCheckResult]: Stem: 465227#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 464813#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 464814#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 473928#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 470829#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 470314#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 470315#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 461628#L95 assume !(0 == getOrigin_~person#1); 457934#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 457935#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 461545#L530 assume !(0 == initPersonOnFloor_~floor#1); 472680#L557 assume !(1 == initPersonOnFloor_~floor#1); 459913#L584 assume !(2 == initPersonOnFloor_~floor#1); 459914#L611 assume 3 == initPersonOnFloor_~floor#1; 471400#L612 assume !(0 == initPersonOnFloor_~person#1); 471401#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 456307#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 473027#L322 assume !(0 == callOnFloor_~floorID#1); 456729#L325 assume !(1 == callOnFloor_~floorID#1); 456730#L328 assume !(2 == callOnFloor_~floorID#1); 456559#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 456560#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 471038#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 471039#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 456396#L95-1 assume !(0 == getOrigin_~person#1); 456397#L99-1 assume !(1 == getOrigin_~person#1); 468650#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 470626#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 468363#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 468364#L557-1 assume 1 == initPersonOnFloor_~floor#1; 471267#L558-2 assume !(0 == initPersonOnFloor_~person#1); 469812#L561-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_1~0 := 1; 460758#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 474073#L322-2 assume !(0 == callOnFloor_~floorID#1); 474071#L325-2 assume 1 == callOnFloor_~floorID#1;~calls_1~0 := 1; 464350#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 462743#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 462744#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 468099#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 468100#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 472724#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 461621#L2587 assume 0 != timeShift_~tmp~24#1; 461622#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 463227#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 465913#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 463761#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 463763#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 465972#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 465973#L2877-2 [2023-11-06 22:41:49,787 INFO L750 eck$LassoCheckResult]: Loop: 465973#L2877-2 assume !false; 462449#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 462450#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 460764#L2886-2 assume !false; 460765#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 461702#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 465973#L2877-2 [2023-11-06 22:41:49,787 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:49,787 INFO L85 PathProgramCache]: Analyzing trace with hash 1355773026, now seen corresponding path program 1 times [2023-11-06 22:41:49,788 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:49,788 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [16321133] [2023-11-06 22:41:49,788 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:49,788 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:49,812 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:50,213 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:50,213 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:50,214 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [16321133] [2023-11-06 22:41:50,214 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [16321133] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:50,214 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:50,214 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2023-11-06 22:41:50,215 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1494525118] [2023-11-06 22:41:50,215 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:50,215 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:50,216 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:50,216 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 7 times [2023-11-06 22:41:50,216 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:50,217 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [523857319] [2023-11-06 22:41:50,217 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:50,217 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:50,221 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:50,222 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:50,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:50,227 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:50,254 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:50,254 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-11-06 22:41:50,255 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2023-11-06 22:41:50,255 INFO L87 Difference]: Start difference. First operand 17938 states and 33567 transitions. cyclomatic complexity: 15664 Second operand has 5 states, 5 states have (on average 9.6) internal successors, (48), 5 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:51,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:51,070 INFO L93 Difference]: Finished difference Result 25099 states and 46976 transitions. [2023-11-06 22:41:51,070 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 25099 states and 46976 transitions. [2023-11-06 22:41:51,177 INFO L131 ngComponentsAnalysis]: Automaton has 42 accepting balls. 7784 [2023-11-06 22:41:51,259 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 25099 states to 25099 states and 46976 transitions. [2023-11-06 22:41:51,259 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25061 [2023-11-06 22:41:51,279 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25061 [2023-11-06 22:41:51,279 INFO L73 IsDeterministic]: Start isDeterministic. Operand 25099 states and 46976 transitions. [2023-11-06 22:41:51,279 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:51,279 INFO L218 hiAutomatonCegarLoop]: Abstraction has 25099 states and 46976 transitions. [2023-11-06 22:41:51,310 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25099 states and 46976 transitions. [2023-11-06 22:41:51,828 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25099 to 17932. [2023-11-06 22:41:51,845 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17932 states, 17932 states have (on average 1.8711800133838947) internal successors, (33554), 17931 states have internal predecessors, (33554), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:51,897 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17932 states to 17932 states and 33554 transitions. [2023-11-06 22:41:51,897 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17932 states and 33554 transitions. [2023-11-06 22:41:51,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2023-11-06 22:41:51,898 INFO L428 stractBuchiCegarLoop]: Abstraction has 17932 states and 33554 transitions. [2023-11-06 22:41:51,898 INFO L335 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2023-11-06 22:41:51,898 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17932 states and 33554 transitions. [2023-11-06 22:41:51,949 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:51,949 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:51,949 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:51,950 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-06 22:41:51,950 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:41:51,950 INFO L748 eck$LassoCheckResult]: Stem: 508273#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 507859#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 507860#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 516972#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 513873#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 513358#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 513359#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 504675#L95 assume !(0 == getOrigin_~person#1); 500984#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 500985#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 504592#L530 assume !(0 == initPersonOnFloor_~floor#1); 515724#L557 assume !(1 == initPersonOnFloor_~floor#1); 502963#L584 assume !(2 == initPersonOnFloor_~floor#1); 502964#L611 assume 3 == initPersonOnFloor_~floor#1; 514444#L612 assume !(0 == initPersonOnFloor_~person#1); 514445#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 499357#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 516071#L322 assume !(0 == callOnFloor_~floorID#1); 499779#L325 assume !(1 == callOnFloor_~floorID#1); 499780#L328 assume !(2 == callOnFloor_~floorID#1); 499609#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 499610#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 514082#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 514083#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 499446#L95-1 assume !(0 == getOrigin_~person#1); 499447#L99-1 assume !(1 == getOrigin_~person#1); 511696#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 513670#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 511409#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 511410#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 516617#L584-1 assume 2 == initPersonOnFloor_~floor#1; 513725#L585-2 assume !(0 == initPersonOnFloor_~person#1); 509242#L588-2 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_2~0 := 1; 502981#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 517117#L322-2 assume !(0 == callOnFloor_~floorID#1); 517116#L325-2 assume !(1 == callOnFloor_~floorID#1); 517115#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 507396#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 505790#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 505791#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 511145#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 511146#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 515768#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 504668#L2587 assume 0 != timeShift_~tmp~24#1; 504669#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 506273#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 508959#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 506807#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 506809#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 509018#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 509019#L2877-2 [2023-11-06 22:41:51,951 INFO L750 eck$LassoCheckResult]: Loop: 509019#L2877-2 assume !false; 505496#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 505497#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 503811#L2886-2 assume !false; 503812#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 504749#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 509019#L2877-2 [2023-11-06 22:41:51,951 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:51,951 INFO L85 PathProgramCache]: Analyzing trace with hash 1516125827, now seen corresponding path program 1 times [2023-11-06 22:41:51,952 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:51,952 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [674999197] [2023-11-06 22:41:51,952 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:51,952 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:51,974 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:52,064 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:52,064 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:52,064 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [674999197] [2023-11-06 22:41:52,064 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [674999197] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:52,065 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:52,065 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-11-06 22:41:52,065 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1078297451] [2023-11-06 22:41:52,065 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:52,066 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:52,066 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:52,066 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 8 times [2023-11-06 22:41:52,066 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:52,067 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1650960442] [2023-11-06 22:41:52,067 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:52,067 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:52,071 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:52,071 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:52,073 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:52,076 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:52,098 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:52,098 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2023-11-06 22:41:52,099 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2023-11-06 22:41:52,099 INFO L87 Difference]: Start difference. First operand 17932 states and 33554 transitions. cyclomatic complexity: 15657 Second operand has 4 states, 4 states have (on average 12.5) internal successors, (50), 4 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:52,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:52,746 INFO L93 Difference]: Finished difference Result 17941 states and 33557 transitions. [2023-11-06 22:41:52,746 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 17941 states and 33557 transitions. [2023-11-06 22:41:52,824 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:52,884 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 17941 states to 17941 states and 33557 transitions. [2023-11-06 22:41:52,884 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17903 [2023-11-06 22:41:52,901 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17903 [2023-11-06 22:41:52,902 INFO L73 IsDeterministic]: Start isDeterministic. Operand 17941 states and 33557 transitions. [2023-11-06 22:41:52,915 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:52,915 INFO L218 hiAutomatonCegarLoop]: Abstraction has 17941 states and 33557 transitions. [2023-11-06 22:41:52,948 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17941 states and 33557 transitions. [2023-11-06 22:41:53,481 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17941 to 17932. [2023-11-06 22:41:53,498 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17932 states, 17932 states have (on average 1.870733883560116) internal successors, (33546), 17931 states have internal predecessors, (33546), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:53,550 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17932 states to 17932 states and 33546 transitions. [2023-11-06 22:41:53,550 INFO L240 hiAutomatonCegarLoop]: Abstraction has 17932 states and 33546 transitions. [2023-11-06 22:41:53,550 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-11-06 22:41:53,551 INFO L428 stractBuchiCegarLoop]: Abstraction has 17932 states and 33546 transitions. [2023-11-06 22:41:53,551 INFO L335 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2023-11-06 22:41:53,551 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 17932 states and 33546 transitions. [2023-11-06 22:41:53,605 INFO L131 ngComponentsAnalysis]: Automaton has 33 accepting balls. 4076 [2023-11-06 22:41:53,605 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:53,605 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:53,606 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] [2023-11-06 22:41:53,606 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:41:53,606 INFO L748 eck$LassoCheckResult]: Stem: 544153#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 543739#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 543740#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 552851#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 549754#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 549239#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 549240#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 540555#L95 assume !(0 == getOrigin_~person#1); 536867#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 536868#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 540472#L530 assume !(0 == initPersonOnFloor_~floor#1); 551604#L557 assume !(1 == initPersonOnFloor_~floor#1); 538843#L584 assume !(2 == initPersonOnFloor_~floor#1); 538844#L611 assume 3 == initPersonOnFloor_~floor#1; 550324#L612 assume !(0 == initPersonOnFloor_~person#1); 550325#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 535237#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 551951#L322 assume !(0 == callOnFloor_~floorID#1); 535659#L325 assume !(1 == callOnFloor_~floorID#1); 535660#L328 assume !(2 == callOnFloor_~floorID#1); 535489#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 535490#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 549963#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 549964#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 535326#L95-1 assume !(0 == getOrigin_~person#1); 535327#L99-1 assume !(1 == getOrigin_~person#1); 547578#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 549551#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 547290#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 547291#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 552497#L584-1 assume 2 == initPersonOnFloor_~floor#1; 549606#L585-2 assume !(0 == initPersonOnFloor_~person#1); 545124#L588-2 assume !(1 == initPersonOnFloor_~person#1); 545125#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 538863#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 553013#L322-2 assume !(0 == callOnFloor_~floorID#1); 553012#L325-2 assume !(1 == callOnFloor_~floorID#1); 553011#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 543284#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 541670#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 541671#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 547026#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 547027#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 551648#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 540548#L2587 assume 0 != timeShift_~tmp~24#1; 540549#L2588 assume ~weight~0 > ~maximumWeight~0;~blocked~0 := 1; 542153#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 544839#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 542689#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 542691#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 544898#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 544899#L2877-2 [2023-11-06 22:41:53,606 INFO L750 eck$LassoCheckResult]: Loop: 544899#L2877-2 assume !false; 541378#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 541379#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 539691#L2886-2 assume !false; 539692#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 540631#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 544899#L2877-2 [2023-11-06 22:41:53,607 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:53,607 INFO L85 PathProgramCache]: Analyzing trace with hash -1488774646, now seen corresponding path program 1 times [2023-11-06 22:41:53,607 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:53,607 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1481318646] [2023-11-06 22:41:53,607 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:53,607 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:53,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:53,749 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:53,751 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:53,751 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1481318646] [2023-11-06 22:41:53,751 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1481318646] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:53,752 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:53,752 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2023-11-06 22:41:53,752 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1402700336] [2023-11-06 22:41:53,752 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:53,753 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:53,753 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:53,753 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 9 times [2023-11-06 22:41:53,754 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:53,754 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1263640192] [2023-11-06 22:41:53,754 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:53,754 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:53,763 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:53,763 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:53,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:53,769 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:53,793 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:53,794 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2023-11-06 22:41:53,795 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2023-11-06 22:41:53,795 INFO L87 Difference]: Start difference. First operand 17932 states and 33546 transitions. cyclomatic complexity: 15649 Second operand has 3 states, 3 states have (on average 17.0) internal successors, (51), 2 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:54,846 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:54,846 INFO L93 Difference]: Finished difference Result 33446 states and 62726 transitions. [2023-11-06 22:41:54,846 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 33446 states and 62726 transitions. [2023-11-06 22:41:55,422 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 7012 [2023-11-06 22:41:55,561 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 33446 states to 33446 states and 62726 transitions. [2023-11-06 22:41:55,561 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 33370 [2023-11-06 22:41:55,590 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33370 [2023-11-06 22:41:55,590 INFO L73 IsDeterministic]: Start isDeterministic. Operand 33446 states and 62726 transitions. [2023-11-06 22:41:55,593 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:55,593 INFO L218 hiAutomatonCegarLoop]: Abstraction has 33446 states and 62726 transitions. [2023-11-06 22:41:55,638 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33446 states and 62726 transitions. [2023-11-06 22:41:56,005 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33446 to 28434. [2023-11-06 22:41:56,041 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28434 states, 28434 states have (on average 1.8723359358514455) internal successors, (53238), 28433 states have internal predecessors, (53238), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:56,158 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28434 states to 28434 states and 53238 transitions. [2023-11-06 22:41:56,158 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28434 states and 53238 transitions. [2023-11-06 22:41:56,158 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2023-11-06 22:41:56,159 INFO L428 stractBuchiCegarLoop]: Abstraction has 28434 states and 53238 transitions. [2023-11-06 22:41:56,159 INFO L335 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2023-11-06 22:41:56,160 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28434 states and 53238 transitions. [2023-11-06 22:41:56,282 INFO L131 ngComponentsAnalysis]: Automaton has 66 accepting balls. 7012 [2023-11-06 22:41:56,282 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:41:56,282 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:41:56,283 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] [2023-11-06 22:41:56,283 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:41:56,284 INFO L748 eck$LassoCheckResult]: Stem: 595574#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 595159#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 595160#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 604571#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 601259#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 600728#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 600729#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 591944#L95 assume !(0 == getOrigin_~person#1); 588248#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 588249#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 591861#L530 assume !(0 == initPersonOnFloor_~floor#1); 603189#L557 assume !(1 == initPersonOnFloor_~floor#1); 590230#L584 assume !(2 == initPersonOnFloor_~floor#1); 590231#L611 assume 3 == initPersonOnFloor_~floor#1; 601850#L612 assume !(0 == initPersonOnFloor_~person#1); 601851#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 586621#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 603545#L322 assume !(0 == callOnFloor_~floorID#1); 587043#L325 assume !(1 == callOnFloor_~floorID#1); 587044#L328 assume !(2 == callOnFloor_~floorID#1); 586873#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 586874#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 601476#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 601477#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 586710#L95-1 assume !(0 == getOrigin_~person#1); 586711#L99-1 assume !(1 == getOrigin_~person#1); 599034#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 601046#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 598739#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 598740#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 604151#L584-1 assume 2 == initPersonOnFloor_~floor#1; 601102#L585-2 assume !(0 == initPersonOnFloor_~person#1); 596554#L588-2 assume !(1 == initPersonOnFloor_~person#1); 596555#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 590248#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 604768#L322-2 assume !(0 == callOnFloor_~floorID#1); 604767#L325-2 assume !(1 == callOnFloor_~floorID#1); 604766#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 594691#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 593069#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 593070#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 598471#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 598472#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 603233#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 591937#L2587 assume !(0 != timeShift_~tmp~24#1);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__twothirdsfull } true;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp~23#1;havoc timeShift__wrappee__twothirdsfull_~tmp___0~10#1;havoc timeShift__wrappee__twothirdsfull_~tmp___1~7#1;havoc timeShift__wrappee__twothirdsfull_~tmp___2~5#1;havoc timeShift__wrappee__twothirdsfull_~tmp___3~4#1;havoc timeShift__wrappee__twothirdsfull_~tmp___4~3#1;havoc timeShift__wrappee__twothirdsfull_~tmp___5~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___6~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___7~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___8~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~20#1;havoc stopRequestedAtCurrentFloor_~tmp~21#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 591939#L2309-1 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;havoc getCurrentFloorID_~retValue_acc~9#1;getCurrentFloorID_~retValue_acc~9#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~9#1; 593699#getCurrentFloorID_returnLabel#2 stopRequestedAtCurrentFloor_#t~ret58#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~21#1 := stopRequestedAtCurrentFloor_#t~ret58#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~21#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~11#1; 588769#L1645-2 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~11#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~11#1; 588770#buttonForFloorIsPressed_returnLabel#3 stopRequestedAtCurrentFloor_#t~ret59#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1;stopRequestedAtCurrentFloor_~retValue_acc~20#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~8#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~20#1; 599666#stopRequestedAtCurrentFloor_returnLabel#2 timeShift__wrappee__twothirdsfull_#t~ret73#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__twothirdsfull_~tmp___9~2#1 := timeShift__wrappee__twothirdsfull_#t~ret73#1;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1; 602230#L2456-2 assume !(0 != timeShift__wrappee__twothirdsfull_~tmp___9~2#1); 603393#L2547-3 assume !(1 == ~doorState~0); 604599#L2547-5 assume { :begin_inline_stopRequestedInDirection } true;stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1 := ~currentHeading~0, 1, 1;havoc stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~17#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~18#1;havoc stopRequestedInDirection_~__cil_tmp8~1#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~1#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~1#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~1#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~1#1 / 3 else stopRequestedInDirection_~__cil_tmp8~1#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1; 604600#L2212-2 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~18#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~18#1; 595723#isAnyLiftButtonPressed_returnLabel#3 stopRequestedInDirection_#t~ret51#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~18#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~18#1; 596819#L2185-2 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;stopRequestedInDirection__wrappee__empty_~dir#1 := stopRequestedInDirection__wrappee__empty_#in~dir#1;stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~17#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~6#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~5#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___2~3#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___3~2#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___4~1#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___9~0#1; 599214#L1832-8 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 596895#L2001-8 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1; 586813#stopRequestedInDirection__wrappee__empty_returnLabel#9 stopRequestedInDirection_#t~ret54#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection_~retValue_acc~17#1 := stopRequestedInDirection_#t~ret54#1;havoc stopRequestedInDirection_#t~ret54#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~17#1; 589181#stopRequestedInDirection_returnLabel#3 timeShift__wrappee__twothirdsfull_#t~ret80#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__twothirdsfull_~tmp___8~2#1 := timeShift__wrappee__twothirdsfull_#t~ret80#1;havoc timeShift__wrappee__twothirdsfull_#t~ret80#1; 589182#L2555-2 assume 0 != timeShift__wrappee__twothirdsfull_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~19#1;~currentHeading~0 := continueInDirection_~dir#1; 598930#L2247-3 assume !(1 == ~currentHeading~0); 597962#L2257-9 assume 0 == ~currentFloorID~0;~currentHeading~0 := 1; 588827#L2257-11 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 588828#L2263-7 havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 595064#L2564-5 havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__twothirdsfull } true; 593556#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 596266#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 594096#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 594098#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 596325#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 596326#L2877-2 [2023-11-06 22:41:56,285 INFO L750 eck$LassoCheckResult]: Loop: 596326#L2877-2 assume !false; 592772#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 592773#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 591079#L2886-2 assume !false; 591080#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 592018#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 596326#L2877-2 [2023-11-06 22:41:56,286 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:56,286 INFO L85 PathProgramCache]: Analyzing trace with hash 339874181, now seen corresponding path program 1 times [2023-11-06 22:41:56,286 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:56,287 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [915850751] [2023-11-06 22:41:56,287 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:56,287 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:56,322 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:41:56,582 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:41:56,583 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:41:56,583 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [915850751] [2023-11-06 22:41:56,583 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [915850751] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:41:56,583 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:41:56,584 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2023-11-06 22:41:56,584 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1748442732] [2023-11-06 22:41:56,584 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:41:56,584 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:41:56,585 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:41:56,585 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 10 times [2023-11-06 22:41:56,585 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:41:56,586 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1613271556] [2023-11-06 22:41:56,586 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:41:56,586 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:41:56,591 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:56,591 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:41:56,594 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:41:56,598 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:41:56,622 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:41:56,623 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2023-11-06 22:41:56,623 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2023-11-06 22:41:56,623 INFO L87 Difference]: Start difference. First operand 28434 states and 53238 transitions. cyclomatic complexity: 24874 Second operand has 8 states, 8 states have (on average 8.875) internal successors, (71), 7 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:59,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:41:59,198 INFO L93 Difference]: Finished difference Result 47596 states and 87832 transitions. [2023-11-06 22:41:59,198 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 47596 states and 87832 transitions. [2023-11-06 22:41:59,344 INFO L131 ngComponentsAnalysis]: Automaton has 332 accepting balls. 17246 [2023-11-06 22:41:59,463 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 47596 states to 47596 states and 87832 transitions. [2023-11-06 22:41:59,463 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 47482 [2023-11-06 22:41:59,488 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 47482 [2023-11-06 22:41:59,488 INFO L73 IsDeterministic]: Start isDeterministic. Operand 47596 states and 87832 transitions. [2023-11-06 22:41:59,499 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:41:59,499 INFO L218 hiAutomatonCegarLoop]: Abstraction has 47596 states and 87832 transitions. [2023-11-06 22:41:59,544 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47596 states and 87832 transitions. [2023-11-06 22:41:59,879 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47596 to 27491. [2023-11-06 22:41:59,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27491 states, 27491 states have (on average 1.8578443854352333) internal successors, (51074), 27490 states have internal predecessors, (51074), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:41:59,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27491 states to 27491 states and 51074 transitions. [2023-11-06 22:41:59,974 INFO L240 hiAutomatonCegarLoop]: Abstraction has 27491 states and 51074 transitions. [2023-11-06 22:41:59,975 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2023-11-06 22:41:59,975 INFO L428 stractBuchiCegarLoop]: Abstraction has 27491 states and 51074 transitions. [2023-11-06 22:41:59,975 INFO L335 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2023-11-06 22:41:59,976 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 27491 states and 51074 transitions. [2023-11-06 22:42:00,057 INFO L131 ngComponentsAnalysis]: Automaton has 122 accepting balls. 8324 [2023-11-06 22:42:00,057 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:42:00,057 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:42:00,058 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] [2023-11-06 22:42:00,058 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:42:00,059 INFO L748 eck$LassoCheckResult]: Stem: 670954#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 670558#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 670559#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 680134#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 676477#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 675934#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 675935#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 667523#L95 assume !(0 == getOrigin_~person#1); 664159#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 664160#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 667450#L530 assume !(0 == initPersonOnFloor_~floor#1); 678495#L557 assume !(1 == initPersonOnFloor_~floor#1); 665958#L584 assume !(2 == initPersonOnFloor_~floor#1); 665959#L611 assume 3 == initPersonOnFloor_~floor#1; 677093#L612 assume !(0 == initPersonOnFloor_~person#1); 677094#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 662655#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 678914#L322 assume !(0 == callOnFloor_~floorID#1); 663035#L325 assume !(1 == callOnFloor_~floorID#1); 663036#L328 assume !(2 == callOnFloor_~floorID#1); 662885#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 662886#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 676698#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 676699#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 662732#L95-1 assume !(0 == getOrigin_~person#1); 662733#L99-1 assume !(1 == getOrigin_~person#1); 674244#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 676260#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 673957#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 673958#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 679601#L584-1 assume 2 == initPersonOnFloor_~floor#1; 676314#L585-2 assume !(0 == initPersonOnFloor_~person#1); 671875#L588-2 assume !(1 == initPersonOnFloor_~person#1); 671876#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 665972#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 680732#L322-2 assume !(0 == callOnFloor_~floorID#1); 680731#L325-2 assume !(1 == callOnFloor_~floorID#1); 680730#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 670109#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 668577#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 668578#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 673707#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 673708#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 678542#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 667517#L2587 assume 0 != timeShift_~tmp~24#1; 667518#L2588 assume !(~weight~0 > ~maximumWeight~0);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__twothirdsfull } true;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp~23#1;havoc timeShift__wrappee__twothirdsfull_~tmp___0~10#1;havoc timeShift__wrappee__twothirdsfull_~tmp___1~7#1;havoc timeShift__wrappee__twothirdsfull_~tmp___2~5#1;havoc timeShift__wrappee__twothirdsfull_~tmp___3~4#1;havoc timeShift__wrappee__twothirdsfull_~tmp___4~3#1;havoc timeShift__wrappee__twothirdsfull_~tmp___5~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___6~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___7~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___8~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~20#1;havoc stopRequestedAtCurrentFloor_~tmp~21#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 672097#L2309 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;havoc getCurrentFloorID_~retValue_acc~9#1;getCurrentFloorID_~retValue_acc~9#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~9#1; 668693#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret58#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~21#1 := stopRequestedAtCurrentFloor_#t~ret58#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~21#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~11#1; 668694#L1645 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~11#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~11#1; 671240#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret59#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1;stopRequestedAtCurrentFloor_~retValue_acc~20#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~8#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~20#1; 663158#stopRequestedAtCurrentFloor_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret73#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__twothirdsfull_~tmp___9~2#1 := timeShift__wrappee__twothirdsfull_#t~ret73#1;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1; 663159#L2456 assume !(0 != timeShift__wrappee__twothirdsfull_~tmp___9~2#1); 665693#L2547 assume 1 == ~doorState~0;~doorState~0 := 0; 665694#L2547-2 assume { :begin_inline_stopRequestedInDirection } true;stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1 := ~currentHeading~0, 1, 1;havoc stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~17#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~18#1;havoc stopRequestedInDirection_~__cil_tmp8~1#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~1#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~1#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~1#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~1#1 / 3 else stopRequestedInDirection_~__cil_tmp8~1#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1; 680269#L2212 assume 0 != ~floorButtons_0~0;isAnyLiftButtonPressed_~retValue_acc~18#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~18#1; 670906#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret51#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~18#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~18#1; 675824#L2185 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;stopRequestedInDirection__wrappee__empty_~dir#1 := stopRequestedInDirection__wrappee__empty_#in~dir#1;stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~17#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~6#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~5#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___2~3#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___3~2#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___4~1#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___9~0#1; 675825#L1832-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 667742#L2001-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1; 663488#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection_#t~ret54#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection_~retValue_acc~17#1 := stopRequestedInDirection_#t~ret54#1;havoc stopRequestedInDirection_#t~ret54#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~17#1; 663718#stopRequestedInDirection_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret80#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__twothirdsfull_~tmp___8~2#1 := timeShift__wrappee__twothirdsfull_#t~ret80#1;havoc timeShift__wrappee__twothirdsfull_#t~ret80#1; 663558#L2555 assume 0 != timeShift__wrappee__twothirdsfull_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~19#1;~currentHeading~0 := continueInDirection_~dir#1; 663560#L2247 assume !(1 == ~currentHeading~0); 673044#L2257 assume !(0 == ~currentFloorID~0); 670838#L2257-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 670839#L2263-1 havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 673836#L2564-2 havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__twothirdsfull } true; 680551#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 680538#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 680539#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 680550#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 680701#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 680702#L2877-2 [2023-11-06 22:42:00,060 INFO L750 eck$LassoCheckResult]: Loop: 680702#L2877-2 assume !false; 680699#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 680700#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 680712#L2886-2 assume !false; 680709#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 680710#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 680702#L2877-2 [2023-11-06 22:42:00,061 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:42:00,061 INFO L85 PathProgramCache]: Analyzing trace with hash -543451371, now seen corresponding path program 1 times [2023-11-06 22:42:00,061 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:42:00,061 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [241794497] [2023-11-06 22:42:00,062 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:42:00,062 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:42:00,087 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:42:00,135 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:42:00,135 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:42:00,135 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [241794497] [2023-11-06 22:42:00,136 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [241794497] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:42:00,136 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:42:00,136 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2023-11-06 22:42:00,136 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [187070995] [2023-11-06 22:42:00,136 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:42:00,137 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:42:00,137 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:42:00,137 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 11 times [2023-11-06 22:42:00,138 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:42:00,138 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1480588658] [2023-11-06 22:42:00,138 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:42:00,138 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:42:00,142 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:42:00,143 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:42:00,144 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:42:00,148 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:42:00,174 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:42:00,174 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2023-11-06 22:42:00,174 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2023-11-06 22:42:00,175 INFO L87 Difference]: Start difference. First operand 27491 states and 51074 transitions. cyclomatic complexity: 23711 Second operand has 3 states, 3 states have (on average 24.0) internal successors, (72), 2 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:42:01,888 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:42:01,888 INFO L93 Difference]: Finished difference Result 42131 states and 77919 transitions. [2023-11-06 22:42:01,888 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 42131 states and 77919 transitions. [2023-11-06 22:42:02,054 INFO L131 ngComponentsAnalysis]: Automaton has 178 accepting balls. 12854 [2023-11-06 22:42:02,187 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 42131 states to 42131 states and 77919 transitions. [2023-11-06 22:42:02,187 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 41981 [2023-11-06 22:42:02,218 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 41981 [2023-11-06 22:42:02,218 INFO L73 IsDeterministic]: Start isDeterministic. Operand 42131 states and 77919 transitions. [2023-11-06 22:42:02,226 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:42:02,226 INFO L218 hiAutomatonCegarLoop]: Abstraction has 42131 states and 77919 transitions. [2023-11-06 22:42:02,267 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42131 states and 77919 transitions. [2023-11-06 22:42:03,084 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42131 to 42129. [2023-11-06 22:42:03,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42129 states, 42129 states have (on average 1.8494861022098792) internal successors, (77917), 42128 states have internal predecessors, (77917), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:42:03,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42129 states to 42129 states and 77917 transitions. [2023-11-06 22:42:03,243 INFO L240 hiAutomatonCegarLoop]: Abstraction has 42129 states and 77917 transitions. [2023-11-06 22:42:03,244 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2023-11-06 22:42:03,244 INFO L428 stractBuchiCegarLoop]: Abstraction has 42129 states and 77917 transitions. [2023-11-06 22:42:03,244 INFO L335 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2023-11-06 22:42:03,244 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 42129 states and 77917 transitions. [2023-11-06 22:42:03,398 INFO L131 ngComponentsAnalysis]: Automaton has 178 accepting balls. 12854 [2023-11-06 22:42:03,398 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-06 22:42:03,398 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-06 22:42:03,399 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] [2023-11-06 22:42:03,399 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1] [2023-11-06 22:42:03,400 INFO L748 eck$LassoCheckResult]: Stem: 740455#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(32, 2);call #Ultimate.allocInit(12, 3);call #Ultimate.allocInit(10, 4);call #Ultimate.allocInit(4, 5);call write~init~int(91, 5, 0, 1);call write~init~int(95, 5, 1, 1);call write~init~int(93, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(91, 6, 0, 1);call write~init~int(93, 6, 1, 1);call write~init~int(32, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(5, 7);call write~init~int(32, 7, 0, 1);call write~init~int(97, 7, 1, 1);call write~init~int(116, 7, 2, 1);call write~init~int(32, 7, 3, 1);call write~init~int(0, 7, 4, 1);call #Ultimate.allocInit(3, 8);call write~init~int(37, 8, 0, 1);call write~init~int(105, 8, 1, 1);call write~init~int(0, 8, 2, 1);call #Ultimate.allocInit(10, 9);call #Ultimate.allocInit(3, 10);call write~init~int(117, 10, 0, 1);call write~init~int(112, 10, 1, 1);call write~init~int(0, 10, 2, 1);call #Ultimate.allocInit(5, 11);call write~init~int(100, 11, 0, 1);call write~init~int(111, 11, 1, 1);call write~init~int(119, 11, 2, 1);call write~init~int(110, 11, 3, 1);call write~init~int(0, 11, 4, 1);call #Ultimate.allocInit(7, 12);call write~init~int(32, 12, 0, 1);call write~init~int(73, 12, 1, 1);call write~init~int(76, 12, 2, 1);call write~init~int(95, 12, 3, 1);call write~init~int(112, 12, 4, 1);call write~init~int(58, 12, 5, 1);call write~init~int(0, 12, 6, 1);call #Ultimate.allocInit(4, 13);call write~init~int(32, 13, 0, 1);call write~init~int(37, 13, 1, 1);call write~init~int(105, 13, 2, 1);call write~init~int(0, 13, 3, 1);call #Ultimate.allocInit(4, 14);call write~init~int(32, 14, 0, 1);call write~init~int(37, 14, 1, 1);call write~init~int(105, 14, 2, 1);call write~init~int(0, 14, 3, 1);call #Ultimate.allocInit(4, 15);call write~init~int(32, 15, 0, 1);call write~init~int(37, 15, 1, 1);call write~init~int(105, 15, 2, 1);call write~init~int(0, 15, 3, 1);call #Ultimate.allocInit(4, 16);call write~init~int(32, 16, 0, 1);call write~init~int(37, 16, 1, 1);call write~init~int(105, 16, 2, 1);call write~init~int(0, 16, 3, 1);call #Ultimate.allocInit(4, 17);call write~init~int(32, 17, 0, 1);call write~init~int(37, 17, 1, 1);call write~init~int(105, 17, 2, 1);call write~init~int(0, 17, 3, 1);call #Ultimate.allocInit(6, 18);call write~init~int(32, 18, 0, 1);call write~init~int(70, 18, 1, 1);call write~init~int(95, 18, 2, 1);call write~init~int(112, 18, 3, 1);call write~init~int(58, 18, 4, 1);call write~init~int(0, 18, 5, 1);call #Ultimate.allocInit(4, 19);call write~init~int(32, 19, 0, 1);call write~init~int(37, 19, 1, 1);call write~init~int(105, 19, 2, 1);call write~init~int(0, 19, 3, 1);call #Ultimate.allocInit(4, 20);call write~init~int(32, 20, 0, 1);call write~init~int(37, 20, 1, 1);call write~init~int(105, 20, 2, 1);call write~init~int(0, 20, 3, 1);call #Ultimate.allocInit(4, 21);call write~init~int(32, 21, 0, 1);call write~init~int(37, 21, 1, 1);call write~init~int(105, 21, 2, 1);call write~init~int(0, 21, 3, 1);call #Ultimate.allocInit(4, 22);call write~init~int(32, 22, 0, 1);call write~init~int(37, 22, 1, 1);call write~init~int(105, 22, 2, 1);call write~init~int(0, 22, 3, 1);call #Ultimate.allocInit(4, 23);call write~init~int(32, 23, 0, 1);call write~init~int(37, 23, 1, 1);call write~init~int(105, 23, 2, 1);call write~init~int(0, 23, 3, 1);call #Ultimate.allocInit(2, 24);call write~init~int(10, 24, 0, 1);call write~init~int(0, 24, 1, 1);call #Ultimate.allocInit(9, 25);call #Ultimate.allocInit(30, 26);call #Ultimate.allocInit(9, 27);call #Ultimate.allocInit(21, 28);call #Ultimate.allocInit(30, 29);call #Ultimate.allocInit(9, 30);call #Ultimate.allocInit(21, 31);call #Ultimate.allocInit(30, 32);call #Ultimate.allocInit(9, 33);call #Ultimate.allocInit(25, 34);call #Ultimate.allocInit(30, 35);call #Ultimate.allocInit(9, 36);call #Ultimate.allocInit(25, 37);~calls_0~0 := 0;~calls_1~0 := 0;~calls_2~0 := 0;~calls_3~0 := 0;~calls_4~0 := 0;~personOnFloor_0_0~0 := 0;~personOnFloor_0_1~0 := 0;~personOnFloor_0_2~0 := 0;~personOnFloor_0_3~0 := 0;~personOnFloor_0_4~0 := 0;~personOnFloor_1_0~0 := 0;~personOnFloor_1_1~0 := 0;~personOnFloor_1_2~0 := 0;~personOnFloor_1_3~0 := 0;~personOnFloor_1_4~0 := 0;~personOnFloor_2_0~0 := 0;~personOnFloor_2_1~0 := 0;~personOnFloor_2_2~0 := 0;~personOnFloor_2_3~0 := 0;~personOnFloor_2_4~0 := 0;~personOnFloor_3_0~0 := 0;~personOnFloor_3_1~0 := 0;~personOnFloor_3_2~0 := 0;~personOnFloor_3_3~0 := 0;~personOnFloor_3_4~0 := 0;~personOnFloor_4_0~0 := 0;~personOnFloor_4_1~0 := 0;~personOnFloor_4_2~0 := 0;~personOnFloor_4_3~0 := 0;~personOnFloor_4_4~0 := 0;~personOnFloor_5_0~0 := 0;~personOnFloor_5_1~0 := 0;~personOnFloor_5_2~0 := 0;~personOnFloor_5_3~0 := 0;~personOnFloor_5_4~0 := 0;~weight~0 := 0;~maximumWeight~0 := 100;~blocked~0 := 0;~prevDir~0 := 0;~cleanupTimeShifts~0 := 12;~currentHeading~0 := 1;~currentFloorID~0 := 0;~persons_0~0 := 0;~persons_1~0 := 0;~persons_2~0 := 0;~persons_3~0 := 0;~persons_4~0 := 0;~persons_5~0 := 0;~doorState~0 := 1;~floorButtons_0~0 := 0;~floorButtons_1~0 := 0;~floorButtons_2~0 := 0;~floorButtons_3~0 := 0;~floorButtons_4~0 := 0;~head~0.base, ~head~0.offset := 0, 0; 740071#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret24#1, main_~retValue_acc~7#1, main_~tmp~9#1;havoc main_~retValue_acc~7#1;havoc main_~tmp~9#1;assume { :begin_inline_select_helpers } true; 740072#select_helpers_returnLabel#1 assume { :end_inline_select_helpers } true;assume { :begin_inline_select_features } true; 748785#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~24#1;havoc valid_product_~retValue_acc~24#1;valid_product_~retValue_acc~24#1 := 1;valid_product_#res#1 := valid_product_~retValue_acc~24#1; 745671#valid_product_returnLabel#1 main_#t~ret24#1 := valid_product_#res#1;havoc valid_product_~retValue_acc~24#1;assume { :end_inline_valid_product } true;main_~tmp~9#1 := main_#t~ret24#1;havoc main_#t~ret24#1; 745185#L1277 assume 0 != main_~tmp~9#1;assume { :begin_inline_setup } true; 745186#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~ret13#1, aliceCall_~tmp~2#1;havoc aliceCall_~tmp~2#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 1;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 737115#L95 assume !(0 == getOrigin_~person#1); 733777#L99 assume 1 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 3;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 733778#getOrigin_returnLabel#1 aliceCall_#t~ret13#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;aliceCall_~tmp~2#1 := aliceCall_#t~ret13#1;havoc aliceCall_#t~ret13#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 1, aliceCall_~tmp~2#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 737042#L530 assume !(0 == initPersonOnFloor_~floor#1); 747455#L557 assume !(1 == initPersonOnFloor_~floor#1); 735562#L584 assume !(2 == initPersonOnFloor_~floor#1); 735563#L611 assume 3 == initPersonOnFloor_~floor#1; 746225#L612 assume !(0 == initPersonOnFloor_~person#1); 746226#L615 assume 1 == initPersonOnFloor_~person#1;~personOnFloor_1_3~0 := 1; 732283#L638-1 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 747798#L322 assume !(0 == callOnFloor_~floorID#1); 732663#L325 assume !(1 == callOnFloor_~floorID#1); 732664#L328 assume !(2 == callOnFloor_~floorID#1); 732513#L331 assume 3 == callOnFloor_~floorID#1;~calls_3~0 := 1; 732514#L334-2 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 745874#initPersonOnFloor_returnLabel#1 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 745875#aliceCall_returnLabel#1 havoc aliceCall_#t~ret13#1, aliceCall_~tmp~2#1;assume { :end_inline_aliceCall } true;assume { :begin_inline_angelinaCall } true;havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;havoc angelinaCall_~tmp~3#1;assume { :begin_inline_getOrigin } true;getOrigin_#in~person#1 := 2;havoc getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;getOrigin_~person#1 := getOrigin_#in~person#1;havoc getOrigin_~retValue_acc~1#1; 732360#L95-1 assume !(0 == getOrigin_~person#1); 732361#L99-1 assume !(1 == getOrigin_~person#1); 743624#L103-1 assume 2 == getOrigin_~person#1;getOrigin_~retValue_acc~1#1 := 2;getOrigin_#res#1 := getOrigin_~retValue_acc~1#1; 745481#getOrigin_returnLabel#2 angelinaCall_#t~ret14#1 := getOrigin_#res#1;havoc getOrigin_~person#1, getOrigin_~retValue_acc~1#1;havoc getOrigin_#in~person#1;assume { :end_inline_getOrigin } true;angelinaCall_~tmp~3#1 := angelinaCall_#t~ret14#1;havoc angelinaCall_#t~ret14#1;assume { :begin_inline_initPersonOnFloor } true;initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1 := 2, angelinaCall_~tmp~3#1;havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;initPersonOnFloor_~person#1 := initPersonOnFloor_#in~person#1;initPersonOnFloor_~floor#1 := initPersonOnFloor_#in~floor#1; 743354#L530-1 assume !(0 == initPersonOnFloor_~floor#1); 743355#L557-1 assume !(1 == initPersonOnFloor_~floor#1); 748358#L584-1 assume 2 == initPersonOnFloor_~floor#1; 745532#L585-2 assume !(0 == initPersonOnFloor_~person#1); 741355#L588-2 assume !(1 == initPersonOnFloor_~person#1); 741356#L591-2 assume 2 == initPersonOnFloor_~person#1;~personOnFloor_2_2~0 := 1; 735578#L638-3 assume { :begin_inline_callOnFloor } true;callOnFloor_#in~floorID#1 := initPersonOnFloor_~floor#1;havoc callOnFloor_~floorID#1;callOnFloor_~floorID#1 := callOnFloor_#in~floorID#1; 749201#L322-2 assume !(0 == callOnFloor_~floorID#1); 749200#L325-2 assume !(1 == callOnFloor_~floorID#1); 749199#L328-2 assume 2 == callOnFloor_~floorID#1;~calls_2~0 := 1; 739632#L334-5 havoc callOnFloor_~floorID#1;havoc callOnFloor_#in~floorID#1;assume { :end_inline_callOnFloor } true; 738143#initPersonOnFloor_returnLabel#2 havoc initPersonOnFloor_~person#1, initPersonOnFloor_~floor#1;havoc initPersonOnFloor_#in~person#1, initPersonOnFloor_#in~floor#1;assume { :end_inline_initPersonOnFloor } true; 738144#angelinaCall_returnLabel#1 havoc angelinaCall_#t~ret14#1, angelinaCall_~tmp~3#1;assume { :end_inline_angelinaCall } true;assume { :begin_inline_threeTS } true;assume { :begin_inline_timeShift } true;havoc timeShift_#t~ret84#1, timeShift_~tmp~24#1;havoc timeShift_~tmp~24#1;assume { :begin_inline___utac_acc__Specification13_spec__1 } true;havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :begin_inline_getCurrentHeading } true;havoc getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;havoc getCurrentHeading_~retValue_acc~12#1;getCurrentHeading_~retValue_acc~12#1 := ~currentHeading~0;getCurrentHeading_#res#1 := getCurrentHeading_~retValue_acc~12#1; 743114#getCurrentHeading_returnLabel#1 __utac_acc__Specification13_spec__1_#t~ret4#1 := getCurrentHeading_#res#1;havoc getCurrentHeading_~retValue_acc~12#1;assume { :end_inline_getCurrentHeading } true;~prevDir~0 := __utac_acc__Specification13_spec__1_#t~ret4#1;havoc __utac_acc__Specification13_spec__1_#t~ret4#1; 743115#__utac_acc__Specification13_spec__1_returnLabel#1 havoc __utac_acc__Specification13_spec__1_#t~ret4#1;assume { :end_inline___utac_acc__Specification13_spec__1 } true;assume { :begin_inline_areDoorsOpen } true;havoc areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;havoc areDoorsOpen_~retValue_acc~10#1;areDoorsOpen_~retValue_acc~10#1 := ~doorState~0;areDoorsOpen_#res#1 := areDoorsOpen_~retValue_acc~10#1; 747497#areDoorsOpen_returnLabel#1 timeShift_#t~ret84#1 := areDoorsOpen_#res#1;havoc areDoorsOpen_~retValue_acc~10#1;assume { :end_inline_areDoorsOpen } true;timeShift_~tmp~24#1 := timeShift_#t~ret84#1;havoc timeShift_#t~ret84#1; 737109#L2587 assume 0 != timeShift_~tmp~24#1; 737110#L2588 assume !(~weight~0 > ~maximumWeight~0);~blocked~0 := 0;assume { :begin_inline_timeShift__wrappee__twothirdsfull } true;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp~23#1;havoc timeShift__wrappee__twothirdsfull_~tmp___0~10#1;havoc timeShift__wrappee__twothirdsfull_~tmp___1~7#1;havoc timeShift__wrappee__twothirdsfull_~tmp___2~5#1;havoc timeShift__wrappee__twothirdsfull_~tmp___3~4#1;havoc timeShift__wrappee__twothirdsfull_~tmp___4~3#1;havoc timeShift__wrappee__twothirdsfull_~tmp___5~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___6~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___7~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___8~2#1;havoc timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :begin_inline_stopRequestedAtCurrentFloor } true;havoc stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;havoc stopRequestedAtCurrentFloor_~retValue_acc~20#1;havoc stopRequestedAtCurrentFloor_~tmp~21#1;havoc stopRequestedAtCurrentFloor_~tmp___0~8#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp4~1#1;havoc stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 := 2 * ~maximumWeight~0;stopRequestedAtCurrentFloor_~__cil_tmp5~0#1 := (if stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 < 0 && 0 != stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 % 3 then 1 + stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3 else stopRequestedAtCurrentFloor_~__cil_tmp4~1#1 / 3); 741570#L2309 assume ~weight~0 > stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :begin_inline_getCurrentFloorID } true;havoc getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;havoc getCurrentFloorID_~retValue_acc~9#1;getCurrentFloorID_~retValue_acc~9#1 := ~currentFloorID~0;getCurrentFloorID_#res#1 := getCurrentFloorID_~retValue_acc~9#1; 738252#getCurrentFloorID_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret58#1 := getCurrentFloorID_#res#1;havoc getCurrentFloorID_~retValue_acc~9#1;assume { :end_inline_getCurrentFloorID } true;stopRequestedAtCurrentFloor_~tmp~21#1 := stopRequestedAtCurrentFloor_#t~ret58#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1;assume { :begin_inline_buttonForFloorIsPressed } true;buttonForFloorIsPressed_#in~floorID#1 := stopRequestedAtCurrentFloor_~tmp~21#1;havoc buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;buttonForFloorIsPressed_~floorID#1 := buttonForFloorIsPressed_#in~floorID#1;havoc buttonForFloorIsPressed_~retValue_acc~11#1; 738253#L1645 assume 0 == buttonForFloorIsPressed_~floorID#1;buttonForFloorIsPressed_~retValue_acc~11#1 := ~floorButtons_0~0;buttonForFloorIsPressed_#res#1 := buttonForFloorIsPressed_~retValue_acc~11#1; 740737#buttonForFloorIsPressed_returnLabel#1 stopRequestedAtCurrentFloor_#t~ret59#1 := buttonForFloorIsPressed_#res#1;havoc buttonForFloorIsPressed_~floorID#1, buttonForFloorIsPressed_~retValue_acc~11#1;havoc buttonForFloorIsPressed_#in~floorID#1;assume { :end_inline_buttonForFloorIsPressed } true;stopRequestedAtCurrentFloor_~tmp___0~8#1 := stopRequestedAtCurrentFloor_#t~ret59#1;havoc stopRequestedAtCurrentFloor_#t~ret59#1;stopRequestedAtCurrentFloor_~retValue_acc~20#1 := (if 1 == stopRequestedAtCurrentFloor_~tmp___0~8#1 then 1 else 0);stopRequestedAtCurrentFloor_#res#1 := stopRequestedAtCurrentFloor_~retValue_acc~20#1; 732785#stopRequestedAtCurrentFloor_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret73#1 := stopRequestedAtCurrentFloor_#res#1;havoc stopRequestedAtCurrentFloor_#t~ret58#1, stopRequestedAtCurrentFloor_#t~ret59#1, stopRequestedAtCurrentFloor_#t~ret60#1, stopRequestedAtCurrentFloor_~retValue_acc~20#1, stopRequestedAtCurrentFloor_~tmp~21#1, stopRequestedAtCurrentFloor_~tmp___0~8#1, stopRequestedAtCurrentFloor_~__cil_tmp4~1#1, stopRequestedAtCurrentFloor_~__cil_tmp5~0#1;assume { :end_inline_stopRequestedAtCurrentFloor } true;timeShift__wrappee__twothirdsfull_~tmp___9~2#1 := timeShift__wrappee__twothirdsfull_#t~ret73#1;havoc timeShift__wrappee__twothirdsfull_#t~ret73#1; 732786#L2456 assume !(0 != timeShift__wrappee__twothirdsfull_~tmp___9~2#1); 735299#L2547 assume 1 == ~doorState~0;~doorState~0 := 0; 735300#L2547-2 assume { :begin_inline_stopRequestedInDirection } true;stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1 := ~currentHeading~0, 1, 1;havoc stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~dir#1 := stopRequestedInDirection_#in~dir#1;stopRequestedInDirection_~respectFloorCalls#1 := stopRequestedInDirection_#in~respectFloorCalls#1;stopRequestedInDirection_~respectInLiftCalls#1 := stopRequestedInDirection_#in~respectInLiftCalls#1;havoc stopRequestedInDirection_~retValue_acc~17#1;havoc stopRequestedInDirection_~overload~0#1;havoc stopRequestedInDirection_~buttonPressed~0#1;havoc stopRequestedInDirection_~tmp~18#1;havoc stopRequestedInDirection_~__cil_tmp8~1#1;havoc stopRequestedInDirection_~__cil_tmp9~0#1;stopRequestedInDirection_~__cil_tmp8~1#1 := 2 * ~maximumWeight~0;stopRequestedInDirection_~__cil_tmp9~0#1 := (if stopRequestedInDirection_~__cil_tmp8~1#1 < 0 && 0 != stopRequestedInDirection_~__cil_tmp8~1#1 % 3 then 1 + stopRequestedInDirection_~__cil_tmp8~1#1 / 3 else stopRequestedInDirection_~__cil_tmp8~1#1 / 3);stopRequestedInDirection_~overload~0#1 := (if ~weight~0 > stopRequestedInDirection_~__cil_tmp9~0#1 then 1 else 0);assume { :begin_inline_isAnyLiftButtonPressed } true;havoc isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1; 748859#L2212 assume !(0 != ~floorButtons_0~0); 746227#L2216 assume 0 != ~floorButtons_1~0;isAnyLiftButtonPressed_~retValue_acc~18#1 := 1;isAnyLiftButtonPressed_#res#1 := isAnyLiftButtonPressed_~retValue_acc~18#1; 740410#isAnyLiftButtonPressed_returnLabel#1 stopRequestedInDirection_#t~ret51#1 := isAnyLiftButtonPressed_#res#1;havoc isAnyLiftButtonPressed_~retValue_acc~18#1;assume { :end_inline_isAnyLiftButtonPressed } true;stopRequestedInDirection_~tmp~18#1 := stopRequestedInDirection_#t~ret51#1;havoc stopRequestedInDirection_#t~ret51#1;stopRequestedInDirection_~buttonPressed~0#1 := stopRequestedInDirection_~tmp~18#1; 745088#L2185 assume !(0 != stopRequestedInDirection_~overload~0#1);assume { :begin_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1 := stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;stopRequestedInDirection__wrappee__empty_~dir#1 := stopRequestedInDirection__wrappee__empty_#in~dir#1;stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1;stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1 := stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;havoc stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1;havoc stopRequestedInDirection__wrappee__empty_~tmp~17#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___0~6#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___1~5#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___2~3#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___3~2#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___4~1#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___5~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___6~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___7~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___8~0#1;havoc stopRequestedInDirection__wrappee__empty_~tmp___9~0#1; 745089#L1832-2 assume !(1 == stopRequestedInDirection__wrappee__empty_~dir#1); 737332#L2001-2 assume 0 == ~currentFloorID~0;stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1 := 0;stopRequestedInDirection__wrappee__empty_#res#1 := stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1; 733114#stopRequestedInDirection__wrappee__empty_returnLabel#3 stopRequestedInDirection_#t~ret54#1 := stopRequestedInDirection__wrappee__empty_#res#1;havoc stopRequestedInDirection__wrappee__empty_#t~ret40#1, stopRequestedInDirection__wrappee__empty_#t~ret41#1, stopRequestedInDirection__wrappee__empty_#t~ret42#1, stopRequestedInDirection__wrappee__empty_#t~ret43#1, stopRequestedInDirection__wrappee__empty_#t~ret44#1, stopRequestedInDirection__wrappee__empty_#t~ret45#1, stopRequestedInDirection__wrappee__empty_#t~ret46#1, stopRequestedInDirection__wrappee__empty_#t~ret47#1, stopRequestedInDirection__wrappee__empty_#t~ret48#1, stopRequestedInDirection__wrappee__empty_#t~ret49#1, stopRequestedInDirection__wrappee__empty_#t~ret50#1, stopRequestedInDirection__wrappee__empty_~dir#1, stopRequestedInDirection__wrappee__empty_~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_~respectInLiftCalls#1, stopRequestedInDirection__wrappee__empty_~retValue_acc~16#1, stopRequestedInDirection__wrappee__empty_~tmp~17#1, stopRequestedInDirection__wrappee__empty_~tmp___0~6#1, stopRequestedInDirection__wrappee__empty_~tmp___1~5#1, stopRequestedInDirection__wrappee__empty_~tmp___2~3#1, stopRequestedInDirection__wrappee__empty_~tmp___3~2#1, stopRequestedInDirection__wrappee__empty_~tmp___4~1#1, stopRequestedInDirection__wrappee__empty_~tmp___5~0#1, stopRequestedInDirection__wrappee__empty_~tmp___6~0#1, stopRequestedInDirection__wrappee__empty_~tmp___7~0#1, stopRequestedInDirection__wrappee__empty_~tmp___8~0#1, stopRequestedInDirection__wrappee__empty_~tmp___9~0#1;havoc stopRequestedInDirection__wrappee__empty_#in~dir#1, stopRequestedInDirection__wrappee__empty_#in~respectFloorCalls#1, stopRequestedInDirection__wrappee__empty_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection__wrappee__empty } true;stopRequestedInDirection_~retValue_acc~17#1 := stopRequestedInDirection_#t~ret54#1;havoc stopRequestedInDirection_#t~ret54#1;stopRequestedInDirection_#res#1 := stopRequestedInDirection_~retValue_acc~17#1; 733343#stopRequestedInDirection_returnLabel#1 timeShift__wrappee__twothirdsfull_#t~ret80#1 := stopRequestedInDirection_#res#1;havoc stopRequestedInDirection_#t~ret51#1, stopRequestedInDirection_#t~ret52#1, stopRequestedInDirection_#t~ret53#1, stopRequestedInDirection_#t~ret54#1, stopRequestedInDirection_~dir#1, stopRequestedInDirection_~respectFloorCalls#1, stopRequestedInDirection_~respectInLiftCalls#1, stopRequestedInDirection_~retValue_acc~17#1, stopRequestedInDirection_~overload~0#1, stopRequestedInDirection_~buttonPressed~0#1, stopRequestedInDirection_~tmp~18#1, stopRequestedInDirection_~__cil_tmp8~1#1, stopRequestedInDirection_~__cil_tmp9~0#1;havoc stopRequestedInDirection_#in~dir#1, stopRequestedInDirection_#in~respectFloorCalls#1, stopRequestedInDirection_#in~respectInLiftCalls#1;assume { :end_inline_stopRequestedInDirection } true;timeShift__wrappee__twothirdsfull_~tmp___8~2#1 := timeShift__wrappee__twothirdsfull_#t~ret80#1;havoc timeShift__wrappee__twothirdsfull_#t~ret80#1; 733184#L2555 assume 0 != timeShift__wrappee__twothirdsfull_~tmp___8~2#1;assume { :begin_inline_continueInDirection } true;continueInDirection_#in~dir#1 := ~currentHeading~0;havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;continueInDirection_~dir#1 := continueInDirection_#in~dir#1;havoc continueInDirection_~tmp~19#1;~currentHeading~0 := continueInDirection_~dir#1; 733186#L2247 assume !(1 == ~currentHeading~0); 742474#L2257 assume !(0 == ~currentFloorID~0); 740342#L2257-2 assume !(1 == ~currentHeading~0);~currentFloorID~0 := ~currentFloorID~0 - 1; 740343#L2263-1 havoc continueInDirection_#t~ret55#1, continueInDirection_~dir#1, continueInDirection_~tmp~19#1;havoc continueInDirection_#in~dir#1;assume { :end_inline_continueInDirection } true; 743239#L2564-2 havoc timeShift__wrappee__twothirdsfull_#t~ret73#1, timeShift__wrappee__twothirdsfull_#t~ret74#1, timeShift__wrappee__twothirdsfull_#t~ret75#1, timeShift__wrappee__twothirdsfull_#t~ret76#1, timeShift__wrappee__twothirdsfull_#t~ret77#1, timeShift__wrappee__twothirdsfull_#t~ret78#1, timeShift__wrappee__twothirdsfull_#t~ret79#1, timeShift__wrappee__twothirdsfull_#t~ret80#1, timeShift__wrappee__twothirdsfull_#t~ret81#1, timeShift__wrappee__twothirdsfull_#t~ret82#1, timeShift__wrappee__twothirdsfull_#t~ret83#1, timeShift__wrappee__twothirdsfull_~tmp~23#1, timeShift__wrappee__twothirdsfull_~tmp___0~10#1, timeShift__wrappee__twothirdsfull_~tmp___1~7#1, timeShift__wrappee__twothirdsfull_~tmp___2~5#1, timeShift__wrappee__twothirdsfull_~tmp___3~4#1, timeShift__wrappee__twothirdsfull_~tmp___4~3#1, timeShift__wrappee__twothirdsfull_~tmp___5~2#1, timeShift__wrappee__twothirdsfull_~tmp___6~2#1, timeShift__wrappee__twothirdsfull_~tmp___7~2#1, timeShift__wrappee__twothirdsfull_~tmp___8~2#1, timeShift__wrappee__twothirdsfull_~tmp___9~2#1;assume { :end_inline_timeShift__wrappee__twothirdsfull } true; 749023#L2587-1 assume { :begin_inline___utac_acc__Specification13_spec__2 } true;havoc __utac_acc__Specification13_spec__2_#t~ret5#1, __utac_acc__Specification13_spec__2_#t~ret6#1, __utac_acc__Specification13_spec__2_#t~ret7#1, __utac_acc__Specification13_spec__2_#t~ret8#1, __utac_acc__Specification13_spec__2_#t~ret9#1, __utac_acc__Specification13_spec__2_#t~ret10#1, __utac_acc__Specification13_spec__2_~tmp~0#1, __utac_acc__Specification13_spec__2_~tmp___0~0#1, __utac_acc__Specification13_spec__2_~tmp___1~0#1, __utac_acc__Specification13_spec__2_~tmp___2~0#1, __utac_acc__Specification13_spec__2_~tmp___3~0#1, __utac_acc__Specification13_spec__2_~tmp___4~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1, __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;havoc __utac_acc__Specification13_spec__2_~tmp~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___0~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___1~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___2~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___3~0#1;havoc __utac_acc__Specification13_spec__2_~tmp___4~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1;havoc __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1;__utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 := 2 * ~maximumWeight~0;__utac_acc__Specification13_spec__2_~__cil_tmp8~0#1 := (if __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 < 0 && 0 != __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 % 3 then 1 + __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3 else __utac_acc__Specification13_spec__2_~__cil_tmp7~0#1 / 3); 749010#L869 assume ~weight~0 > __utac_acc__Specification13_spec__2_~__cil_tmp8~0#1; 749011#L870 assume 1 == ~prevDir~0;assume { :begin_inline_existInLiftCallsInDirection } true;existInLiftCallsInDirection_#in~d#1 := 0;havoc existInLiftCallsInDirection_#res#1;havoc existInLiftCallsInDirection_~d#1, existInLiftCallsInDirection_~retValue_acc~22#1, existInLiftCallsInDirection_~i~3#1, existInLiftCallsInDirection_~i___0~0#1;existInLiftCallsInDirection_~d#1 := existInLiftCallsInDirection_#in~d#1;havoc existInLiftCallsInDirection_~retValue_acc~22#1;havoc existInLiftCallsInDirection_~i~3#1;havoc existInLiftCallsInDirection_~i___0~0#1; 749022#L2807 assume !(1 == existInLiftCallsInDirection_~d#1); 749137#L2873 assume 0 == existInLiftCallsInDirection_~d#1;existInLiftCallsInDirection_~i___0~0#1 := 0;existInLiftCallsInDirection_~i___0~0#1 := ~currentFloorID~0 - 1; 749138#L2877-2 [2023-11-06 22:42:03,401 INFO L750 eck$LassoCheckResult]: Loop: 749138#L2877-2 assume !false; 749135#L2878 assume existInLiftCallsInDirection_~i___0~0#1 >= 0; 749136#L2879 existInLiftCallsInDirection_~i___0~0#1 := 1 + ~currentFloorID~0; 749158#L2886-2 assume !false; 749147#L2887 assume !(existInLiftCallsInDirection_~i___0~0#1 < 5); 749148#L2945 existInLiftCallsInDirection_~i___0~0#1 := existInLiftCallsInDirection_~i___0~0#1 - 1; 749138#L2877-2 [2023-11-06 22:42:03,401 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:42:03,401 INFO L85 PathProgramCache]: Analyzing trace with hash -1554758627, now seen corresponding path program 1 times [2023-11-06 22:42:03,402 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:42:03,402 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [477484455] [2023-11-06 22:42:03,402 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:42:03,402 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:42:03,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-06 22:42:03,492 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-06 22:42:03,492 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-06 22:42:03,493 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [477484455] [2023-11-06 22:42:03,493 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [477484455] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-06 22:42:03,493 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-06 22:42:03,493 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2023-11-06 22:42:03,493 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1889042702] [2023-11-06 22:42:03,494 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-06 22:42:03,494 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-11-06 22:42:03,495 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-11-06 22:42:03,495 INFO L85 PathProgramCache]: Analyzing trace with hash 2078933803, now seen corresponding path program 12 times [2023-11-06 22:42:03,495 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-06 22:42:03,495 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [289768384] [2023-11-06 22:42:03,496 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-06 22:42:03,496 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-06 22:42:03,500 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:42:03,501 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-06 22:42:03,503 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-06 22:42:03,506 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-06 22:42:03,530 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-06 22:42:03,530 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2023-11-06 22:42:03,530 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2023-11-06 22:42:03,531 INFO L87 Difference]: Start difference. First operand 42129 states and 77917 transitions. cyclomatic complexity: 35974 Second operand has 3 states, 3 states have (on average 24.333333333333332) internal successors, (73), 2 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-11-06 22:42:05,375 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-06 22:42:05,375 INFO L93 Difference]: Finished difference Result 71217 states and 131297 transitions. [2023-11-06 22:42:05,376 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 71217 states and 131297 transitions. [2023-11-06 22:42:06,259 INFO L131 ngComponentsAnalysis]: Automaton has 290 accepting balls. 21878 [2023-11-06 22:42:06,489 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 71217 states to 71217 states and 131297 transitions. [2023-11-06 22:42:06,489 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 70999 [2023-11-06 22:42:06,539 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 70999 [2023-11-06 22:42:06,539 INFO L73 IsDeterministic]: Start isDeterministic. Operand 71217 states and 131297 transitions. [2023-11-06 22:42:06,539 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2023-11-06 22:42:06,540 INFO L218 hiAutomatonCegarLoop]: Abstraction has 71217 states and 131297 transitions. [2023-11-06 22:42:06,595 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71217 states and 131297 transitions.