{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,23]],"date-time":"2026-07-23T09:05:34Z","timestamp":1784797534316,"version":"3.55.0"},"publisher-location":"Cham","reference-count":34,"publisher":"Springer Nature Switzerland","isbn-type":[{"value":"9783032325365","type":"print"},{"value":"9783032325372","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:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2026,7,24]],"date-time":"2026-07-24T00:00:00Z","timestamp":1784851200000},"content-version":"vor","delay-in-days":204,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2026]]},"abstract":"<jats:title>Abstract<\/jats:title>\n                  <jats:p>In numeric-intensive computations, it is well known that the execution of floating-point programs is imprecise as floating-point arithmetic incurs round-off errors. Although round-off errors are small for a single floating-point operation, the aggregation of such errors may be dramatic and cause catastrophic program failures. Therefore, to ensure the correctness of floating-point programs, round-off error needs to be carefully taken into account. In this work, we consider polynomial invariant generation for floating-point programs, aiming at generating tight invariants under the perturbation of round-off errors. Our contribution is a novel framework for applying polynomial constraint solving to address the invariant generation problem, which is also the first polynomial constraint solving based approach that handles floating-point errors to our best knowledge. In our framework, we propose a novel combination of round-off error analysis and polynomial constraint solving, aiming to circumvent the cost of handling a large number of error variables in the floating-point model. Experimental results over a variety of challenging benchmarks show that our framework outperforms SOTA approaches in both time efficiency and the precision of generated invariants.<\/jats:p>","DOI":"10.1007\/978-3-032-32537-2_6","type":"book-chapter","created":{"date-parts":[[2026,7,23]],"date-time":"2026-07-23T08:43:02Z","timestamp":1784796182000},"page":"123-145","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Polynomial Invariant Generation for\u00a0Floating-Point Programs"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0009-0005-2626-5503","authenticated-orcid":false,"given":"Xuran","family":"Cai","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8084-8009","authenticated-orcid":false,"given":"Liqian","family":"Chen","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7947-3446","authenticated-orcid":false,"given":"Hongfei","family":"Fu","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2026,7,24]]},"reference":[{"key":"6_CR1","doi-asserted-by":"publisher","unstructured":"Asadi, A., Chatterjee, K., Fu, H., Goharshady, A.K., Mahdavi, M.: Polynomial reachability witnesses via stellens\u00e4tze. In: PLDI, pp. 772\u2013787. ACM (2021). https:\/\/doi.org\/10.1145\/3453483.3454076","DOI":"10.1145\/3453483.3454076"},{"key":"6_CR2","doi-asserted-by":"publisher","unstructured":"Blanchet, B., et al.: A static analyzer for large safety-critical software. In: PLDI, pp. 196\u2013207. ACM (2003). https:\/\/doi.org\/10.1145\/780822.781153","DOI":"10.1145\/780822.781153"},{"key":"6_CR3","unstructured":"Cai, X., Chen, L., Fu, H.: Polynomial invariant generation for floating-point programs. arXiv preprint (2025), https:\/\/doi.org\/10.48550\/arXiv.2507.15017"},{"key":"6_CR4","doi-asserted-by":"publisher","unstructured":"Chatterjee, K., Fu, H., Goharshady, A.K., Goharshady, E.K.: Polynomial invariant generation for non-deterministic recursive programs. In: PLDI, pp. 672\u2013687. ACM (2020). https:\/\/doi.org\/10.1145\/3385412.3385969","DOI":"10.1145\/3385412.3385969"},{"key":"6_CR5","doi-asserted-by":"publisher","unstructured":"Col\u00f3n, M., Sankaranarayanan, S., Sipma, H.: Linear invariant generation using non-linear constraint solving. In: CAV, pp. 420\u2013432. Springer (2003). https:\/\/doi.org\/10.1007\/978-3-540-45069-6_39","DOI":"10.1007\/978-3-540-45069-6_39"},{"key":"6_CR6","unstructured":"AMPLPY Contributors: An interface to access the features of AMPL from within Python (2021). https:\/\/github.com\/ampl\/amplpy"},{"key":"6_CR7","unstructured":"PYSMT Contributors: A python library for satisfiability modulo theories (2022). https:\/\/github.com\/pysmt\/pysmt"},{"key":"6_CR8","doi-asserted-by":"publisher","unstructured":"Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: POPL, pp. 238\u2013252. ACM (1977). https:\/\/doi.org\/10.1145\/512950.512973","DOI":"10.1145\/512950.512973"},{"key":"6_CR9","doi-asserted-by":"publisher","unstructured":"Damouche, N., Martel, M., Panchekha, P., Qiu, C., Sanchez-Stern, A., Tatlock, Z.: Toward a standard benchmark format and suite for floating-point analysis. In: NSV. Springer (2017). https:\/\/doi.org\/10.1007\/978-3-319-54292-8_6","DOI":"10.1007\/978-3-319-54292-8_6"},{"key":"6_CR10","doi-asserted-by":"publisher","unstructured":"Darulova, E., Izycheva, A., Nasir, F., Ritter, F., Becker, H., Bastian, R.: Daisy - framework for analysis and optimization of numerical programs (tool paper). In: TACAS, pp. 270\u2013287. Springer (2018). https:\/\/doi.org\/10.1007\/978-3-319-89960-2_15","DOI":"10.1007\/978-3-319-89960-2_15"},{"key":"6_CR11","doi-asserted-by":"publisher","unstructured":"Das, A., Briggs, I., Gopalakrishnan, G., Krishnamoorthy, S., Panchekha, P.: Scalable yet rigorous floating-point error analysis. In: SC, pp.\u00a051. ACM (2020). https:\/\/doi.org\/10.5555\/3433701.3433768","DOI":"10.5555\/3433701.3433768"},{"key":"6_CR12","doi-asserted-by":"publisher","unstructured":"Delmas, D., Goubault, E., Putot, S., Souyris, J., Tekkal, K., V\u00e9drine, F.: Towards an industrial use of fluctuat on safety-critical avionics software. In: FMICS (2009). https:\/\/doi.org\/10.1007\/978-3-642-04570-7_6","DOI":"10.1007\/978-3-642-04570-7_6"},{"key":"6_CR13","doi-asserted-by":"publisher","unstructured":"Goubault, E.: Static analyses of the precision of floating-point operations. In: SAS, pp. 234\u2013259. Springer (2001). https:\/\/doi.org\/10.1007\/3-540-47764-0_14","DOI":"10.1007\/3-540-47764-0_14"},{"key":"6_CR14","doi-asserted-by":"publisher","unstructured":"Goubault, E., Martel, M., Putot, S.: Asserting the precision of floating-point computations: a simple abstract interpreter. In: ESOP, pp. 209\u2013212. Springer (2002). https:\/\/doi.org\/10.1007\/3-540-45927-8_15","DOI":"10.1007\/3-540-45927-8_15"},{"key":"6_CR15","unstructured":"Gurobi Optimization LLC, Gurobi (2008). https:\/\/www.gurobi.com\/"},{"key":"6_CR16","doi-asserted-by":"crossref","unstructured":"Izycheva, A., Darulova, E., Seidl, H.: Counterexample- and simulation-guided floating-point loop invariant synthesis. In: SAS, pp. 156\u2013177. Springer (2020). https:\/\/doi.org\/10.1007\/978-3-030-65474-0_8","DOI":"10.1007\/978-3-030-65474-0_8"},{"key":"6_CR17","doi-asserted-by":"publisher","unstructured":"Ke, J., Fu, H., Liu, H., Sun, Z., Chen, L., Li, G.: Affine disjunctive invariant generation with Farkas\u2019 lemma. In: VMCAI, pp. 187\u2013213. Springer (2025). https:\/\/doi.org\/10.1007\/978-3-031-82700-6_9","DOI":"10.1007\/978-3-031-82700-6_9"},{"key":"6_CR18","doi-asserted-by":"publisher","unstructured":"Khalife, E., Garoche, P.L., Farhood, M.: Code-level formal verification of ellipsoidal invariant sets for linear parameter-varying systems. In: NFM (2023). https:\/\/doi.org\/10.1007\/978-3-031-33170-1_10","DOI":"10.1007\/978-3-031-33170-1_10"},{"key":"6_CR19","doi-asserted-by":"publisher","unstructured":"Liu, H., Fu, H., Yu, Z., Song, J., Li, G.: Scalable linear invariant generation with Farkas\u2019 lemma. PACMPL, pp. 204\u2013232 (2022). https:\/\/doi.org\/10.1145\/3563295","DOI":"10.1145\/3563295"},{"key":"6_CR20","doi-asserted-by":"publisher","unstructured":"Magron, V., Constantinides, G.A., Donaldson, A.F.: Certified roundoff error bounds using semidefinite programming. In: TOMS, pp. 1\u201331 (2017). https:\/\/doi.org\/10.1145\/3015465","DOI":"10.1145\/3015465"},{"key":"6_CR21","doi-asserted-by":"publisher","unstructured":"Min\u00e9, A.: Relational abstract domains for the detection of floating-point run-time errors. In: ESOP, pp. 3\u201317. Springer (2004). https:\/\/doi.org\/10.1007\/978-3-540-24725-8_2","DOI":"10.1007\/978-3-540-24725-8_2"},{"key":"6_CR22","doi-asserted-by":"publisher","unstructured":"Moscato, M.M., Titolo, L., Dutle, A., Mu\u00f1oz, C.A.: Automatic estimation of verified floating-point round-off errors via static analysis. In: SAFECOMP, pp. 213\u2013229. Springer (2017). https:\/\/doi.org\/10.1007\/978-3-319-66266-4_14","DOI":"10.1007\/978-3-319-66266-4_14"},{"key":"6_CR23","unstructured":"Microsoft Research. Z3-solver (2012). https:\/\/github.com\/Z3Prover\/z3"},{"key":"6_CR24","doi-asserted-by":"publisher","unstructured":"Rivera, J., Franchetti, F., P\u00fcschel, M.: Floating-point TVPI abstract domain. PACMPL (2024). https:\/\/doi.org\/10.1145\/3656395","DOI":"10.1145\/3656395"},{"key":"6_CR25","doi-asserted-by":"crossref","unstructured":"Sankaranarayanan, S., Sipma, H.B., Manna, Z.: Constraint-based linear-relations analysis. In: SAS, pp. 53\u201368. Springer (2004). https:\/\/doi.org\/10.1007\/978-3-540-27864-1_7","DOI":"10.1007\/978-3-540-27864-1_7"},{"key":"6_CR26","doi-asserted-by":"publisher","unstructured":"Scheiderer, C.: Positivity and sums of squares: A guide to recent results. In: Putinar, M., Sullivant, S. (eds) Emerging Applications of Algebraic Geometry. The IMA Volumes in Mathematics and its Applications, vol 149. Springer (2009). https:\/\/doi.org\/10.1007\/978-0-387-09686-5_8","DOI":"10.1007\/978-0-387-09686-5_8"},{"key":"6_CR27","unstructured":"Society, I.C.: IEEE standard for binary floating point arithmetic. Tech. rep., ANSI\/IEEE Std, pp. 745\u20131985 (1985)"},{"key":"6_CR28","doi-asserted-by":"publisher","unstructured":"Solovyev, A., Baranowski, M.S., Briggs, I., Jacobsen, C., Rakamari\u0107, Z., Gopalakrishnan, G.: Rigorous estimation of floating-point round-off errors with symbolic taylor expansions. TOPLAS (2018). https:\/\/doi.org\/10.1145\/3230733","DOI":"10.1145\/3230733"},{"key":"6_CR29","doi-asserted-by":"publisher","unstructured":"Titolo, L., Feli\u00fa, M.A., Moscato, M.M., Mu\u00f1oz, C.A.: An abstract interpretation framework for the round-off error analysis of floating-point programs. In: VMCAI, pp. 516\u2013537. Springer (2018). https:\/\/doi.org\/10.1007\/978-3-319-73721-8_24","DOI":"10.1007\/978-3-319-73721-8_24"},{"key":"6_CR30","doi-asserted-by":"publisher","unstructured":"Titolo, L., Moscato, M.M., Feli\u00fa, M.A., Masci, P., Mu\u00f1oz, C.A.: Rigorous floating-point round-off error analysis in precisa 4.0. In: FM, pp. 20\u201338. Springer (2024). https:\/\/doi.org\/10.1007\/978-3-031-71177-0_2","DOI":"10.1007\/978-3-031-71177-0_2"},{"key":"6_CR31","doi-asserted-by":"publisher","unstructured":"Titolo, L., Mu\u00f1oz, C.A., Feli\u00fa, M.A., Moscato, M.M.: Eliminating unstable tests in floating-point programs. In: LOPSTR, pp. 169\u2013183. Springer (2019). https:\/\/doi.org\/10.1007\/978-3-030-13838-7_10","DOI":"10.1007\/978-3-030-13838-7_10"},{"key":"6_CR32","doi-asserted-by":"publisher","unstructured":"Wang, Q., Chen, M., Xue, B., Zhan, N., Katoen, J.: Synthesizing invariant barrier certificates via difference-of-convex programming. In: CAV. pp. 443\u2013466. Springer (2021). https:\/\/doi.org\/10.1007\/978-3-030-81685-8_21","DOI":"10.1007\/978-3-030-81685-8_21"},{"key":"6_CR33","doi-asserted-by":"publisher","unstructured":"Wu, H., Feng, S., Gan, T., Wang, J., Xia, B., Zhan, N.: On completeness of SDP-based barrier certificate synthesis over unbounded domains. In: FM, pp. 248\u2013266. Springer (2024). https:\/\/doi.org\/10.1007\/978-3-031-71177-0_16","DOI":"10.1007\/978-3-031-71177-0_16"},{"key":"6_CR34","doi-asserted-by":"publisher","unstructured":"Wu, H., Wang, Q., Xue, B., Zhan, N., Zhi, L., Yang, Z.H.: Synthesizing invariants for polynomial programs by semidefinite programming. TOPLAS (2025). https:\/\/doi.org\/10.1145\/3708559","DOI":"10.1145\/3708559"}],"container-title":["Lecture Notes in Computer Science","Computer Aided Verification"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-032-32537-2_6","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,7,23]],"date-time":"2026-07-23T08:43:10Z","timestamp":1784796190000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-032-32537-2_6"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2026]]},"ISBN":["9783032325365","9783032325372"],"references-count":34,"URL":"https:\/\/doi.org\/10.1007\/978-3-032-32537-2_6","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":"24 July 2026","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"The authors have no competing interests to declare that are relevant to the content of this article","order":1,"name":"Ethics","label":"Disclosure of Interests","group":{"name":"EthicsHeading","label":"Ethics"}},{"value":"The artifact of this study is available in","order":2,"name":"Ethics","label":"Data Availability Statement","group":{"name":"EthicsHeading","label":"Ethics"}},{"value":"CAV","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Computer Aided Verification","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Lisbon","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Portugal","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":"26 July 2026","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"29 July 2026","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"38","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"cav2026","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/www.floc26.org\/program","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}