<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Home - Raimondas Sasnauskas</title>
    <link>https://sasnauskas.eu/</link>
    <description>Recent content on Home - Raimondas Sasnauskas</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 22 Dec 2020 21:48:11 +0100</lastBuildDate>
    
	<atom:link href="https://sasnauskas.eu/index.xml" rel="self" type="application/rss+xml" />
    
    
    
    <item>
      <title>Finding Software Bugs Using Symbolic Execution</title>
      <link>https://sasnauskas.eu/finding-software-bugs-using-symbolic-execution/</link>
      <pubDate>Tue, 22 Dec 2020 21:48:11 +0100</pubDate>
      
      <guid>https://sasnauskas.eu/finding-software-bugs-using-symbolic-execution/</guid>
      <description>The idea of dynamic symbolic execution is to execute a piece of software on any input. All possible execution paths are explored simultaneously without specifying concrete values. Consider the following example where the input x is unknown, i.e., symbolic:
if (x &amp;lt; 0) { // ... } else if (x &amp;gt; 100) { // ... } else { assert(&amp;#34;should not reach this!&amp;#34;) } Symbolic execution runs this code on all three execution paths (x&amp;lt;0, x&amp;gt;100, 0&amp;lt;=x&amp;lt;=100) and generates three concrete test cases: x=-1, x=101 and x=23 after hitting the assertion.</description>
    </item>
    
    
    
    <item>
      <title>Solving River Crossing Puzzles With MiniZinc</title>
      <link>https://sasnauskas.eu/solving-river-crossing-puzzles-with-minizinc/</link>
      <pubDate>Wed, 09 Dec 2020 23:45:43 +0100</pubDate>
      
      <guid>https://sasnauskas.eu/solving-river-crossing-puzzles-with-minizinc/</guid>
      <description>The objective of river crossing puzzles is to bring items from one river bank to the other in the fewest possible steps. One prominent puzzle is the wolf, goat and cabbage problem. From Wikipedia:
&amp;ldquo;Once upon a time a farmer went to a market and purchased a wolf, a goat, and a cabbage. On his way home, the farmer came to the bank of a river and rented a boat. But crossing the river by boat, the farmer could carry only himself and a single one of his purchases: the wolf, the goat, or the cabbage.</description>
    </item>
    
    
    
    
  </channel>
</rss>
