<p>What semantics of the logical operators would you like to have? Two of the best studied semantics for degrees are (propositional) Łukasiewicz logic and Gödel-Dummet logic. The latter enforces the domain to be a linear order which would allow you to model them via the naturals. It is also axiomatizable, since it is equivalent to intuitionistic propositional logic with the axiom of linearity <code>(A =&gt; B) \/ (B =&gt; A)</code>. </p>

<p>It also has a hyper-sequent calculus which is sound and complete (have a look at e.g. A. Avron "A Simple Proof of Completeness and Cut-elimination for Propositional Gödel Logic"), which you could implement in Prolog.</p>

CC BY-SA 3.0
2016-02-28T22:04:18.770Z
Well - this is interesting direction to go, but I would prefer logic that allows reasoning both about boolean and integer type variables. I will consider - whether this can be simulated with n-valued logics. But some kind of arithmetic would be preferable - to reason in two-valued logics with n-valued variables...
TomR
CC BY-SA 3.0
2016-02-28T23:14:57.180Z
That leads back to the first question - I'll make it more concrete. Suppose v(A) = 3 and v(B) = 5. What would you expect v(A => B) to be? (just to avoid confusion, => means implication, not greater than or equal).
lambda.xy.x
CC BY-SA 3.0
2016-02-28T20:11:13.127Z
2016-02-28T20:11:13.127Z
lambda.xy.x
<p>I am trying to model domain in logic (first order logic or some of modal logics) and I have variable which is degree and not true-false variable. There can be different conclusions depending on the degree of this variable. How to model such variable? If v ir degree variable and n degrees are possible, then v can be modelled by introduction of n propositional variables v1=true &lt;= v=1, v2=true &lt;= v=2 and so on. Additional constraints (axioms) should be introducted - e.g. only one variable from v1, ..., vn can be true.</p>

<p>Introduction of additional variables is not good, because: 1) it increases complexity; 2) it is not extendable in simple manner.</p>

<p>The question is - <strong>maybe there is some syntactic sugar available for degrees, or maybe special logics are already available for handing degrees of even variables whose domain is set of natural numbers?</strong></p>

<p>Prolog and other logical programming environments has this feature, maybe this can be brought back to the theory as well.</p>

<lo.logic><logic-programming><modal-logic>
How to model degree variable in logic (new type of modal logic?)?
TomR
# How to model degree variable in logic (new type of modal logic?)?

(Asked by: username_0 on 2016-02-28)

I am trying to model domain in logic (first order logic or some of modal logics) and I have variable which is degree and not true-false variable. There can be different conclusions depending on the degree of this variable. How to model such variable? If v ir degree variable and n degrees are possible, then v can be modelled by introduction of n propositional variables v1=true <= v=1, v2=true <= v=2 and so on. Additional constraints (axioms) should be introducted - e.g. only one variable from v1, ..., vn can be true.

Introduction of additional variables is not good, because: 1) it increases complexity; 2) it is not extendable in simple manner.

The question is - **maybe there is some syntactic sugar available for degrees, or maybe special logics are already available for handing degrees of even variables whose domain is set of natural numbers?**

Prolog and other logical programming environments has this feature, maybe this can be brought back to the theory as well.

**Tags:** lo.logic, logic-programming, modal-logic


---

## 1 answers

### Answer by username_1 on 2016-02-28. Score: 1

What semantics of the logical operators would you like to have? Two of the best studied semantics for degrees are (propositional) Łukasiewicz logic and Gödel-Dummet logic. The latter enforces the domain to be a linear order which would allow you to model them via the naturals. It is also axiomatizable, since it is equivalent to intuitionistic propositional logic with the axiom of linearity `(A => B) \/ (B => A)`.

It also has a hyper-sequent calculus which is sound and complete (have a look at e.g. A. Avron "A Simple Proof of Completeness and Cut-elimination for Propositional Gödel Logic"), which you could implement in Prolog.

> **Comments:**
> **username_0**: Well - this is interesting direction to go, but I would prefer logic that allows reasoning both about boolean and integer type variables. I will consider - whether this can be simulated with n-valued logics. But some kind of arithmetic would be preferable - to reason in two-valued logics with n-valued variables...  
> **username_1**: That leads back to the first question - I'll make it more concrete. Suppose v(A) = 3 and v(B) = 5. What would you expect v(A => B) to be? (just to avoid confusion, => means implication, not greater than or equal).  

---

