A framework to test interval arithmetic libraries and their IEEE 1788‐2015 compliance
Creators
- 1. Universidad Nacional Autónoma de México
- 2. University of Vaasa
Description
Summary As developers of libraries implementing interval arithmetic, we faced the same difficulties when it comes to testing our libraries. What must be tested? How can we devise relevant test cases for unit testing? How can we ensure a high (and possibly 100%) test coverage? Before considering these questions, we briefly recall the main features of interval arithmetic and of the IEEE 1788‐2015 standard for interval arithmetic. After listing the different aspects that, in our opinion, must be tested, we contribute a first step towards offering a test suite for an interval arithmetic library. First we define a format that enables the exchange of test cases, so that they can be read and tried easily. Then we offer a first set of test cases, for a selected set of mathematical functions. Next, we examine how the Julia interval arithmetic library, IntervalArithmetic.jl, actually performs to these tests. As this is an ongoing work, we list extra tests that we deem important to perform.
Translated Descriptions
Translated Description (Arabic)
ملخص كمطورين للمكتبات التي تنفذ الحساب الفاصل، واجهنا نفس الصعوبات عندما يتعلق الأمر باختبار مكتباتنا. ما الذي يجب اختباره ؟ كيف يمكننا ابتكار حالات اختبار ذات صلة لاختبار الوحدة ؟ كيف يمكننا ضمان تغطية اختبار عالية (وربما 100 ٪)؟ قبل النظر في هذه الأسئلة، نتذكر بإيجاز السمات الرئيسية للحساب الفاصل ومعيار IEEE 1788-2015 للحساب الفاصل. بعد سرد الجوانب المختلفة التي، في رأينا، يجب اختبارها، نساهم كخطوة أولى نحو تقديم مجموعة اختبار لمكتبة حسابية فاصلة. أولاً، نحدد تنسيقًا يتيح تبادل حالات الاختبار، بحيث يمكن قراءتها وتجربتها بسهولة. ثم نقدم مجموعة أولى من حالات الاختبار، لمجموعة مختارة من الدوال الرياضية. بعد ذلك، ندرس كيف تؤدي مكتبة جوليا الحسابية الفاصلة، IntervalArithmetic.jl، في الواقع إلى هذه الاختبارات. نظرًا لأن هذا عمل مستمر، فإننا ندرج اختبارات إضافية نعتبرها مهمة لإجراءها.Translated Description (French)
Résumé En tant que développeurs de bibliothèques mettant en œuvre l'arithmétique par intervalles, nous avons rencontré les mêmes difficultés lorsqu'il s'agissait de tester nos bibliothèques. Que faut-il tester ? Comment pouvons-nous concevoir des cas de test pertinents pour les tests unitaires ? Comment pouvons-nous assurer une couverture de test élevée (et éventuellement de 100 %) ? Avant d'examiner ces questions, nous rappelons brièvement les principales caractéristiques de l'arithmétique des intervalles et de la norme IEEE 1788-2015 pour l'arithmétique des intervalles. Après avoir énuméré les différents aspects qui, à notre avis, doivent être testés, nous contribuons à une première étape vers l'offre d'une suite de tests pour une bibliothèque arithmétique par intervalles. Tout d'abord, nous définissons un format qui permet l'échange de cas de test, afin qu'ils puissent être lus et essayés facilement. Ensuite, nous proposons un premier ensemble de cas de test, pour un ensemble sélectionné de fonctions mathématiques. Ensuite, nous examinons comment la bibliothèque arithmétique de l'intervalle Julia, IntervalArithmetic.jl, effectue réellement ces tests. Comme il s'agit d'un travail en cours, nous énumérons les tests supplémentaires que nous jugeons important d'effectuer.Translated Description (Spanish)
Resumen Como desarrolladores de bibliotecas que implementan la aritmética de intervalos, nos enfrentamos a las mismas dificultades a la hora de probar nuestras bibliotecas. ¿Qué se debe probar? ¿Cómo podemos diseñar casos de prueba relevantes para las pruebas unitarias? ¿Cómo podemos garantizar una cobertura de prueba alta (y posiblemente del 100%)? Antes de considerar estas preguntas, recordamos brevemente las principales características de la aritmética de intervalos y del estándar IEEE 1788‐2015 para la aritmética de intervalos. Después de enumerar los diferentes aspectos que, en nuestra opinión, deben ser probados, aportamos un primer paso para ofrecer un conjunto de pruebas para una biblioteca de aritmética de intervalos. Primero definimos un formato que permite el intercambio de casos de prueba, para que puedan ser leídos y probados fácilmente. Luego ofrecemos un primer conjunto de casos de prueba, para un conjunto seleccionado de funciones matemáticas. A continuación, examinamos cómo la biblioteca de aritmética de intervalos de Julia, IntervalArithmetic.jl, realmente realiza estas pruebas. Como este es un trabajo continuo, enumeramos las pruebas adicionales que consideramos importantes realizar.Files
cpe.7856.pdf
Files
(15.9 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:23ddb3f0b5f11741cdfe0f11b2cefff5
|
15.9 kB | Preview Download |
Additional details
Additional titles
- Translated title (Arabic)
- إطار عمل لاختبار المكتبات الحسابية الفاصلة وامتثالها لمعيار IEEE 1788-2015
- Translated title (French)
- Un cadre pour tester les bibliothèques arithmétiques d'intervalles et leur conformité à lanorme IEEE 1788-2015
- Translated title (Spanish)
- Un marco para probar las bibliotecas de aritmética de intervalos y su conformidad con IEEE 1788‐2015
Identifiers
- Other
- https://openalex.org/W4386328958
- DOI
- 10.1002/cpe.7856
References
- https://openalex.org/W128162483
- https://openalex.org/W1969213662
- https://openalex.org/W1999470254
- https://openalex.org/W2041313350
- https://openalex.org/W2054870455
- https://openalex.org/W2106801606
- https://openalex.org/W2154897437
- https://openalex.org/W2887397219
- https://openalex.org/W3165225498
- https://openalex.org/W4312283640