Ewen Maclean

Learn More
We present a computational framework for chord invention based on a cognitive-theoretic perspective on conceptual blending. The framework builds on algebraic specifications, and solves two musicological problems. It automatically finds transitions between chord progressions of different keys or idioms, and it substitutes chords in a chord progression by(More)
We present a novel technique for combining statistical machine learning for proof-pattern recognition with symbolic methods for lemma discovery. The resulting tool, ACL2(ml), gathers proof statistics and uses statistical pattern-recognition to pre-processes data from libraries, and then suggests auxiliary lemmas in new proofs by analogy with already seen(More)
We present a framework for conceptual blending – a concept invention method that is advocated in cognitive science as a fundamental, and uniquely human engine for creative thinking. Herein, we employ the search capabilities of ASP to find commonalities among input concepts as part of the blending process , and we show how our approach fits within a(More)
In [2] we introduced a system which used term synthesis to generate correct loop invariants. The CORE system extends this and is capable of automatically proving fully functional properties of programs involving pointers, by utilising existing systems to eliminate shape parts, and extracting function from the structural statements. The system is capable of(More)
We present a technique for refining incorrect or insufficiently strong loop invariants in correctness proofs for imperative programs. We rely on previous work [16] in combining program analysis and Proof Planning, and exploit IsaPlanner's use of meta-variables and goal-naming to generate correct loop invariants. We present a simple example in detail and(More)