<p>Check these references:</p>

<p>Programming languages CondLP and CondLP+: </p>

<p>Gabbay, Giordano,  Martelli, Olivetti, Sapino, Conditional reasoning in logic programming,  Journal of Logic Programming, Volume 44, Issues 1-3, 1 July 2000, Pages 37-74 </p>

<p>Claudia, Oliveira, The implementation of CondLP, Lecture Notes in Computer Science, 1996, Volume 1085/1996, 713-715</p>

<p>Gabbay, Giordano, Martelli, Olivetti, Conditional logic programming, Proc. 11th Int. Conf. on Logic Programming, Santa Margherita Ligure, pages 272–289, 1994.</p>

<p>References to proof theory:</p>

<p>Olivetti, Pozzato, Schwind, A sequent calculus and a theorem prover for standard conditional logics, Journal ACM Transactions on Computational Logic (TOCL), Volume 8 Issue 4, August 2007 </p>

CC BY-SA 3.0
2011-04-12T13:38:51.550Z
Thanks, this looks very interesting! I was hoping to see some functional or imperative languages rather than logic languages, though.
Neel Krishnaswami
CC BY-SA 3.0
2011-04-12T10:17:56.700Z
2011-04-12T10:43:51.577Z
2011-04-12T10:43:51.577Z
Mohammad Al-Turkistany
<p><a href="http://projects.csail.mit.edu/church/wiki/Church" rel="nofollow">Church</a> might be the kind of thing you are looking for -- it is functional (scheme derivative), but is designed with a probabilistic semantics, and implements conditional probabilities using "query" for doing Bayesian inference.  <a href="http://projects.csail.mit.edu/church/wiki/Conditioning" rel="nofollow">Discussion of conditioning in Church</a>.  This is (as I understand it) more or less the main operation in most Church programs.</p>

<p>To Matteo Mio: you might also be interested in Graham Priest's book, "An introduction to non-classical logic", which is centered around defining different types of conditionals.</p>

CC BY-SA 3.0
2011-04-12T22:55:29.267Z
2011-04-12T22:55:29.267Z
kgr
<p>Conditional logics are logics which augment traditional logical implication with modal operators corresponding to other notions of condition (for example, the causal conditional $A\; \square\!\!\!\!\to B$ reads "$A$ causes "B", or probabilistic conditioning "$A|B$", which reads "$A$ given $B$"). </p>

<p>Typically these logics are studied model-theoretically, but I've wondered about their applications to programming language design (for example, to type imperative actions). </p>

<p>I'd appreciate references to their proof theory (ie, sequent calculus/natural deduction), or to programming languages with types based on these kinds of modal operators. </p>

<p>Thanks!</p>

<p>EDIT: The Stanford Encyclopedia of Philosophy has a <a href="http://plato.stanford.edu/entries/logic-conditionals/" rel="nofollow">nice introduction to the subject</a>. </p>

CC BY-SA 3.0
2011-04-12T09:58:10.570Z
Hello Neel, this sounds quite interesting. 
I tried to Google "conditional logics" but  couldn't find much. Could you please suggest an introductory paper or something to know more about CL? thank you
OldFella
<reference-request><lo.logic><pl.programming-languages><type-theory><proof-theory>
References to programming languages based on conditional logics
Neel Krishnaswami
# References to programming languages based on conditional logics

(Asked by: username_0 on 2011-04-12)

Conditional logics are logics which augment traditional logical implication with modal operators corresponding to other notions of condition (for example, the causal conditional $A\; \square\!\!\!\!\to B$ reads "$A$ causes "B", or probabilistic conditioning "$A|B$", which reads "$A$ given $B$").

Typically these logics are studied model-theoretically, but I've wondered about their applications to programming language design (for example, to type imperative actions).

I'd appreciate references to their proof theory (ie, sequent calculus/natural deduction), or to programming languages with types based on these kinds of modal operators.

Thanks!

EDIT: The Stanford Encyclopedia of Philosophy has a [nice introduction to the subject](http://plato.stanford.edu/entries/logic-conditionals/).

**Tags:** reference-request, lo.logic, pl.programming-languages, type-theory, proof-theory

> **Comments:**
> **username_1**: Hello Neel, this sounds quite interesting.  I tried to Google "conditional logics" but  couldn't find much. Could you please suggest an introductory paper or something to know more about CL? thank you  

---

## 2 answers

### Answer by username_2 on 2011-04-12. Score: 8 | Accepted answer

Check these references:

Programming languages CondLP and CondLP+:

Gabbay, Giordano, Martelli, Olivetti, Sapino, Conditional reasoning in logic programming, Journal of Logic Programming, Volume 44, Issues 1-3, 1 July 2000, Pages 37-74

Claudia, Oliveira, The implementation of CondLP, Lecture Notes in Computer Science, 1996, Volume 1085/1996, 713-715

Gabbay, Giordano, Martelli, Olivetti, Conditional logic programming, Proc. 11th Int. Conf. on Logic Programming, Santa Margherita Ligure, pages 272–289, 1994.

References to proof theory:

Olivetti, Pozzato, Schwind, A sequent calculus and a theorem prover for standard conditional logics, Journal ACM Transactions on Computational Logic (TOCL), Volume 8 Issue 4, August 2007

> **Comments:**
> **username_0**: Thanks, this looks very interesting! I was hoping to see some functional or imperative languages rather than logic languages, though.  

---

### Answer by username_3 on 2011-04-12. Score: 3

[Church](http://projects.csail.mit.edu/church/wiki/Church) might be the kind of thing you are looking for -- it is functional (scheme derivative), but is designed with a probabilistic semantics, and implements conditional probabilities using "query" for doing Bayesian inference. [Discussion of conditioning in Church](http://projects.csail.mit.edu/church/wiki/Conditioning). This is (as I understand it) more or less the main operation in most Church programs.

To Matteo Mio: you might also be interested in Graham Priest's book, "An introduction to non-classical logic", which is centered around defining different types of conditionals.


---

