“…These features have increased the appeal of Prolog in many challenging robotic scenarios. Relevant are the many Prolog-based implementations of the Golog action language (Levesque et al 1997), such as in Janssen et al (2016) for multi-robot hierarchical task planning in the context of RoboEarth project (Waibel et al 2011); Kirsch et al (2020), where a useful integration of the Golog dialect Readylog with ROS is proposed through C++ bindings (Golog++ by Mataré et al (2018)), with an application to the Pepper service robot; Gierse et al (2016), where INTRGOLOG is presented to implement task interruption and resumption in reaction to anomalous events; Schiffer et al (2012), where Readylog is used for task planning in domestic scenario with Caesar robot; Farinelli et al (2007), where TEAMGOLOG is used for multi-robot coordination in a search-and-rescue application under partial observability. Among main implementations of Prolog, also SWI-Prolog (Wielemaker et al 2012) shall be mentioned, which implements constructs for optimal query answering and plan generation under the paradigm of preference reasoning (Brewka et al 2008) and has been used, e.g., in the Tartarus framework for the integration and coordination of multiple robots in cyber-physical systems (Semwal et al 2015); Muñoz-Hernandez and Wiguna (2007), where Fuzzy Prolog is used to deal with missing information in real-time robotic soccer; Javia and Cimiano (2017), where multi-robot coordination for domestic activities is implemented in Prolog; Xu et al (2014), where an efficient software integration between qualitative Prolog calculus and quantitative C++ processing is implemented for robotic assistance to elderly and disabled people; Pineda et al (2013), which proposes Sit-Log, a Prolog-based planner for service robotic tasks in domestic scenario, in the context of RoboCup@Home international competition; Nevlyudov et al (2008); Fakhruldeen et al (2016) for robotic assembly in industry.…”