Skip to main content
Log in

A global constraint for over-approximation of real-time streams

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

Formal verification of real time programs, where variables can change values at every time step, is difficult due to the analyses of loops with time lags. In this paper, we propose a constraint programming model together with a global constraint and a filtering algorithm, for computing over-approximation of real-time streams. The global constraint handles the loop analyses by providing an interval over-approximation of the loop invariant. We apply our method to the FAUST language, a language for processing real-time audio streams. Experiments show that our approach provides accurate results in short times.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

Notes

  1. FAUST is open source and available at http://faust.grame.fr

  2. For reading facilities, we simply write cycle instead of directed cycle while working with directed structures such as block-diagrams.

  3. See http://faust.grame.fr/index.php/documentation/references for listing and description.

  4. In music, a numeric audio stream is a sequence of values between − 1 and 1

  5. https://www.cs.ox.ac.uk/people/peter.schrammel/reaver/

References

  1. Apt, K.R. (1999). The essence of constraint propagation. Theoretical Computer Science, 221(1-2), 179–210.

    Article  MathSciNet  MATH  Google Scholar 

  2. Araya, I., Trombettoni, G., Neveu, B., & Chabert, G. Upper Bounding in Inner Regions for Global Optimization under Inequality Constraints. Journal of Global Optimization (2), 145–164 (2014).

  3. Bart, A., Truchet, C., & Monfroy, E. (2015). Verifying a real-time language with constraints, 27th IEEE international conference on tools with artificial intelligence, ICTAI 2015, Vietri sul Mare, Italy, November 9-11, 2015 (pp. 844–851), IEEE.

    Google Scholar 

  4. Benhamou, F., & Granvilliers, L. (2006). Continuous and interval constraints, Handbook of constraint programming (pp. 571–603).

    Chapter  Google Scholar 

  5. Benhamou, F., & J. Older, W. (1997). Applying interval arithmetic to real, integer and Boolean constraints. Journal of Logic Programming, 32(1), 1–24.

    Article  MathSciNet  MATH  Google Scholar 

  6. Blanc, B., Junke, C., Marre, B., Gall, P.L., & Andrieu, O. (2010). Handling state-machines specifications with gatel. Electronic Notes in Theoretical Computer Science, 264(3), 3–17.

    Article  Google Scholar 

  7. Bygde, S., Ermedahl, A., & Lisper, B. (2009). An efficient algorithm for parametric WCET calculation, 15th IEEE international conference on embedded and real-time computing systems and applications, TCSA 2009, Beijing, China, 24-26 August 2009 (pp. 13–21).

    Google Scholar 

  8. Chabert, G., & Jaulin, L. (2009). Contractor programming. Artificial Intelligence, 173(11), 1079–1100.

    Article  MathSciNet  MATH  Google Scholar 

  9. Collavizza, H., Delobel, F., & Rueher, M. (1998). A note on partial consistencies over continuous domains (pp. 147–161). Berlin: Springer.

    MATH  Google Scholar 

  10. Collavizza, H., Michel, C., Ponsini, O., & Rueher, M. (2014). Generating test cases inside suspicious intervals for floating-point number programs, Proceedings of the 6th international workshop on constraints in software testing, verification, and analysis, CSTVA 2014 (pp. 7–11). New York: ACM.

    Chapter  Google Scholar 

  11. Cousot, P., & Cousot, R. (1976). Static determination of dynamic properties of programs, Proceedings of the 2nd international symposium on programming (pp. 106–130). Paris: Dunod.

    Google Scholar 

  12. Cousot, P., & Cousot, R. (1977). Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints, Conference record of the 4th annual ACM SIGPLAN-SIGACT symposium on principles of programming languages (pp. 238–252). New York, Los Angeles: ACM.

    Google Scholar 

  13. Cousot, P., & Cousot, R. (1992). Abstract interpretation frameworks. Journal of Logic and Computation, 2(4), 511–547.

    Article  MathSciNet  MATH  Google Scholar 

  14. Denmat, T., Gotlieb, A., & Ducassé, M. (2007). An abstract interpretation based combinator for modeling while loops in constraint programming, Proceedings of the principles and practice of constraint programming CP 2007, Providence, RI USA, September 23-27, 2007 (pp. 241–255).

    Google Scholar 

  15. Di Alesio, S., Nejati, S., Briand, L.C., & Gotlieb, A. (2014). Worst-case scheduling of software tasks - a constraint optimization model to support performance testing, Proceedings of the principles and practice of constraint programming CP 2014, Lyon, France, September 8-12, 2014.

    Google Scholar 

  16. Edgar Moore, R. (1966). Interval analysis. Englewood Cliffs: Prentice-Hall.

    Google Scholar 

  17. Gotlieb, A. (2015). Constraint-based testing: An emerging trend in software testing. Advances in Computers, 99, 67–101.

    Article  Google Scholar 

  18. Halbwachs, N., Caspi, P., Raymond, P., & Pilaud, D. (1991). The synchronous dataflow programming language lustre. Proceedings of the IEEE, 79(9), 1305–1320.

    Article  Google Scholar 

  19. Lallouet, A., Law, Y.C., Lee, J.H., & Siu, C.F. (2011). Constraint programming on infinite data streams, Proceedings of the 22nd international joint conference on artificial intelligence-volume volume one. AAAI Press.

    Google Scholar 

  20. Lee, B., Resnick, K., Bond, M.D., & McKinley, K.S. (2007). Compiler construction: 16th international conference, CC 2007, held as part of the joint European conferences on theory and practice of software, ETAPS 2007, Braga, Portugal, March 26-30, 2007, Proceedings, chap. correcting the dynamic call graph using control-flow constraints (pp. 80–95). Berlin: Springer.

    Google Scholar 

  21. Lee, J., & Lee, J. In: Principles and Practice of Constraint Programming.

  22. Lhomme, O. (1993). Consistency techniques for numeric csps (pp. 232–238).

  23. (2013). moForte: audio modeling for mobile. http://www.moforte.com.

  24. Montanari, U. (1974). Networks of constraints: fundamental properties and applications to picture processing. Information Science, 7(2), 95–132.

    Article  MathSciNet  MATH  Google Scholar 

  25. Oppenheim, A.V., Willsky, A.S., & Nawab, S.H. (1996). Signals & systems, 2nd Edn. Upper Saddle River: Prentice-Hall.

    Google Scholar 

  26. Orlarey, Y., Fober, D., & Letz, S. (2002). An algebra for block diagram languages, International computer music conference.

    Google Scholar 

  27. Orlarey, Y., Fober, D., & Letz, S. (2004). Syntactical and semantical aspects of Faust. Soft Computing, 8(9), 623–632.

    Article  MATH  Google Scholar 

  28. Pelleau, M., Miné, A., Truchet, C., & Benhamou, F. (2013). A constraint solver based on abstract domains, Proceedings of the verification, model checking, and abstract interpretation, 14th international conference, VMCAI 2013, Rome, Italy, January 20-22, 2013 (pp. 434–454).

    Google Scholar 

  29. Podelski, A. (2000). chap. Model checking as constraint solving. In Proceedings of the static analysis: 7th international symposium, SAS 2000, Santa Barbara, CA, USA, June 29 - July 1, 2000 (pp. 22–37). Berlin: Springer.

  30. Ponsini, O., Michel, C., & Rueher, M. (2011). Refining Abstract Interpretation-based Approximations with Constraint Solvers. Tech. rep.

  31. Ponsini, O., Michel, C., & Rueher, M. (2016). Verifying floating-point programs with constraint programming and abstract interpretation techniques. Automated Software Engineering, 23(2), 191–217.

    Article  Google Scholar 

  32. Schrammel, P. (2013). Logico-numerical verification methods for discrete and hybrid systems. Ph.D. thesis, University of Grenoble.

  33. Smith, J.O. (2011). Spectral Audio Signal Processing. http://ccrma.stanford.edu/~jos/sasp/. Online book, 2011 edition.

Download references

Acknowledgments

We would like to thank the reviewers for their insightful comments which were numerous, detailed, and clear.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Anicet Bart.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Bart, A., Truchet, C. & Monfroy, E. A global constraint for over-approximation of real-time streams. Constraints 22, 463–490 (2017). https://doi.org/10.1007/s10601-017-9268-z

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10601-017-9268-z

Keywords

Navigation