Search code examples
semanticstype-systems

Can logical `and` be replaced by an if-statement and still have the same big-step semantics?


In the system below can I replace all the and t1 t2 substatements in some statement T (where T ⇓ v) with if t1 then t2 else false and still get the same result, meaning have T ⇓ v?

enter image description here


Solution

  • No, because and err false reduces to false but if err then false else false gets stuck.