Programming from Galois connections
SC Mu, JN Oliveira - The Journal of Logic and Algebraic Programming, 2012 - Elsevier
Problem statements often resort to superlatives such as in eg “… the smallest such
number”,“… the best approximation”,“… the longest such list” which lead to specifications …
number”,“… the best approximation”,“… the longest such list” which lead to specifications …
Alloy meets the algebra of programming: A case study
JN Oliveira, MA Ferreira - IEEE Transactions on Software …, 2012 - ieeexplore.ieee.org
Relational algebra offers to software engineering the same degree of conciseness and
calculational power as linear algebra in other engineering disciplines. Binary relations play …
calculational power as linear algebra in other engineering disciplines. Binary relations play …
Extended static checking by calculation using the pointfree transform
JN Oliveira - International LerNet ALFA Summer School on …, 2008 - Springer
The pointfree transform offers to the predicate calculus what the Laplace transform offers to
the differential/integral calculus: the possibility of changing the underlying mathematical …
the differential/integral calculus: the possibility of changing the underlying mathematical …
Constructive Galois connections: Taming the Galois connection framework for mechanized metatheory
D Darais, D Van Horn - ACM SIGPLAN Notices, 2016 - dl.acm.org
Galois connections are a foundational tool for structuring abstraction in semantics and their
use lies at the heart of the theory of abstract interpretation. Yet, mechanization of Galois …
use lies at the heart of the theory of abstract interpretation. Yet, mechanization of Galois …
Type checking cryptography implementations
Cryptographic software development is a challenging field: high performance must be
achieved, while ensuring correctness and compliance with low-level security policies. CAO …
achieved, while ensuring correctness and compliance with low-level security policies. CAO …
Mechanizing abstract interpretation
D Darais - 2017 - search.proquest.com
It is important when develo** software to verify the absence of undesirable behavior such
as crashes, bugs and security vulnerabilities. Some settings require high assurance in …
as crashes, bugs and security vulnerabilities. Some settings require high assurance in …
Proof patterns for formal methods
L Freitas, I Whiteside - FM 2014: Formal Methods: 19th International …, 2014 - Springer
Abstract Design patterns represent a highly successful technique in software engineering,
giving a reusable 'best practice'solution to commonly occurring problems in software design …
giving a reusable 'best practice'solution to commonly occurring problems in software design …
Constructive galois connections
D Darais, D Van Horn - Journal of Functional Programming, 2019 - cambridge.org
Galois connections are a foundational tool for structuring abstraction in semantics, and their
use lies at the heart of the theory of abstract interpretation. Yet, mechanization of Galois …
use lies at the heart of the theory of abstract interpretation. Yet, mechanization of Galois …
Calculating graph algorithms for dominance and shortest path
We calculate two iterative, polynomial-time graph algorithms from the literature: a
dominance algorithm and an algorithm for the single-source shortest path problem. Both …
dominance algorithm and an algorithm for the single-source shortest path problem. Both …
[HTML][HTML] Formal derivation of greedy algorithms from relational specifications: a tutorial
YH Chiang, SC Mu - Journal of Logical and Algebraic Methods in …, 2016 - Elsevier
Many programming tasks can be specified as optimisation problems in which a relation is
used to generate all possible solutions, from which we wish to choose an optimal one. A …
used to generate all possible solutions, from which we wish to choose an optimal one. A …