An example of goal-directed, calculational proof
Guardado en:
| Publicado en: | Journal of Functional Programming vol. 34 (Dec 2024) |
|---|---|
| Autor principal: | |
| Otros Autores: | , |
| Publicado: |
Cambridge University Press
|
| Materias: | |
| Acceso en línea: | Citation/Abstract Full Text - PDF |
| Etiquetas: |
Sin Etiquetas, Sea el primero en etiquetar este registro!
|
| Resumen: | An equivalence relation can be constructed from a given (homogeneous, binary) relation in two steps: first, construct the smallest reflexive and transitive relation containing the given relation (the “star” of the relation) and, second, construct the largest symmetric relation that is included in the result of the first step. The fact that the final result is also reflexive and transitive (as well as symmetric), and thus an equivalence relation, is not immediately obvious, although straightforward to prove. Rather than prove that the defining properties of reflexivity and transitivity are satisfied, we establish reflexivity and transitivity constructively by exhibiting a starth root—in a way that emphasises the creative process in its construction. The resulting construction is fundamental to algorithms that determine the strongly connected components of a graph as well as the decomposition of a graph into its strongly connected components together with an acyclic graph connecting such components. |
|---|---|
| ISSN: | 0956-7968 1469-7653 |
| DOI: | 10.1017/S095679682400011X |
| Fuente: | Advanced Technologies & Aerospace Database |