<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>VeriFixer Project</title><link>https://verifixer.github.io/</link><atom:link href="https://verifixer.github.io/index.xml" rel="self" type="application/rss+xml"/><description>VeriFixer Project</description><generator>Hugo Blox Builder (https://hugoblox.com)</generator><language>en-us</language><lastBuildDate>Mon, 24 Oct 2022 00:00:00 +0000</lastBuildDate><image><url>https://verifixer.github.io/media/icon_hu7058158995025993571.png</url><title>VeriFixer Project</title><link>https://verifixer.github.io/</link></image><item><title>Example Event</title><link>https://verifixer.github.io/event/example/</link><pubDate>Sat, 01 Jun 2030 13:00:00 +0000</pubDate><guid>https://verifixer.github.io/event/example/</guid><description>&lt;p>Slides can be added in a few ways:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Create&lt;/strong> slides using Wowchemy&amp;rsquo;s &lt;a href="https://docs.hugoblox.com/managing-content/#create-slides" target="_blank" rel="noopener">&lt;em>Slides&lt;/em>&lt;/a> feature and link using &lt;code>slides&lt;/code> parameter in the front matter of the talk file&lt;/li>
&lt;li>&lt;strong>Upload&lt;/strong> an existing slide deck to &lt;code>static/&lt;/code> and link using &lt;code>url_slides&lt;/code> parameter in the front matter of the talk file&lt;/li>
&lt;li>&lt;strong>Embed&lt;/strong> your slides (e.g. Google Slides) or presentation video on this page using &lt;a href="https://docs.hugoblox.com/writing-markdown-latex/" target="_blank" rel="noopener">shortcodes&lt;/a>.&lt;/li>
&lt;/ul>
&lt;p>Further event details, including page elements such as image galleries, can be added to the body of this page.&lt;/p></description></item><item><title>Can Large Language Models Help Students Prove Software Correctness? An Experimental Study with Dafny</title><link>https://verifixer.github.io/publication/2025/sefm_dafnystudy/</link><pubDate>Sun, 07 Sep 2025 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/publication/2025/sefm_dafnystudy/</guid><description/></item><item><title>Specification-Guided Repair of Arithmetic Errors in Dafny Programs using LLMs</title><link>https://verifixer.github.io/publication/2025/sefm_repair/</link><pubDate>Sun, 07 Sep 2025 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/publication/2025/sefm_repair/</guid><description/></item><item><title>What Challenges do Developer Face when using Verification-Aware Languages?</title><link>https://verifixer.github.io/publication/2025/issre/</link><pubDate>Sun, 20 Jul 2025 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/publication/2025/issre/</guid><description/></item><item><title>Two Amazon Research Awards on Automated Reasoning!</title><link>https://verifixer.github.io/post/2025-06-03-amazon-research-awards/</link><pubDate>Tue, 03 Jun 2025 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/post/2025-06-03-amazon-research-awards/</guid><description>&lt;p>Congratulations to &lt;a href="https://archimendes.com" target="_blank" rel="noopener">Alexandra Mendes&lt;/a> and &lt;a href="https://joaoff.com" target="_blank" rel="noopener">João F. Ferreira&lt;/a>, each awarded an Amazon Research Award in Automated Reasoning!&lt;/p>
&lt;p>Alexandra was awarded an Amazon Research Award for her proposal &amp;ldquo;&lt;em>Overcoming Barriers to the Adoption of Verification-Aware Languages&lt;/em>&amp;rdquo;, focusing on Dafny.
João&amp;rsquo;s proposal is on &amp;ldquo;&lt;em>Polyglot Automated Program Repair for Infrastructure as Code&lt;/em>&amp;rdquo;.&lt;/p>
&lt;p>&lt;em>&lt;b>If you are looking for research positions on these topics, get in touch! We have several positions to offer. See also our &lt;a href="https://sr-lab.github.io/opportunities" target="_blank" rel="noopener">opportunities page&lt;/a>.&lt;/b>&lt;/em>&lt;/p>
&lt;p>Many thanks to Amazon Science for supporting this research! It&amp;rsquo;s a recognition of the work that we do at the &lt;a href="https://sr-lab.github.io/" target="_blank" rel="noopener">Software Reliability Lab&lt;/a>!&lt;/p>
&lt;p>You can read more about the program and see the full list of recipients here: &lt;a href="https://www.amazon.science/research-awards/program-updates/70-amazon-research-award-recipients-announced" target="_blank" rel="noopener">70 Amazon Research Award recipients announced&lt;/a>&lt;/p>
&lt;p>Learn more about the program on the &lt;a href="https://www.amazon.science/research-awards" target="_blank" rel="noopener">Amazon Science website&lt;/a>.&lt;/p>
&lt;h2 id="related-news-and-mentions">Related News and Mentions&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://www.amazon.science/research-awards/program-updates/70-amazon-research-award-recipients-announced" target="_blank" rel="noopener">Official announcement: 70 Amazon Research Award recipients announced&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://dei.fe.up.pt/en/blog/2025/06/04/alexandra-mendes-recognised-with-an-amazon-research-award/" target="_blank" rel="noopener">University of Porto (DEI, FEUP): Alexandra Mendes recognised with an &amp;ldquo;Amazon Research Award&amp;rdquo;&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://cmuportugal.org/media/cmu-portugal-visiting-researchers-won-amazon-research-award/" target="_blank" rel="noopener">CMU Portugal Visiting Researchers won Amazon Research Award&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>New research paper to be presented at ECOOP 2025</title><link>https://verifixer.github.io/post/25-05-25-ecoop-contracts/</link><pubDate>Sun, 25 May 2025 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/post/25-05-25-ecoop-contracts/</guid><description>&lt;p>The VeriFixer team will present a new research paper this summer at &lt;a href="https://2025.ecoop.org" target="_blank" rel="noopener">ECOOP 2025&lt;/a>, a leading international conference in programming languages and software engineering.&lt;/p>
&lt;p>At &lt;strong>&lt;a href="https://2025.ecoop.org" target="_blank" rel="noopener">ECOOP 2025&lt;/a>&lt;/strong>, we will present &lt;em>Contract Usage and Evolution in Android Mobile Applications&lt;/em>, the first large-scale empirical study on the use and evolution of design-by-contract constructs in Android apps written in Java and Kotlin. Although focused on mobile software, this research provides valuable insights into how contracts evolve over time, the risks of unsafe specification changes, and the importance of annotations and language-level features for promoting software correctness—insights that inform VeriFixer&amp;rsquo;s mission of improving software reliability through intelligent verification and fixing.&lt;/p>
&lt;p>This paper reflects VeriFixer&amp;rsquo;s commitment to building a principled and practical foundation for reliable software systems. We are excited to share our findings with the community and look forward to engaging discussions at ECOOP 2025!&lt;/p></description></item><item><title>Contract Usage and Evolution in Android Mobile Applications</title><link>https://verifixer.github.io/publication/2025/ecoop/</link><pubDate>Fri, 28 Feb 2025 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/publication/2025/ecoop/</guid><description/></item><item><title>Contact</title><link>https://verifixer.github.io/contact/</link><pubDate>Mon, 24 Oct 2022 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/contact/</guid><description/></item><item><title>People</title><link>https://verifixer.github.io/people/</link><pubDate>Mon, 24 Oct 2022 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/people/</guid><description/></item><item><title>Tour</title><link>https://verifixer.github.io/tour/</link><pubDate>Mon, 24 Oct 2022 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/tour/</guid><description/></item><item><title/><link>https://verifixer.github.io/admin/config.yml</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/admin/config.yml</guid><description/></item><item><title>VeriFixer: Automated Repair for Verification-Aware Programming Languages</title><link>https://verifixer.github.io/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://verifixer.github.io/about/</guid><description>&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="VeriFixer Logo" srcset="
/about/VeriFixer-Logo-300dpi_hu15148033116618986441.webp 400w,
/about/VeriFixer-Logo-300dpi_hu13584210720859406053.webp 760w,
/about/VeriFixer-Logo-300dpi_hu18401898883729655883.webp 1200w"
src="https://verifixer.github.io/about/VeriFixer-Logo-300dpi_hu15148033116618986441.webp"
width="760"
height="244"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>Writing software without bugs is not trivial. Automated Program Repair (APR), the process of automatically identifying a fix for a given bug, is a promising approach to increasing software quality by helping developers in the process of correcting their programs. However, in general, APR is based on weak correctness criteria, such as a test-suite, in which case the repaired program is considered fixed when it passes all tests successfully. This provides assurances to a certain degree but it does not guarantee that the program is correct. As Edsger Dijkstra famously put it: testing can show the presence of errors but never their absence.&lt;/p>
&lt;p>Testing is enough in many contexts, but, in critical systems, further assurances are needed which can be achieved through software verification, which mathematically assures that the software behaves exactly as intended, with respect to a certain formal specification or property. Several verification-aware programming languages and systems, where logical constructs such as pre- and post-conditions, invariants, and assertions provide assurances about the correctness of the program, are available and enable verification alongside code development. When using these to write code, bugs are usually flagged by a verifier which warns the user of specification violations. However, despite the availability of formal specifications that can act as strong correctness criteria for APR, users have to fix their programs manually since work on APR for verification-aware languages is still scarce.&lt;/p>
&lt;p>&lt;strong>The main goal of this project is to develop techniques for the automated repair of programs written in a verification-aware programming language.&lt;/strong> Due to the exploratory nature of this project, we will focus on Dafny programs (Leino, 2010), but the techniques will be applicable to other verification-aware languages and systems, such as VCC (Dahlweid et al., 2009), KeY (Ahrendt, 2016), and Verus (Verus, 2022). The repair will be guided by the formal specification, i.e., the formal specification will be assumed to be correct and a program that does not meet the specification will be automatically repaired to satisfy it. The short-term vision is to build an open-source, proof-of-concept, tool that supports users in the correction of bugs in verification-aware programming languages, and to provide to the community benchmark datasets from real-world code examples to support further developments in this area, and against which the outcomes of this project will be assessed. &lt;strong>The overall goal is to encourage a wider adoption of verification-aware programming languages and to reduce the burden of repairing programs written using them.&lt;/strong> The outcomes of this project will result from a close collaboration between researchers from INESC TEC, INESC-ID Lisboa, and Carnegie Mellon.&lt;/p>
&lt;h2 id="contacts">Contacts&lt;/h2>
&lt;p>&lt;strong>Principal Investigator (INESC TEC):&lt;/strong> &lt;a href="https://archimendes.com" target="_blank" rel="noopener">Alexandra Mendes&lt;/a>&lt;/p>
&lt;p>&lt;a href="https://verifixer.github.io/people">&lt;strong>Meet the Team&lt;/strong>&lt;/a>&lt;/p>
&lt;p>&lt;strong>Research and Academic Institutions:&lt;/strong>&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://www.inesctec.pt/en" target="_blank" rel="noopener">INESC TEC: Instituto de Engenharia de Sistemas e Computadores, Tecnologia e Ciência&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://www.cmu.edu" target="_blank" rel="noopener">Carnegie Mellon University&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://inesc-id.pt" target="_blank" rel="noopener">INESC-ID: Instituto de Engenharia de Sistemas e Computadores, Investigação e Desenvolvimento em Lisboa (INESC-ID)&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://tecnico.ulisboa.pt" target="_blank" rel="noopener">Instituto Superior Técnico, Universidade de Lisboa&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://www.up.pt/feup/en" target="_blank" rel="noopener">Faculty of Engineering, University of Porto&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="funding">Funding&lt;/h2>
&lt;p>VeriFixer is funded by Fundação para a Ciência e a Tecnologia (FCT).
&lt;strong>Funded amount: 49.354,41 €&lt;/strong>&lt;/p>
&lt;p>&lt;a href="https://sciproj.ptcris.pt/176595PRJ/" target="_blank" rel="noopener">More details in the SciPROJ portal&lt;/a>.&lt;/p></description></item></channel></rss>