{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,11]],"date-time":"2026-01-11T19:56:46Z","timestamp":1768161406344,"version":"3.49.0"},"publisher-location":"Cham","reference-count":44,"publisher":"Springer Nature Switzerland","isbn-type":[{"value":"9783032159809","type":"print"},{"value":"9783032159816","type":"electronic"}],"license":[{"start":{"date-parts":[[2026,1,1]],"date-time":"2026-01-01T00:00:00Z","timestamp":1767225600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2026,1,1]],"date-time":"2026-01-01T00:00:00Z","timestamp":1767225600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2026]]},"DOI":"10.1007\/978-3-032-15981-6_11","type":"book-chapter","created":{"date-parts":[[2026,1,11]],"date-time":"2026-01-11T17:13:34Z","timestamp":1768151614000},"page":"181-198","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Declarative Debugging for\u00a0Modern Networks"],"prefix":"10.1007","author":[{"given":"Anduo","family":"Wang","sequence":"first","affiliation":[]},{"given":"Matthew","family":"Caesar","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2026,1,12]]},"reference":[{"key":"11_CR1","doi-asserted-by":"publisher","unstructured":"Bosshart, P., et al.: P4: programming protocol-independent packet processors. SIGCOMM Comput. Commun. Rev. 44(3), 87\u201395 (2014). https:\/\/doi.org\/10.1145\/2656877.2656890","DOI":"10.1145\/2656877.2656890"},{"key":"11_CR2","doi-asserted-by":"publisher","unstructured":"Brown, M., Fogel, A., Halperin, D., Heorhiadi, V., Mahajan, R., Millstein, T.: Lessons from the evolution of the batfish configuration analysis tool (2023). https:\/\/doi.org\/10.1145\/3603269.3604866","DOI":"10.1145\/3603269.3604866"},{"issue":"1","key":"11_CR3","doi-asserted-by":"publisher","first-page":"44","DOI":"10.1145\/321992.321996","volume":"24","author":"RM Burstall","year":"1977","unstructured":"Burstall, R.M., Darlington, J.: A transformation system for developing recursive programs. J. ACM 24(1), 44\u201367 (1977). https:\/\/doi.org\/10.1145\/321992.321996","journal-title":"J. ACM"},{"key":"11_CR4","doi-asserted-by":"publisher","unstructured":"Caballero, R., Riesco, A., Silva, J.: A survey of algorithmic debugging. ACM Comput. Surv. 50(4) (2017). https:\/\/doi.org\/10.1145\/3106740","DOI":"10.1145\/3106740"},{"key":"11_CR5","unstructured":"Chen, M., Kiciman, E., Accardi, A., Fox, A., Brewer, E.: Using runtime paths for macroanalysis. In: Proceedings of the 9th Conference on Hot Topics in Operating Systems, vol. 9, p.\u00a014. HOTOS\u201903, USENIX Association, USA (2003)"},{"issue":"7","key":"11_CR6","doi-asserted-by":"publisher","first-page":"297","DOI":"10.1145\/960116.54020","volume":"23","author":"SK Debray","year":"1988","unstructured":"Debray, S.K.: Unfold\/fold transformations and loop optimization of logic programs. SIGPLAN Not. 23(7), 297\u2013307 (1988). https:\/\/doi.org\/10.1145\/960116.54020","journal-title":"SIGPLAN Not."},{"key":"11_CR7","doi-asserted-by":"publisher","first-page":"193","DOI":"10.4204\/eptcs.385.20","volume":"385","author":"W Drabent","year":"2023","unstructured":"Drabent, W.: On feasibility of declarative diagnosis. Electron. Proc. Theor. Comput. Sci. 385, 193\u2013200 (2023). https:\/\/doi.org\/10.4204\/eptcs.385.20","journal-title":"Electron. Proc. Theor. Comput. Sci."},{"key":"11_CR8","doi-asserted-by":"publisher","unstructured":"Ducass\u00e9, M., Noy\u00e9, J.: Logic programming environments: dynamic program analysis and debugging. J. Log. Program. 19\u201320, 351\u2013384 (1994). https:\/\/doi.org\/10.1016\/0743-1066(94)90030-2, https:\/\/www.sciencedirect.com\/science\/article\/pii\/0743106694900302","DOI":"10.1016\/0743-1066(94)90030-2"},{"issue":"12","key":"11_CR9","doi-asserted-by":"publisher","first-page":"20","DOI":"10.1145\/2559899.2560327","volume":"11","author":"N Feamster","year":"2013","unstructured":"Feamster, N., Rexford, J., Zegura, E.: The road to SDN. Queue 11(12), 20 (2013)","journal-title":"Queue"},{"key":"11_CR10","unstructured":"Fogel, A., et al.: A general approach to network configuration analysis. In: Proceedings of the 12th USENIX Conference on Networked Systems Design and Implementation, NSDI 2015, , pp. 469\u2013483. USENIX Association, USA (2015)"},{"key":"11_CR11","unstructured":"Fogel, A., et al.: A general approach to network configuration analysis, NSDI 2015. USENIX Association, USA (2015)"},{"key":"11_CR12","unstructured":"Fonseca, R., Porter, G., Katz, R.H., Shenker, S., Stoica, I.: X-trace: a pervasive network tracing framework. In: Proceedings of the 4th USENIX Conference on Networked Systems Design & Implementation, NSDI 2007, p.\u00a020. USENIX Association, USA (2007)"},{"key":"11_CR13","unstructured":"Gallagher, J.P.: Transforming logic programs by specialising interpreters. In: Proceedings of the 7th European Conference on Artificial Intelligence, ECAI 1986, vol. 2, pp. 313\u2013326. North-Holland (1986)"},{"key":"11_CR14","doi-asserted-by":"publisher","unstructured":"Giannarakis, N., Loehr, D., Beckett, R., Walker, D.: NV: an intermediate language for verification of network control planes. In: Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2020, pp. 958\u2013973. Association for Computing Machinery, New York (2020). https:\/\/doi.org\/10.1145\/3385412.3386019","DOI":"10.1145\/3385412.3386019"},{"key":"11_CR15","doi-asserted-by":"publisher","unstructured":"Handigol, N., Heller, B., Jeyakumar, V., Mazi\u00e9res, D., McKeown, N.: Where is the debugger for my software-defined network? In: Proceedings of the First Workshop on Hot Topics in Software Defined Networks, HotSDN 2012, pp. 55\u201360. Association for Computing Machinery, New York (2012). https:\/\/doi.org\/10.1145\/2342441.2342453","DOI":"10.1145\/2342441.2342453"},{"key":"11_CR16","unstructured":"Handigol, N., Heller, B., Jeyakumar, V., Mazi\u00e8res, D., McKeown, N.: I know what your packet did last hop: using packet histories to troubleshoot networks. In: Proceedings of the 11th USENIX Conference on Networked Systems Design and Implementation, NSDI 2014, pp. 71\u201385. USENIX Association, USA (2014)"},{"key":"11_CR17","doi-asserted-by":"publisher","unstructured":"Hill, P.M., Gallagher, J.: Meta-programming in logic programming. In: Handbook of Logic in Artificial Intelligence and Logic Programming: Volume 5: Logic Programming. Oxford University Press (1998). https:\/\/doi.org\/10.1093\/oso\/9780198537922.003.0010","DOI":"10.1093\/oso\/9780198537922.003.0010"},{"issue":"4","key":"11_CR18","doi-asserted-by":"publisher","first-page":"761","DOI":"10.1145\/1634.1886","volume":"31","author":"T Imieli\u0144ski","year":"1984","unstructured":"Imieli\u0144ski, T., Lipski, W.: Incomplete information in relational databases. J. ACM 31(4), 761\u2013791 (1984). https:\/\/doi.org\/10.1145\/1634.1886","journal-title":"J. ACM"},{"issue":"3","key":"11_CR19","doi-asserted-by":"publisher","first-page":"480","DOI":"10.1145\/243439.243447","volume":"28","author":"ND Jones","year":"1996","unstructured":"Jones, N.D.: An introduction to partial evaluation. ACM Comput. Surv. 28(3), 480\u2013503 (1996). https:\/\/doi.org\/10.1145\/243439.243447","journal-title":"ACM Comput. Surv."},{"key":"11_CR20","unstructured":"Juniper networks, Fast Reroute Overview (2018). https:\/\/www.juniper.net\/documentation\/en_US\/junos-space-apps\/connectivity-services-director4.1\/topics\/concept\/fast-reroute-understanding.html"},{"key":"11_CR21","doi-asserted-by":"publisher","unstructured":"Kandula, S., Mahajan, R., Verkaik, P., Agarwal, S., Padhye, J., Bahl, P.: Detailed diagnosis in enterprise networks. In: Proceedings of the ACM SIGCOMM 2009 Conference on Data Communication, SIGCOMM 2009, pp. 243\u2013254. Association for Computing Machinery, New York (2009). https:\/\/doi.org\/10.1145\/1592568.1592597","DOI":"10.1145\/1592568.1592597"},{"key":"11_CR22","doi-asserted-by":"publisher","first-page":"87094","DOI":"10.1109\/access.2021.3086704","volume":"9","author":"EF Kfoury","year":"2021","unstructured":"Kfoury, E.F., Crichigno, J., Bou-Harb, E.: An exhaustive survey on P4 programmable data plane switches: taxonomy, applications, challenges, and future trends. IEEE Access 9, 87094\u201387155 (2021). https:\/\/doi.org\/10.1109\/access.2021.3086704","journal-title":"IEEE Access"},{"key":"11_CR23","doi-asserted-by":"crossref","unstructured":"K\u00f6rner, P., et al.: Fifty years of prolog and beyond (2022)","DOI":"10.1017\/S1471068422000102"},{"key":"11_CR24","doi-asserted-by":"crossref","unstructured":"Lan, F., Gui, B., Wang, A.: Faure: a partial approach to network analysis. In: ACM Workshop on Hot Topics in Networks (HotNets) (2021)","DOI":"10.1145\/3484266.3487391"},{"key":"11_CR25","doi-asserted-by":"crossref","unstructured":"Lloyd, J.W.: Foundations of Logic Programming, 2nd extended edn. Springer, Heidelberg (1987)","DOI":"10.1007\/978-3-642-83189-8"},{"key":"11_CR26","doi-asserted-by":"publisher","unstructured":"Lloyd, J., Shepherdson, J.: Partial evaluation in logic programming. J. Log. Program. 11(3), 217\u2013242 (1991). https:\/\/doi.org\/10.1016\/0743-1066(91)90027-M, https:\/\/www.sciencedirect.com\/science\/article\/pii\/074310669190027M","DOI":"10.1016\/0743-1066(91)90027-M"},{"key":"11_CR27","doi-asserted-by":"publisher","unstructured":"Loo, B.T., et al.: Declarative networking: Language, execution and optimization. In: SIGMOD 2006. ACM (2006). https:\/\/doi.org\/10.1145\/1142473.1142485","DOI":"10.1145\/1142473.1142485"},{"key":"11_CR28","doi-asserted-by":"publisher","unstructured":"Loo, B.T., Hellerstein, J.M., Stoica, I., Ramakrishnan, R.: Declarative routing: extensible routing with declarative queries. In: SIGCOMM 2005 (2005). https:\/\/doi.org\/10.1145\/1080091.1080126","DOI":"10.1145\/1080091.1080126"},{"key":"11_CR29","unstructured":"Lopes, N.P., Bj\u00f8rner, N., Godefroid, P., Jayaraman, K., Varghese, G.: Checking beliefs in dynamic networks. In: 12th USENIX Symposium on Networked Systems Design and Implementation (NSDI 2015), pp. 499\u2013512. USENIX Association, Oakland (2015). https:\/\/www.usenix.org\/conference\/nsdi15\/technical-sessions\/presentation\/lopes"},{"key":"11_CR30","doi-asserted-by":"publisher","unstructured":"Porras, P., Shin, S., Yegneswaran, V., Fong, M., Tyson, M., Gu, G.: A security enforcement kernel for OpenFlow networks. In: Proceedings of the First Workshop on Hot Topics in Software Defined Networks, HotSDN 2012, pp. 121\u2013126. Association for Computing Machinery, New York (2012). https:\/\/doi.org\/10.1145\/2342441.2342466","DOI":"10.1145\/2342441.2342466"},{"key":"11_CR31","unstructured":"Reich, J., Monsanto, C., Foster, N., Rexford, J., Walker, D.: Modular SDN programming with pyretic. USENIX Login 38(5) (2013)"},{"key":"11_CR32","doi-asserted-by":"publisher","unstructured":"Scott, C., et al.: Troubleshooting blackbox SDN control software with minimal causal sequences. In: Proceedings of the 2014 ACM Conference on SIGCOMM, SIGCOMM 2014, pp. 395\u2013406. Association for Computing Machinery, New York (2014). https:\/\/doi.org\/10.1145\/2619239.2626304","DOI":"10.1145\/2619239.2626304"},{"key":"11_CR33","doi-asserted-by":"publisher","DOI":"10.7551\/mitpress\/1192.001.0001","volume-title":"Algorithmic Program DeBugging","author":"EY Shapiro","year":"1983","unstructured":"Shapiro, E.Y.: Algorithmic Program DeBugging. MIT Press, Cambridge (1983)"},{"issue":"1","key":"11_CR34","first-page":"91","volume":"21","author":"J Silva","year":"2008","unstructured":"Silva, J.: Debugging techniques for declarative languages: profiling, program slicing and algorithmic debugging. AI Commun. 21(1), 91\u201392 (2008)","journal-title":"AI Commun."},{"key":"11_CR35","doi-asserted-by":"publisher","unstructured":"Silva, J., Chitil, O.: Combining algorithmic debugging and program slicing. In: Proceedings of the 8th ACM SIGPLAN International Conference on Principles and Practice of Declarative Programming, PPDP 2006, pp. 157\u2013166. Association for Computing Machinery, New York (2006). https:\/\/doi.org\/10.1145\/1140335.1140355","DOI":"10.1145\/1140335.1140355"},{"key":"11_CR36","doi-asserted-by":"publisher","unstructured":"Sonchack, J., Loehr, D., Rexford, J., Walker, D.: Lucid: a language for control in the data plane. In: Proceedings of the 2021 ACM SIGCOMM 2021 Conference, SIGCOMM 2021, pp. 731\u2013747. Association for Computing Machinery, New York (2021). https:\/\/doi.org\/10.1145\/3452296.3472903","DOI":"10.1145\/3452296.3472903"},{"key":"11_CR37","unstructured":"Sterling, L., Shapiro, E.: The Art of Prolog (2nd edn.): Advanced Programming Techniques. MIT Press, Cambridge (1994)"},{"key":"11_CR38","unstructured":"The Future of Networking, and the Past of Protocols. http:\/\/www.opennetsummit.org\/archives\/apr12\/site\/talks\/shenker-tue.pdf"},{"key":"11_CR39","unstructured":"Why does the Internet need a programmable forwarding plane. https:\/\/tinyurl.com\/29859hrn"},{"key":"11_CR40","doi-asserted-by":"publisher","unstructured":"Wu, Y., Haeberlen, A., Zhou, W., Loo, B.T.: Answering why-not queries in software-defined networks with negative provenance. In: Proceedings of the Twelfth ACM Workshop on Hot Topics in Networks, HotNets-XII, Association for Computing Machinery, New York (2013). https:\/\/doi.org\/10.1145\/2535771.2535799","DOI":"10.1145\/2535771.2535799"},{"issue":"4","key":"11_CR41","doi-asserted-by":"publisher","first-page":"383","DOI":"10.1145\/2740070.2626335","volume":"44","author":"Y Wu","year":"2014","unstructured":"Wu, Y., Zhao, M., Haeberlen, A., Zhou, W., Loo, B.T.: Diagnosing missing events in distributed systems with negative provenance. SIGCOMM Comput. Commun. Rev. 44(4), 383\u2013394 (2014). https:\/\/doi.org\/10.1145\/2740070.2626335","journal-title":"SIGCOMM Comput. Commun. Rev."},{"key":"11_CR42","unstructured":"Wundsam, A., Levin, D., Seetharaman, S., Feldmann, A.: OFRewind: enabling record and replay troubleshooting for networks. In: Proceedings of the 2011 USENIX Conference on USENIX Annual Technical Conference, USENIXATC 2011, p.\u00a029. USENIX Association, USA (2011)"},{"key":"11_CR43","unstructured":"XSB homepage. https:\/\/xsb.sourceforge.net\/"},{"key":"11_CR44","doi-asserted-by":"publisher","unstructured":"Zhou, W., Sherr, M., Tao, T., Li, X., Loo, B.T., Mao, Y.: Efficient querying and maintenance of network provenance at internet-scale. In: Proceedings of the 2010 ACM SIGMOD International Conference on Management of Data, SIGMOD 2010, pp. 615\u2013626. Association for Computing Machinery, New York (2010). https:\/\/doi.org\/10.1145\/1807167.1807234","DOI":"10.1145\/1807167.1807234"}],"container-title":["Lecture Notes in Computer Science","Practical Aspects of Declarative Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-032-15981-6_11","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,1,11]],"date-time":"2026-01-11T17:13:36Z","timestamp":1768151616000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-032-15981-6_11"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2026]]},"ISBN":["9783032159809","9783032159816"],"references-count":44,"URL":"https:\/\/doi.org\/10.1007\/978-3-032-15981-6_11","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2026]]},"assertion":[{"value":"12 January 2026","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"PADL","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Symposium on Practical Aspects of Declarative Languages","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Rennes","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"France","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2026","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"12 January 2026","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"13 January 2026","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"28","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"padl2026","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/popl26.sigplan.org\/home\/PADL-2026","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}