As promised, here&#x27;s one that creates a theory for programs that can be used in practical ways:<p><a href="http:&#x2F;&#x2F;www.cs.toronto.edu&#x2F;~hehner&#x2F;aPToP&#x2F;" rel="nofollow">http:&#x2F;&#x2F;www.cs.toronto.edu&#x2F;~hehner&#x2F;aPToP&#x2F;</a><p>Hardware:<p><a href="http:&#x2F;&#x2F;www.cs.toronto.edu&#x2F;~hehner&#x2F;HLCD.pdf" rel="nofollow">http:&#x2F;&#x2F;www.cs.toronto.edu&#x2F;~hehner&#x2F;HLCD.pdf</a><p>If doing the first in Scheme, methods like this tie it to hardware:<p><a href="http:&#x2F;&#x2F;scheme2006.cs.uchicago.edu&#x2F;05-saint-mleux.pdf" rel="nofollow">http:&#x2F;&#x2F;scheme2006.cs.uchicago.edu&#x2F;05-saint-mleux.pdf</a>