<span itemscope itemtype="http://schema.org/InformAction"><span style="display:none" itemprop="about" itemscope itemtype="http://schema.org/Person"><meta itemprop="description" content="Invitation from julianbrunner@gmail.com"/></span><span itemprop="object" itemscope itemtype="http://schema.org/Event"><div style=""><table cellspacing="0" cellpadding="8" border="0" summary="" style="width:100%;font-family:Arial,Sans-serif;border:1px Solid #ccc;border-width:1px 2px 2px 1px;background-color:#fff;"><tr><td><meta itemprop="eventStatus" content="http://schema.org/EventScheduled"/><h4 style="padding:6px 0;margin:0 0 4px 0;font-family:Arial,Sans-serif;font-size:13px;line-height:1.4;border:1px Solid #fff;background:#fff;color:#090;font-weight:normal"><strong>You have been invited to the following event.</strong></h4><div style="padding:2px"><span itemprop="publisher" itemscope itemtype="http://schema.org/Organization"><meta itemprop="name" content="Google Calendar"/></span><meta itemprop="eventId/googleCalendar" content="1gr759hhnfd4m1gvlplp3rqvf1"/><h3 style="padding:0 0 6px 0;margin:0;font-family:Arial,Sans-serif;font-size:16px;font-weight:bold;color:#222"><span itemprop="name">Verified Monadification and Memoization</span></h3><table style="display:inline-table" cellpadding="0" cellspacing="0" border="0" summary="Event details"><tr><td style="padding:0 1em 10px 0;font-family:Arial,Sans-serif;font-size:13px;color:#888;white-space:nowrap;width:90px" valign="top"><div><i style="font-style:normal">When</i></div></td><td style="padding-bottom:10px;font-family:Arial,Sans-serif;font-size:13px;color:#222" valign="top"><div style="text-indent:-1px"><time itemprop="startDate" datetime="20200219T130000Z"></time><time itemprop="endDate" datetime="20200219T133000Z"></time>Wed Feb 19, 2020 14:00 – 14:30 <span style="color:#888">Central European Time - Berlin</span></div></td></tr><tr><td style="padding:0 1em 10px 0;font-family:Arial,Sans-serif;font-size:13px;color:#888;white-space:nowrap;width:90px" valign="top"><div><i style="font-style:normal">Where</i></div></td><td style="padding-bottom:10px;font-family:Arial,Sans-serif;font-size:13px;color:#222" valign="top"><div style="text-indent:-1px"><span itemprop="location" itemscope itemtype="http://schema.org/Place"><span itemprop="name" class="notranslate">MI 00.09.038 (Turing)</span><span dir="ltr"> (<a href="https://www.google.com/maps/search/MI+00.09.038+%28Turing%29?hl=en" style="color:#20c;white-space:nowrap" target="_blank" itemprop="map">map</a>)</span></span></div></td></tr><tr><td style="padding:0 1em 10px 0;font-family:Arial,Sans-serif;font-size:13px;color:#888;white-space:nowrap;width:90px" valign="top"><div><i style="font-style:normal">Calendar</i></div></td><td style="padding-bottom:10px;font-family:Arial,Sans-serif;font-size:13px;color:#222" valign="top"><div style="text-indent:-1px">club2@mailbroy.informatik.tu-muenchen.de</div></td></tr><tr><td style="padding:0 1em 10px 0;font-family:Arial,Sans-serif;font-size:13px;color:#888;white-space:nowrap;width:90px" valign="top"><div><i style="font-style:normal">Who</i></div></td><td style="padding-bottom:10px;font-family:Arial,Sans-serif;font-size:13px;color:#222" valign="top"><table cellspacing="0" cellpadding="0"><tr><td style="padding-right:10px;font-family:Arial,Sans-serif;font-size:13px;color:#222;width:10px"><div style="text-indent:-1px"><span style="font-family:Courier New,monospace">&#x2022;</span></div></td><td style="padding-right:10px;font-family:Arial,Sans-serif;font-size:13px;color:#222"><div style="text-indent:-1px"><div><div style="margin:0 0 0.3em 0"><span class="notranslate">julianbrunner@gmail.com</span><span style="font-size:11px;color:#888"> - creator</span></div></div></div></td></tr><tr><td style="padding-right:10px;font-family:Arial,Sans-serif;font-size:13px;color:#222;width:10px"><div style="text-indent:-1px"><span style="font-family:Courier New,monospace">&#x2022;</span></div></td><td style="padding-right:10px;font-family:Arial,Sans-serif;font-size:13px;color:#222"><div style="text-indent:-1px"><div><div style="margin:0 0 0.3em 0"><span itemprop="attendee" itemscope itemtype="http://schema.org/Person"><span itemprop="name" class="notranslate">club2@mailbroy.informatik.tu-muenchen.de</span><meta itemprop="email" content="club2@mailbroy.informatik.tu-muenchen.de"/></span></div></div></div></td></tr></table></td></tr></table><div style="float:right;font-weight:bold;font-size:13px"> <a href="https://www.google.com/calendar/event?action=VIEW&eid=MWdyNzU5aGhuZmQ0bTFndmxwbHAzcnF2ZjEgY2x1YjJAbWFpbGJyb3kuaW5mb3JtYXRpay50dS1tdWVuY2hlbi5kZQ&tok=NTIjc2U2ZWJlM3RvZmY0Y2g1bm11bmlibTVtOThAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbTM1MWE3NmFmMWQ0OWRiMDkxY2FiZmMzNDhkNmEzYzM2ZThlNjY3YjE&ctz=Europe%2FBerlin&hl=en&es=0" style="color:#20c;white-space:nowrap" itemprop="url">more details »</a><br></div><div style="padding-bottom:15px;font-family:Arial,Sans-serif;font-size:13px;color:#222;white-space:pre-wrap!important;white-space:-moz-pre-wrap!important;white-space:-pre-wrap!important;white-space:-o-pre-wrap!important;white-space:pre;word-wrap:break-word"><span>Speaker: Florian Sextl<br>Type: Bachelor's Thesis Presentation<br>Abstract:<br>This thesis describes an approach to extend the Monadification and Memoization framework for the theorem prover Isabelle. This framework allows for introducing memoization into a program by embedding it into a specific monad. In addition, an automatic correctness proof for the monadified function is performed. However, the monadification method introduces a rather large structural overhead and only works for its own memoization monad. The goal of our extension approach was, therefore, to reduce the overhead and to allow for more monads. We developed a new monadification procedure that meets both objectives. From this, we derived a proof-of-concept reference implementation that proved to fulfill all new requirements while keeping the framework’s original functionalities. The usability of our approach was also examined for a real-world example, the Bellman-Ford algorithm. Despite this, there are limitations of our method as well. For instance, the generalization of usable monads comes with an increased implementation overhead for the user, as they have to handle monad-specific lemmata and effects. We nevertheless conclude that our approach is successful for a general setting and can be used to extend the existing framework.</span><meta itemprop="description" content="Speaker: Florian Sextl
Type: Bachelor's Thesis Presentation
Abstract:
This thesis describes an approach to extend the Monadification and Memoization framework for the theorem prover Isabelle. This framework allows for introducing memoization into a program by embedding it into a specific monad. In addition, an automatic correctness proof for the monadified function is performed. However, the monadification method introduces a rather large structural overhead and only works for its own memoization monad. The goal of our extension approach was, therefore, to reduce the overhead and to allow for more monads. We developed a new monadification procedure that meets both objectives. From this, we derived a proof-of-concept reference implementation that proved to fulfill all new requirements while keeping the framework’s original functionalities. The usability of our approach was also examined for a real-world example, the Bellman-Ford algorithm. Despite this, there are limitations of our method as well. For instance, the generalization of usable monads comes with an increased implementation overhead for the user, as they have to handle monad-specific lemmata and effects. We nevertheless conclude that our approach is successful for a general setting and can be used to extend the existing framework."/></div></div><p style="color:#222;font-size:13px;margin:0"><span style="color:#888">Going (club2@mailbroy.informatik.tu-muenchen.de)?   </span><wbr><strong><span itemprop="potentialaction" itemscope itemtype="http://schema.org/RsvpAction"><meta itemprop="attendance" content="http://schema.org/RsvpAttendance/Yes"/><span itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler"><link itemprop="method" href="http://schema.org/HttpRequestMethod/GET"/><a href="https://www.google.com/calendar/event?action=RESPOND&eid=MWdyNzU5aGhuZmQ0bTFndmxwbHAzcnF2ZjEgY2x1YjJAbWFpbGJyb3kuaW5mb3JtYXRpay50dS1tdWVuY2hlbi5kZQ&rst=1&tok=NTIjc2U2ZWJlM3RvZmY0Y2g1bm11bmlibTVtOThAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbTM1MWE3NmFmMWQ0OWRiMDkxY2FiZmMzNDhkNmEzYzM2ZThlNjY3YjE&ctz=Europe%2FBerlin&hl=en&es=0" style="color:#20c;white-space:nowrap" itemprop="url">Yes</a></span></span><span style="margin:0 0.4em;font-weight:normal"> - </span><span itemprop="potentialaction" itemscope itemtype="http://schema.org/RsvpAction"><meta itemprop="attendance" content="http://schema.org/RsvpAttendance/Maybe"/><span itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler"><link itemprop="method" href="http://schema.org/HttpRequestMethod/GET"/><a href="https://www.google.com/calendar/event?action=RESPOND&eid=MWdyNzU5aGhuZmQ0bTFndmxwbHAzcnF2ZjEgY2x1YjJAbWFpbGJyb3kuaW5mb3JtYXRpay50dS1tdWVuY2hlbi5kZQ&rst=3&tok=NTIjc2U2ZWJlM3RvZmY0Y2g1bm11bmlibTVtOThAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbTM1MWE3NmFmMWQ0OWRiMDkxY2FiZmMzNDhkNmEzYzM2ZThlNjY3YjE&ctz=Europe%2FBerlin&hl=en&es=0" style="color:#20c;white-space:nowrap" itemprop="url">Maybe</a></span></span><span style="margin:0 0.4em;font-weight:normal"> - </span><span itemprop="potentialaction" itemscope itemtype="http://schema.org/RsvpAction"><meta itemprop="attendance" content="http://schema.org/RsvpAttendance/No"/><span itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler"><link itemprop="method" href="http://schema.org/HttpRequestMethod/GET"/><a href="https://www.google.com/calendar/event?action=RESPOND&eid=MWdyNzU5aGhuZmQ0bTFndmxwbHAzcnF2ZjEgY2x1YjJAbWFpbGJyb3kuaW5mb3JtYXRpay50dS1tdWVuY2hlbi5kZQ&rst=2&tok=NTIjc2U2ZWJlM3RvZmY0Y2g1bm11bmlibTVtOThAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbTM1MWE3NmFmMWQ0OWRiMDkxY2FiZmMzNDhkNmEzYzM2ZThlNjY3YjE&ctz=Europe%2FBerlin&hl=en&es=0" style="color:#20c;white-space:nowrap" itemprop="url">No</a></span></span></strong>    <wbr><a href="https://www.google.com/calendar/event?action=VIEW&eid=MWdyNzU5aGhuZmQ0bTFndmxwbHAzcnF2ZjEgY2x1YjJAbWFpbGJyb3kuaW5mb3JtYXRpay50dS1tdWVuY2hlbi5kZQ&tok=NTIjc2U2ZWJlM3RvZmY0Y2g1bm11bmlibTVtOThAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbTM1MWE3NmFmMWQ0OWRiMDkxY2FiZmMzNDhkNmEzYzM2ZThlNjY3YjE&ctz=Europe%2FBerlin&hl=en&es=0" style="color:#20c;white-space:nowrap" itemprop="url">more options »</a></p></td></tr><tr><td style="background-color:#f6f6f6;color:#888;border-top:1px Solid #ccc;font-family:Arial,Sans-serif;font-size:11px"><p>Invitation from <a href="https://www.google.com/calendar/" target="_blank" style="">Google Calendar</a></p><p>You are receiving this courtesy email at the account club2@mailbroy.informatik.tu-muenchen.de because you are an attendee of this event.</p><p>To stop receiving future updates for this event, decline this event. Alternatively you can sign up for a Google account at https://www.google.com/calendar/ and control your notification settings for your entire calendar.</p><p>Forwarding this invitation could allow any recipient to send a response to the organizer and be added to the guest list, or invite others regardless of their own invitation status, or to modify your RSVP. <a href="https://support.google.com/calendar/answer/37135#forwarding">Learn More</a>.</p></td></tr></table></div></span></span>