{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,25]],"date-time":"2026-02-25T17:50:48Z","timestamp":1772041848803,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":67,"publisher":"ACM","license":[{"start":{"date-parts":[[2023,11,30]],"date-time":"2023-11-30T00:00:00Z","timestamp":1701302400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"DOI":"10.13039\/100000001","name":"National Science Foundation","doi-asserted-by":"publisher","award":["CCF-15-18897, CNS-15-13263, CNS-21-20448, CCF-19-34884, CCF-22-23812"],"award-info":[{"award-number":["CCF-15-18897, CNS-15-13263, CNS-21-20448, CCF-19-34884, CCF-22-23812"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2023,11,30]]},"DOI":"10.1145\/3611643.3616247","type":"proceedings-article","created":{"date-parts":[[2023,11,30]],"date-time":"2023-11-30T23:14:38Z","timestamp":1701386078000},"page":"94-106","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":8,"title":["Design by Contract for Deep Learning APIs"],"prefix":"10.1145","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-1183-883X","authenticated-orcid":false,"given":"Shibbir","family":"Ahmed","sequence":"first","affiliation":[{"name":"Iowa State University, Ames, USA"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-0357-0098","authenticated-orcid":false,"given":"Sayem Mohammad","family":"Imtiaz","sequence":"additional","affiliation":[{"name":"Iowa State University, Ames, USA"}]},{"ORCID":"https:\/\/orcid.org\/0009-0008-3733-2101","authenticated-orcid":false,"given":"Samantha Syeda","family":"Khairunnesa","sequence":"additional","affiliation":[{"name":"Bradley University, Peoria, USA"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-0243-6591","authenticated-orcid":false,"given":"Breno Dantas","family":"Cruz","sequence":"additional","affiliation":[{"name":"Iowa State University, Ames, USA"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9410-9562","authenticated-orcid":false,"given":"Hridesh","family":"Rajan","sequence":"additional","affiliation":[{"name":"Iowa State University, Ames, USA"}]}],"member":"320","published-online":{"date-parts":[[2023,11,30]]},"reference":[{"key":"e_1_3_2_2_1_1","unstructured":"2016. Pylint. https:\/\/pylint.pycqa.org\/en\/latest\/"},{"key":"e_1_3_2_2_2_1","volume-title":"CNN with keras, accuracy not improving. https:\/\/stackoverflow.com\/questions\/50079585\/ [Online","year":"2023","unstructured":"2021. CNN with keras, accuracy not improving. https:\/\/stackoverflow.com\/questions\/50079585\/ [Online; accessed Feb-2023]"},{"key":"e_1_3_2_2_3_1","volume-title":"How to train and tune an artificial multilayer perceptron neural network using Keras? https:\/\/stackoverflow.com\/questions\/34673164\/ [Online","year":"2023","unstructured":"2021. How to train and tune an artificial multilayer perceptron neural network using Keras? https:\/\/stackoverflow.com\/questions\/34673164\/ [Online; accessed Feb-2023]"},{"key":"e_1_3_2_2_4_1","volume-title":"Keras API reference. https:\/\/keras.io\/api\/ [Online","year":"2023","unstructured":"2021. Keras API reference. https:\/\/keras.io\/api\/ [Online; accessed Feb-2023]"},{"key":"e_1_3_2_2_5_1","volume-title":"Keras unreasonnably slower than TensorFlow. https:\/\/stackoverflow.com\/questions\/47352366\/ [Online","year":"2023","unstructured":"2021. Keras unreasonnably slower than TensorFlow. https:\/\/stackoverflow.com\/questions\/47352366\/ [Online; accessed Feb-2023]"},{"key":"e_1_3_2_2_6_1","volume-title":"Loss becomes NaN. https:\/\/stackoverflow.com\/questions\/55328966\/ [Online","year":"2023","unstructured":"2021. Loss becomes NaN. https:\/\/stackoverflow.com\/questions\/55328966\/ [Online; accessed Feb-2023]"},{"key":"e_1_3_2_2_7_1","volume-title":"Low accuracy after training a CNN. https:\/\/stackoverflow.com\/questions\/59325381\/ [Online","year":"2023","unstructured":"2021. Low accuracy after training a CNN. https:\/\/stackoverflow.com\/questions\/59325381\/ [Online; accessed Feb-2023]"},{"key":"e_1_3_2_2_8_1","volume-title":"Multilabel Text Classification using TensorFlow. https:\/\/stackoverflow.com\/questions\/35400065\/multilabel-text-classification-using-tensorflow [Online","year":"2023","unstructured":"2021. Multilabel Text Classification using TensorFlow. https:\/\/stackoverflow.com\/questions\/35400065\/multilabel-text-classification-using-tensorflow [Online; accessed Feb-2023]"},{"key":"e_1_3_2_2_9_1","volume-title":"Sigmoid layer in Keras. https:\/\/stackoverflow.com\/questions\/45442843\/ [Online","year":"2023","unstructured":"2021. Sigmoid layer in Keras. https:\/\/stackoverflow.com\/questions\/45442843\/ [Online; accessed Feb-2023]"},{"key":"e_1_3_2_2_10_1","volume-title":"Simple MNIST convnet example from Keras documentation. https:\/\/keras.io\/examples\/vision\/mnist_convnet\/ [Online","year":"2023","unstructured":"2021. Simple MNIST convnet example from Keras documentation. https:\/\/keras.io\/examples\/vision\/mnist_convnet\/ [Online; accessed Feb-2023]"},{"key":"e_1_3_2_2_11_1","volume-title":"An annotated version of Keras with the DL Contract (@Keras). https:\/\/github.com\/shibbirtanvin\/DLContract\/tree\/main\/ReproducibilityPackage\/%40Keras [Online","year":"2023","unstructured":"2023. An annotated version of Keras with the DL Contract (@Keras). https:\/\/github.com\/shibbirtanvin\/DLContract\/tree\/main\/ReproducibilityPackage\/%40Keras [Online; accessed Aug-2023]"},{"key":"e_1_3_2_2_12_1","volume-title":"Collected Contracts Table in the Repo. https:\/\/github.com\/shibbirtanvin\/DLContract\/blob\/main\/Appendix\/ListofContracts.pdf [Online","year":"2023","unstructured":"2023. Collected Contracts Table in the Repo. https:\/\/github.com\/shibbirtanvin\/DLContract\/blob\/main\/Appendix\/ListofContracts.pdf [Online; accessed Aug-2023]"},{"key":"e_1_3_2_2_13_1","volume-title":"Comparison of DeepDiagnosis with DL Contract in Anonymous Repo. https:\/\/github.com\/shibbirtanvin\/DLContract\/tree\/main\/Results\/ExperimentalEvaluation [Online","year":"2023","unstructured":"2023. Comparison of DeepDiagnosis with DL Contract in Anonymous Repo. https:\/\/github.com\/shibbirtanvin\/DLContract\/tree\/main\/Results\/ExperimentalEvaluation [Online; accessed Aug-2023]"},{"key":"e_1_3_2_2_14_1","volume-title":"DeepLocalize Full Results in the Reposioty. https:\/\/github.com\/shibbirtanvin\/DLContract\/tree\/main\/Results\/ExperimentalEvaluation\/DeepLocalize_Results.pdf [Online","year":"2023","unstructured":"2023. DeepLocalize Full Results in the Reposioty. https:\/\/github.com\/shibbirtanvin\/DLContract\/tree\/main\/Results\/ExperimentalEvaluation\/DeepLocalize_Results.pdf [Online; accessed Aug-2023]"},{"key":"e_1_3_2_2_15_1","volume-title":"Reposioty of DL Contract. https:\/\/github.com\/shibbirtanvin\/DLContract [Online","year":"2023","unstructured":"2023. Reposioty of DL Contract. https:\/\/github.com\/shibbirtanvin\/DLContract [Online; accessed Aug-2023]"},{"key":"e_1_3_2_2_16_1","volume-title":"Proceedings of the 12th USENIX Conference on Operating Systems Design and Implementation (OSDI\u201916)","author":"Abadi Mart\u00edn","year":"2016","unstructured":"Mart\u00edn Abadi, Paul Barham, Jianmin Chen, Zhifeng Chen, Andy Davis, Jeffrey Dean, Matthieu Devin, Sanjay Ghemawat, Geoffrey Irving, Michael Isard, Manjunath Kudlur, Josh Levenberg, Rajat Monga, Sherry Moore, Derek G. Murray, Benoit Steiner, Paul Tucker, Vijay Vasudevan, Pete Warden, Martin Wicke, Yuan Yu, and Xiaoqiang Zheng. 2016. TensorFlow: A System for Large-Scale Machine Learning. In Proceedings of the 12th USENIX Conference on Operating Systems Design and Implementation (OSDI\u201916). USENIX Association, USA. 265\u2013283. isbn:9781931971331"},{"key":"e_1_3_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.5281\/zenodo.8271853"},{"key":"e_1_3_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-69149-5_16"},{"key":"e_1_3_2_2_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1953122.1953145"},{"key":"e_1_3_2_2_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/3368089.3409704"},{"key":"e_1_3_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/3468264.3468536"},{"key":"e_1_3_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/3510003.3510057"},{"key":"e_1_3_2_2_23_1","volume-title":"The Greybox Approach: When Blackbox Specifications Hide Too Much","author":"B\u00fcchi Martin","unstructured":"Martin B\u00fcchi and Wolfgang Weck. 1999. The Greybox Approach: When Blackbox Specifications Hide Too Much. Turku Center for Computer Science. isbn:952-12-0508-3 http:\/\/tinyurl.com\/ywmuzy"},{"key":"e_1_3_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.1109\/VLHCC.2017.8103461"},{"key":"e_1_3_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/3510003.3510099"},{"key":"e_1_3_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/3368089.3409759"},{"key":"e_1_3_2_2_27_1","volume-title":"Model Variables: Cleanly Supporting Abstraction in Design by Contract: Research Articles. Softw. Pract. Exper., 35, 6","author":"Cheon Yoonsik","year":"2005","unstructured":"Yoonsik Cheon, Gary Leavens, Murali Sitaraman, and Stephen Edwards. 2005. Model Variables: Cleanly Supporting Abstraction in Design by Contract: Research Articles. Softw. Pract. Exper., 35, 6 (2005), may, 583\u2013599. issn:0038-0644"},{"key":"e_1_3_2_2_28_1","volume-title":"Frama-C","author":"Cuoq Pascal","unstructured":"Pascal Cuoq, Florent Kirchner, Nikolai Kosmatov, Virgile Prevosto, Julien Signoles, and Boris Yakobowski. 2012. Frama-C. In Software Engineering and Formal Methods, George Eleftherakis, Mike Hinchey, and Mike Holcombe (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 233\u2013247. isbn:978-3-642-33826-7"},{"key":"e_1_3_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/3211346.3211349"},{"key":"e_1_3_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.neunet.2018.11.005"},{"key":"e_1_3_2_2_31_1","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2019.00079"},{"key":"e_1_3_2_2_32_1","unstructured":"Brett Graham William Furr Karol Kuczmarski Bernhard Biskup and Adam Palay. 2010. PyContracts. https:\/\/andreacensi.github.io\/contracts\/\/"},{"key":"e_1_3_2_2_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/3377811.3380395"},{"key":"e_1_3_2_2_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/3377811.3380395"},{"key":"e_1_3_2_2_35_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE48619.2023.00093"},{"key":"e_1_3_2_2_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/3338906.3338955"},{"key":"e_1_3_2_2_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/3377811.3380378"},{"key":"e_1_3_2_2_38_1","volume-title":"Hridesh Rajan, and Gary T. Leavens.","author":"Khairunnesa Samantha Syeda","year":"2023","unstructured":"Samantha Syeda Khairunnesa, Shibbir Ahmed, Sayem Mohammad Imtiaz, Hridesh Rajan, and Gary T. Leavens. 2023. What Kinds of Contracts Do ML APIs Need? Empirical Software Engineering, 1, 1 (2023), March."},{"key":"e_1_3_2_2_39_1","doi-asserted-by":"publisher","DOI":"10.4230\/LIPIcs.ECOOP.2020.15"},{"key":"e_1_3_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.4230\/LIPIcs.ECOOP.2020.15"},{"key":"e_1_3_2_2_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/1127878.1127884"},{"key":"e_1_3_2_2_42_1","volume-title":"Toward Reliable Modular Programs. Ph. D. Dissertation","author":"Leino K. Rustan M.","unstructured":"K. Rustan M. Leino. 1995. Toward Reliable Modular Programs. Ph. D. Dissertation. California Institute of Technology. Available as Technical Report Caltech-CS-TR-95-03."},{"key":"e_1_3_2_2_43_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-17511-4_20"},{"key":"e_1_3_2_2_44_1","doi-asserted-by":"publisher","DOI":"10.1109\/ASE51524.2021.9678891"},{"key":"e_1_3_2_2_45_1","volume-title":"Simon Chen and et al","author":"Lorena Buciu Nigel Fong","year":"2016","unstructured":"Nigel Fong Lorena Buciu, Simon Chen and et al.. 2016. PyTA. https:\/\/www.cs.toronto.edu\/~david\/pyta\/index.html\/"},{"key":"e_1_3_2_2_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/3236024.3236082"},{"key":"e_1_3_2_2_47_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10270-018-0676-3"},{"key":"e_1_3_2_2_48_1","doi-asserted-by":"publisher","DOI":"10.1109\/2.161279"},{"key":"e_1_3_2_2_49_1","doi-asserted-by":"crossref","unstructured":"Peter M\u00fcller. 2001. Modular Specification and Verification of Object-Oriented programs. Ph. D. Dissertation. FernUniversit\u00e4t Hagen Germany. http:\/\/tinyurl.com\/jtwot","DOI":"10.1007\/3-540-45651-1"},{"key":"e_1_3_2_2_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/3611643.3616257"},{"key":"e_1_3_2_2_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/3510003.3510052"},{"key":"e_1_3_2_2_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/3470006"},{"key":"e_1_3_2_2_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/3368089.3409668"},{"key":"e_1_3_2_2_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/3510003.3510051"},{"key":"e_1_3_2_2_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/3324884.3416545"},{"key":"e_1_3_2_2_56_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-020-09881-0"},{"key":"e_1_3_2_2_57_1","doi-asserted-by":"publisher","DOI":"10.1145\/3411764.3445538"},{"key":"e_1_3_2_2_58_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-01090-4_2"},{"key":"e_1_3_2_2_59_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-81685-8_1"},{"key":"e_1_3_2_2_60_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE43902.2021.00024"},{"key":"e_1_3_2_2_61_1","doi-asserted-by":"publisher","DOI":"10.1145\/3510003.3510071"},{"key":"e_1_3_2_2_62_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE43902.2021.00034"},{"key":"e_1_3_2_2_63_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISSRE52982.2021.00014"},{"key":"e_1_3_2_2_64_1","doi-asserted-by":"publisher","DOI":"10.1145\/3377811.3380362"},{"key":"e_1_3_2_2_65_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE43902.2021.00043"},{"key":"e_1_3_2_2_66_1","doi-asserted-by":"publisher","DOI":"10.1145\/3213846.3213866"},{"key":"e_1_3_2_2_67_1","volume-title":"Proceedings of Machine Learning and Systems, D. Marculescu, Y. Chi, and C. Wu (Eds.). 4, 316\u2013336","author":"Zhuang Donglin","year":"2022","unstructured":"Donglin Zhuang, Xingyao Zhang, Shuaiwen Song, and Sara Hooker. 2022. Randomness in Neural Network Training: Characterizing the Impact of Tooling. In Proceedings of Machine Learning and Systems, D. Marculescu, Y. Chi, and C. Wu (Eds.). 4, 316\u2013336. https:\/\/proceedings.mlsys.org\/paper_files\/paper\/2022\/file\/427e0e886ebf87538afdf0badb805b7f-Paper.pdf"}],"event":{"name":"ESEC\/FSE '23: 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering","location":"San Francisco CA USA","acronym":"ESEC\/FSE '23","sponsor":["SIGSOFT ACM Special Interest Group on Software Engineering"]},"container-title":["Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3611643.3616247","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3611643.3616247","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T16:36:03Z","timestamp":1750178163000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3611643.3616247"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,11,30]]},"references-count":67,"alternative-id":["10.1145\/3611643.3616247","10.1145\/3611643"],"URL":"https:\/\/doi.org\/10.1145\/3611643.3616247","relation":{},"subject":[],"published":{"date-parts":[[2023,11,30]]},"assertion":[{"value":"2023-11-30","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}