Website/slides/cse662fa2015/CSE66233-LogicalFoundations.html/index.html

1044 lines
78 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title></title>
<script type="text/javascript" src="outliner.js"></script><style type="text/css">
img.status {
margin-left: 2px; margin-right: 2px; margin-top: 2px; height: 11px; width: 11px;
}
img.checkbox-column {
height: 11px; width: 11px; vertical-align: top; margin-top: 3px;
}
img.leaf {
margin-left: 3px; margin-right:3px; margin-top: 2px; margin-bottom: 3px; height: 6px; width 6px;
}
img.parent {
margin-left: 3px; margin-right:3px; margin-top: 2px; height: 10px; width: 10px;
}
th {
vertical-align: bottom;
}
td {
vertical-align: top;
}
td,th {
empty-cells: show;
}
.top-right-border {
}
.no-border {
border-bottom: 0px;
border-left: 0px;
}
table {
font-family: Helvetica, sans-serif;
font-size: 12px;
font-family: "Helvetica Neue", sans-serif; font-size: 13px;
}
.wholeDocument {
font-family: "Helvetica Neue", sans-serif; font-size: 13px;
}
td.subcell {
border: none;
}
td.content {
padding-left: 4px;
padding-bottom: 2px;
padding-top: 1px;
padding-right: 3px;
}
.full {
height: 100%;
}
.heighthack {
height: 17px;
}
div.titlepadding {
padding-right:3px;
padding-left:6px;
padding-bottom:3px;
padding-top: 2px;
}
.summary_node {
background: rgba(0,0,0,.12);
margin-bottom: 1px;
}
div.column {
padding-right: 3px;
padding-left: 4px;
padding-top: 0px;
padding-bottom: 0px;
margin-right: 1px;
}
.labelpadding {
padding-right: 3px;
padding-top: 1px;
padding-left: 2px;
}
.indicator {
white-space: nowrap;
text-align:right;
margin-right: 0px;
vertical-align: top;
padding-top: 1px;
padding-left: 0px;
}
.wholedocgutter {
}
div.row {
}
div.headerRow {
}
.expanded {
display: inline;
}
.collapsed {
display: none;
}
div.palette-hit-zone {
position: fixed;
bottom: 0px;
height: 33%;
left:50%;
width: 66%;
margin-left: -33%;
}
div.floating-palette {
-webkit-border-radius: 5px;
-webkit-transition: opacity is fade-in-out;
-webkit-transition-duration: 1s;
background-color: rgb(64, 64, 64);
opacity:0.7;
width: 88px;
height: 44px;
position: fixed;
bottom: 20px;
left: 50%;
margin-left: -44px;
}
div.palette-cell {
opacity:1;
margin-top: 6px;
margin-bottom: 6px;
position: absolute;
height: 32px;
width: 32px;
}
div.cell-divider {
position: absolute;
margin-top: 6px;
margin-bottom: 6px;
margin-left: 44px;
height: 32px;
width:0px;
position:absolute;
left:0px;
border-right:rgb(207, 207, 207) 2px solid;
}
.note {
padding-left: 5px;
padding-right: 3px;
border: none;
color:rgb(84,84,84) ; font-size: 11px;font-size: 11px;
}
.note-bg {
}
/* Total table width is 924
Adjusted table width is 979 */
.wholething {
width: auto;
}
table.row {
width: 924px;
}
.col_width1 {
width: 924px; /* Actual width is 924 */
}
.col1 {
}
.colbackground1 {
}
/* Level Styles */
.columntitle {
font-weight: 600;
}
.ns-eUsXLp0Pv1g-Heading1 {
color:rgb(50,50,50) ; font-family: "Helvetica Neue", sans-serif; font-weight: 300; font-size: 30px;}
.ns-d4-frBYwy2X-Heading2 {
color:rgb(50,50,50) ; font-family: "Helvetica Neue", sans-serif; font-size: 18px;}
.ns-kRw332h0q-G-Heading3 {
font-family: "Helvetica Neue", sans-serif; font-weight: 600; font-size: 13px;}
.ns-nU7Pax9sHwm-HighlightYellow {
}
.ns-m6c_M2fT6yP-HighlightRed {
}
.ns-auoqZ5xVKeG-HighlightGreen {
}
.ns-hE9mXgl4a8m-Purple {
color:rgb(150,97,207) ; }
.ns-l2kopvXC4ak-Blue {
color:rgb(58,142,237) ; }
.ns-f7F2187eZ56-Bondi {
color:rgb(0,191,192) ; }
.ns-kJhkVDl2Xsd-Green {
color:rgb(103,187,53) ; }
.ns-inNRQJ-da6E-Yellow {
color:rgb(255,187,0) ; }
.ns-nAm7imW-teW-Orange {
color:rgb(255,144,77) ; }
.ns-jtC-ndQ7Pcw-Red {
color:rgb(242,96,119) ; }
.ns-dI8s4BxgdIs-Graphite {
color:rgb(107,124,165) ; }
.ns-bg-eUsXLp0Pv1g-Heading1 {
}
.ns-bg-d4-frBYwy2X-Heading2 {
}
.ns-bg-kRw332h0q-G-Heading3 {
}
.ns-bg-nU7Pax9sHwm-HighlightYellow {
background-color:rgba(255,187,0,0.25) ; }
.ns-bg-m6c_M2fT6yP-HighlightRed {
background-color:rgba(242,96,119,0.25) ; }
.ns-bg-auoqZ5xVKeG-HighlightGreen {
background-color:rgba(103,187,53,0.25) ; }
.ns-bg-hE9mXgl4a8m-Purple {
}
.ns-bg-l2kopvXC4ak-Blue {
}
.ns-bg-f7F2187eZ56-Bondi {
}
.ns-bg-kJhkVDl2Xsd-Green {
}
.ns-bg-inNRQJ-da6E-Yellow {
}
.ns-bg-nAm7imW-teW-Orange {
}
.ns-bg-jtC-ndQ7Pcw-Red {
}
.ns-bg-dI8s4BxgdIs-Graphite {
}
.ns-gutter-eUsXLp0Pv1g-Heading1 {
}
.ns-gutter-d4-frBYwy2X-Heading2 {
}
.ns-gutter-kRw332h0q-G-Heading3 {
}
.ns-gutter-nU7Pax9sHwm-HighlightYellow {
}
.ns-gutter-m6c_M2fT6yP-HighlightRed {
}
.ns-gutter-auoqZ5xVKeG-HighlightGreen {
}
.ns-gutter-hE9mXgl4a8m-Purple {
}
.ns-gutter-l2kopvXC4ak-Blue {
}
.ns-gutter-f7F2187eZ56-Bondi {
}
.ns-gutter-kJhkVDl2Xsd-Green {
}
.ns-gutter-inNRQJ-da6E-Yellow {
}
.ns-gutter-nAm7imW-teW-Orange {
}
.ns-gutter-jtC-ndQ7Pcw-Red {
}
.ns-gutter-dI8s4BxgdIs-Graphite {
}
</style>
</head>
<body class="wholeDocument"><table cellspacing="0" cellpadding="0" class="top-right-border"><tr><td class="wholething no-border">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="n9Cr4BPjkMA"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor1"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level1 levelguttercolor1" style="width: 9px;"></td>
<td class=" subcell wholedocgutter indicator level1 levelguttercolor1" style="width: 15px;"><img onmousedown="ioSwitch('pn9Cr4BPjkMA', event.shiftKey)" id="in9Cr4BPjkMA" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level1 levelguttercolor1" style=" width: 1px; "></td>
<td class=" content level1 subcell">Datalog<br>
</td>
</tr></table></div></td></tr></table>
<div id="pn9Cr4BPjkMA" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="jw6i7QfKlHP"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor2"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level2 levelguttercolor2" style="width: 25px;"></td>
<td class=" subcell wholedocgutter indicator level2 levelguttercolor2" style="width: 15px;"><img onmousedown="ioSwitch('pjw6i7QfKlHP', event.shiftKey)" id="ijw6i7QfKlHP" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level2 levelguttercolor2" style=" width: 1px; "></td>
<td class=" content level2 subcell">Propositional Calculus (0th order logic)<br>
</td>
</tr></table></div></td></tr></table>
<div id="pjw6i7QfKlHP" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="eCh11dKzQhG"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Facts (P), Basic operations: (Not, And, Or), Implication<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="ooeE4Az34-X"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Example Facts: AliceWentToTheStore, BobWentToTheStore, AliceWentToHome<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="aeKcnMpGIXB"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img onmousedown="ioSwitch('paeKcnMpGIXB', event.shiftKey)" id="iaeKcnMpGIXB" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Implication:<br>
</td>
</tr></table></div></td></tr></table>
<div id="paeKcnMpGIXB" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="nA-infjIW8W"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell"> (if P and Q then R)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="fLAa2UWCvl0"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">=== R \or \not P \or \not Q<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="bUtEc-RwiCO"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">=== “Horn Clause”<br>
</td>
</tr></table></div></td></tr></table>
</div>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="iJ88YrQNa7u"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor2"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level2 levelguttercolor2" style="width: 25px;"></td>
<td class=" subcell wholedocgutter indicator level2 levelguttercolor2" style="width: 15px;"><img onmousedown="ioSwitch('piJ88YrQNa7u', event.shiftKey)" id="iiJ88YrQNa7u" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level2 levelguttercolor2" style=" width: 1px; "></td>
<td class=" content level2 subcell">1st order logic<br>
</td>
</tr></table></div></td></tr></table>
<div id="piJ88YrQNa7u" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="h-iLrTm783e"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Goal: Quantification <br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="nBGJtVI5CmJ"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Challenge, need way to enumerate classes/sets of facts<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="jGpim8AN38q"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Groups of facts: WentTo(Store,<span class="" style='font-family: "Helvetica", sans-serif; font-size: 12px;'> </span>Alice), WentTo(Store<span class="" style='font-family: "Helvetica", sans-serif; font-size: 12px;'>, </span>Bob), WentTo(Home, Alice)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="eZEmpGRaOik"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">For all facts in a group (\forall) a property holds<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="lcsRHWqfuhi"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">There exists a fact in a group (\exists) such that a property holds<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="gOdPCIIC9sG"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img onmousedown="ioSwitch('pgOdPCIIC9sG', event.shiftKey)" id="igOdPCIIC9sG" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">New way to discuss implication:<br>
</td>
</tr></table></div></td></tr></table>
<div id="pgOdPCIIC9sG" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="gXQ0QMT-vY3"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Given one or more facts P(X,Y), Q(X), …., “infer” a new fact R(Y)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="mbaCb02g0T9"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">If WentTo(X, Y) and ShoppingAt(X) then ShoppingDone(Y)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="osK_9_fqcSd"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">\forall Y, \exists X: If P(X,Y) and Q(X) then R(Y)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="nz9QDa-aXeQ"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">\forall Y, \exists X: \not P(X,Y) \or \not Q(X) \or R(Y)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="avkzsbfGmMb"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Which elements of R must be true?<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="ajGs-gTvL4k"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">SELECT Y FROM P NATURAL JOIN Q INTO R<br>
</td>
</tr></table></div></td></tr></table>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="jeGl0l7Rdey"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img onmousedown="ioSwitch('pjeGl0l7Rdey', event.shiftKey)" id="ijeGl0l7Rdey" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Datalog<br>
</td>
</tr></table></div></td></tr></table>
<div id="pjeGl0l7Rdey" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="oYmm-AzjM9O"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">R(Y) -= P(X,Y), Q(X)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="gcN8Py1KRaz"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Head, Body<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="bGZQApaQkYY"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img onmousedown="ioSwitch('pbGZQApaQkYY', event.shiftKey)" id="ibGZQApaQkYY" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Find values of Y for which R is true?<br>
</td>
</tr></table></div></td></tr></table>
<div id="pbGZQApaQkYY" class="expanded"><table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="mZ-7PZ9Bkas"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Find a value of X for which P(X,Y) and Q(X) are true<br>
</td>
</tr></table></div></td></tr></table></div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="bWx3NV7B2Pm"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">What about R(Y, Z) -= P(X,Y), Q(X)<br>
</td>
</tr></table></div></td></tr></table>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="oFTodIptICr"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img onmousedown="ioSwitch('poFTodIptICr', event.shiftKey)" id="ioFTodIptICr" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Alternative View:<br>
</td>
</tr></table></div></td></tr></table>
<div id="poFTodIptICr" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="gHXPGB1wXRT"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img onmousedown="ioSwitch('pgHXPGB1wXRT', event.shiftKey)" id="igHXPGB1wXRT" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">R(Y) is a function<br>
</td>
</tr></table></div></td></tr></table>
<div id="pgHXPGB1wXRT" class="expanded"><table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="hSUjzSfyFbn"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Dom =&gt; Bool<br>
</td>
</tr></table></div></td></tr></table></div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="hugjrxU7oon"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Given Y, find a value of X for which P(X,Y) and Q(X) evaluate to true.<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="eT_EdhyAdUC"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img onmousedown="ioSwitch('peT_EdhyAdUC', event.shiftKey)" id="ieT_EdhyAdUC" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Support<br>
</td>
</tr></table></div></td></tr></table>
<div id="peT_EdhyAdUC" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="bRhKXPN0Yz2"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Support: The set of values of Y for which R(Y) evaluates to true<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="dk0zwPkQ_FF"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Finite Support: The support set has a fixed size<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="iLhBsqk95Yt"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">If P(X,Y), Q(X) have finite support, so does R(Y)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="hZVTOb9Phg1"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">actually, we can do a bit better… to be discussed shortly<br>
</td>
</tr></table></div></td></tr></table>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="ksfHm21-zVt"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img onmousedown="ioSwitch('pksfHm21-zVt', event.shiftKey)" id="iksfHm21-zVt" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Natural consequence:<br>
</td>
</tr></table></div></td></tr></table>
<div id="pksfHm21-zVt" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="bBLJ0f6nqrU"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">R(Y,Z) is true for any value of Z as long as R(Y) would be true.<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="oobjV_NSPgV"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">R(Y,Z) has an infinite support!<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="gyQnIAsPzMZ"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Z is “unsafe” or “unbound"<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="lZBf9zcZvf8"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Y is “bound” or “safe”<br>
</td>
</tr></table></div></td></tr></table>
</div>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="dpEPsz-Ds74"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img onmousedown="ioSwitch('pdpEPsz-Ds74', event.shiftKey)" id="idpEPsz-Ds74" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Safety and Support<br>
</td>
</tr></table></div></td></tr></table>
<div id="pdpEPsz-Ds74" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="mr1iR_cGpCd"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Assume we have a S(Y,Z) with finite support.<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="kj36nzDRxov"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">R(Y,Z) dies not have finite support<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="aHDcPVNUGVD"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">What about ( S(Y,Z) and R(Y,Z) )<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="pX0FppIbsRh"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Interestingly enough, this actually does have finite support: Because Z is safe in S, it does not need to be safe in R.<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="mhwWRR9FxQn"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">In general, a variable is safe in a conjunction of terms IFF it is safe in at least one of the terms.<br>
</td>
</tr></table></div></td></tr></table>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="lF-3JjQcMej"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img onmousedown="ioSwitch('plF-3JjQcMej', event.shiftKey)" id="ilF-3JjQcMej" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">What else can you do with this idea?<br>
</td>
</tr></table></div></td></tr></table>
<div id="plF-3JjQcMej" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="dm14r_F1Cdb"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Functions F(X) -&gt; ???<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="mIXp4kXNCi-"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img onmousedown="ioSwitch('pmIXp4kXNCi-', event.shiftKey)" id="imIXp4kXNCi-" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">What about other functions?<br>
</td>
</tr></table></div></td></tr></table>
<div id="pmIXp4kXNCi-" class="expanded"><table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="aQ1ObuTv76h"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">F(X,Y) -&gt; true if (X &lt; Y)<br>
</td>
</tr></table></div></td></tr></table></div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="jWxaUXIaJg7"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img onmousedown="ioSwitch('pjWxaUXIaJg7', event.shiftKey)" id="ijWxaUXIaJg7" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">How about to natural numbers?<br>
</td>
</tr></table></div></td></tr></table>
<div id="pjWxaUXIaJg7" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="lglqhrOo_r-"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Simple way to express Bags!<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="gELskVltVC1"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">R(X) -&gt; N = number of instances of X in R (multiplicity)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="aciCu3Gp_-L"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img onmousedown="ioSwitch('paciCu3Gp_-L', event.shiftKey)" id="iaciCu3Gp_-L" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Leads to some interesting math:<br>
</td>
</tr></table></div></td></tr></table>
<div id="paciCu3Gp_-L" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="oAw5top8oeU"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor6"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level6 levelguttercolor6" style="width: 89px;"></td>
<td class=" subcell wholedocgutter indicator level6 levelguttercolor6" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level6 levelguttercolor6" style=" width: 1px; "></td>
<td class=" content level6 subcell">R(X) U S(X) === R(X) + S(X)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="lPt9wYWe0Mi"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor6"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level6 levelguttercolor6" style="width: 89px;"></td>
<td class=" subcell wholedocgutter indicator level6 levelguttercolor6" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level6 levelguttercolor6" style=" width: 1px; "></td>
<td class=" content level6 subcell">R(X) |&gt;&lt;| S(X) === R(X) * S(X)<br>
</td>
</tr></table></div></td></tr></table>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="hGIWY9IdLw_"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Q(X) -= R(X,Y) * S(X, Y) === Aggregation: Sum[Y] R(X,Y) * S(X,Y)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="g5EPynHfryU"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">SELECT COUNT(*) FROM R NATURAL JOIN S<br>
</td>
</tr></table></div></td></tr></table>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="oQz41OAQAFB"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img onmousedown="ioSwitch('poQz41OAQAFB', event.shiftKey)" id="ioQz41OAQAFB" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">How about real numbers?<br>
</td>
</tr></table></div></td></tr></table>
<div id="poQz41OAQAFB" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="gw1gbYq8vcH"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">R(X) -&gt; Multiplicity<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="c90ZzHbybG_"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">F(X) -&gt; {X}<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="aR9IujNEKk6"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Q() -= SUM[X] ( R(X) * {X} )<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="fEfIyq_4I1M"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">SELECT SUM(X) FROM R<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="aLA_vNDmdy-"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Q() -= SUM[X] ( R(X,Y) * S(Y,Z) * {Z &lt; 10} * {X} )<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="cZEVYe-HKV9"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">SELECT SUM(R.X) FROM R NATURAL JOIN S WHERE S.Z &lt; 10<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="kYpB0lRkwG_"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">OR: Aggregate { Start with R, Join with S, Filter on Z &lt; 10, Multiply multiplicity by X }<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="a26K3pn-Gho"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img onmousedown="ioSwitch('pa26K3pn-Gho', event.shiftKey)" id="ia26K3pn-Gho" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Sequence of transformations, each modifying the output of the last<br>
</td>
</tr></table></div></td></tr></table>
<div id="pa26K3pn-Gho" class="expanded"><table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="l1xzcQk5MNO"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor6"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level6 levelguttercolor6" style="width: 89px;"></td>
<td class=" subcell wholedocgutter indicator level6 levelguttercolor6" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level6 levelguttercolor6" style=" width: 1px; "></td>
<td class=" content level6 subcell">Pipelining technique sometimes referred to as a “Monad"<br>
</td>
</tr></table></div></td></tr></table></div>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="oSku2D1T-1u"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">^— all actually used in practice. DBToasters AGCA and LogicBlox LogiQL<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="hMAR0UnJLxG"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img onmousedown="ioSwitch('phMAR0UnJLxG', event.shiftKey)" id="ihMAR0UnJLxG" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">Connections to Rings:<br>
</td>
</tr></table></div></td></tr></table>
<div id="phMAR0UnJLxG" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="nmheoy1IS07"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img onmousedown="ioSwitch('pnmheoy1IS07', event.shiftKey)" id="inmheoy1IS07" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Semiring:<br>
</td>
</tr></table></div></td></tr></table>
<div id="pnmheoy1IS07" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="jqROof035Jk"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor6"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level6 levelguttercolor6" style="width: 89px;"></td>
<td class=" subcell wholedocgutter indicator level6 levelguttercolor6" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level6 levelguttercolor6" style=" width: 1px; "></td>
<td class=" content level6 subcell">Set/Type, +: SxS-&gt;S, 0, *: SxS-&gt;, 1<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="nr7ajZDV3fp"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor6"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level6 levelguttercolor6" style="width: 89px;"></td>
<td class=" subcell wholedocgutter indicator level6 levelguttercolor6" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level6 levelguttercolor6" style=" width: 1px; "></td>
<td class=" content level6 subcell">+/* associative, commutative<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="d_TZ-eY8xYM"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor6"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level6 levelguttercolor6" style="width: 89px;"></td>
<td class=" subcell wholedocgutter indicator level6 levelguttercolor6" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level6 levelguttercolor6" style=" width: 1px; "></td>
<td class=" content level6 subcell">+ distributive over *<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="mZgexSgRflO"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor6"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level6 levelguttercolor6" style="width: 89px;"></td>
<td class=" subcell wholedocgutter indicator level6 levelguttercolor6" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level6 levelguttercolor6" style=" width: 1px; "></td>
<td class=" content level6 subcell">0+x = x<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="nunNyp2z_-M"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor6"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level6 levelguttercolor6" style="width: 89px;"></td>
<td class=" subcell wholedocgutter indicator level6 levelguttercolor6" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level6 levelguttercolor6" style=" width: 1px; "></td>
<td class=" content level6 subcell">0*x = 0<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="kG_REcFNwfo"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor6"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level6 levelguttercolor6" style="width: 89px;"></td>
<td class=" subcell wholedocgutter indicator level6 levelguttercolor6" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level6 levelguttercolor6" style=" width: 1px; "></td>
<td class=" content level6 subcell">1*x = x<br>
</td>
</tr></table></div></td></tr></table>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="gyHY6GBgGy7"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img onmousedown="ioSwitch('pgyHY6GBgGy7', event.shiftKey)" id="igyHY6GBgGy7" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">Ring = Semiring + Invertor:<br>
</td>
</tr></table></div></td></tr></table>
<div id="pgyHY6GBgGy7" class="expanded"><table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="o2-RWNupg1H"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor6"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level6 levelguttercolor6" style="width: 89px;"></td>
<td class=" subcell wholedocgutter indicator level6 levelguttercolor6" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level6 levelguttercolor6" style=" width: 1px; "></td>
<td class=" content level6 subcell">-x + x = 0<br>
</td>
</tr></table></div></td></tr></table></div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="ptxoRU_WCxD"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor5"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level5 levelguttercolor5" style="width: 73px;"></td>
<td class=" subcell wholedocgutter indicator level5 levelguttercolor5" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level5 levelguttercolor5" style=" width: 1px; "></td>
<td class=" content level5 subcell">U = + // |&gt;&lt;| = *<br>
</td>
</tr></table></div></td></tr></table>
</div>
</div>
</div>
</div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="e0LymDE9OZh"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor1"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level1 levelguttercolor1" style="width: 9px;"></td>
<td class=" subcell wholedocgutter indicator level1 levelguttercolor1" style="width: 15px;"><img onmousedown="ioSwitch('pe0LymDE9OZh', event.shiftKey)" id="ie0LymDE9OZh" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level1 levelguttercolor1" style=" width: 1px; "></td>
<td class=" content level1 subcell">Monad Algebra<br>
</td>
</tr></table></div></td></tr></table>
<div id="pe0LymDE9OZh" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="h47GJYbWTgh"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor2"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level2 levelguttercolor2" style="width: 25px;"></td>
<td class=" subcell wholedocgutter indicator level2 levelguttercolor2" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level2 levelguttercolor2" style=" width: 1px; "></td>
<td class=" content level2 subcell">Problem: Nested data! We want to transform it in bulk<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="eYU3eMb5Dcg"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor2"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level2 levelguttercolor2" style="width: 25px;"></td>
<td class=" subcell wholedocgutter indicator level2 levelguttercolor2" style="width: 15px;"><img onmousedown="ioSwitch('peYU3eMb5Dcg', event.shiftKey)" id="ieYU3eMb5Dcg" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level2 levelguttercolor2" style=" width: 1px; "></td>
<td class=" content level2 subcell">Same idea of pipelining operations:<br>
</td>
</tr></table></div></td></tr></table>
<div id="peYU3eMb5Dcg" class="expanded"><table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="attOKY1Rxmm"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Applied to <br>
</td>
</tr></table></div></td></tr></table></div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="eYSl5UMOv2W"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor2"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level2 levelguttercolor2" style="width: 25px;"></td>
<td class=" subcell wholedocgutter indicator level2 levelguttercolor2" style="width: 15px;"><img onmousedown="ioSwitch('peYSl5UMOv2W', event.shiftKey)" id="ieYSl5UMOv2W" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level2 levelguttercolor2" style=" width: 1px; "></td>
<td class=" content level2 subcell">Overview<br>
</td>
</tr></table></div></td></tr></table>
<div id="peYSl5UMOv2W" class="expanded">
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="gP-Xrv1F0dE"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Types: Dom, Tuple(X,Y), List(X)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="bvYthQyJO0j"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Basic Ops: Const, Emptyset, Singleton, Map, Union, Tuple, DeTuple, f(DOM)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="gN_-HOnWWHR"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img onmousedown="ioSwitch('pgN_-HOnWWHR', event.shiftKey)" id="igN_-HOnWWHR" border="0" alt="V" class="parent" src="Expanded.png" title="collapse"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Key Features: Fold<br>
</td>
</tr></table></div></td></tr></table>
<div id="pgN_-HOnWWHR" class="expanded"><table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="maal-EBYpdf"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor4"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level4 levelguttercolor4" style="width: 57px;"></td>
<td class=" subcell wholedocgutter indicator level4 levelguttercolor4" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level4 levelguttercolor4" style=" width: 1px; "></td>
<td class=" content level4 subcell">If/Then/Else<br>
</td>
</tr></table></div></td></tr></table></div>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="pmAIE4lc4Bc"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell">Key Features: Tensor Strength — PairWith (equiv: Cross Product)<br>
</td>
</tr></table></div></td></tr></table>
<table cellspacing="0" border="0" cellpadding="0" class="row heighthack"><tr id="fDR8eKg8MDQ"><td class=" col1 colbackground1 col_width1" style=""><div class=" full levelcolor3"><table border="0" cellspacing="0" cellpadding="0" style="height:100%" class=" col_width1 col1"><tr>
<td class=" subcell wholedocgutter level3 levelguttercolor3" style="width: 41px;"></td>
<td class=" subcell wholedocgutter indicator level3 levelguttercolor3" style="width: 15px;"><img border="0" alt="*" class="leaf" src="LeafRowHandle.png"></td>
<td class=" subcell wholedocgutter labelpadding level3 levelguttercolor3" style=" width: 1px; "></td>
<td class=" content level3 subcell"></td>
</tr></table></div></td></tr></table>
</div>
</div>
</td></tr></table></body>
</html>