Concurrent Constraint Programming (CCP) is a simple and powerful model for
concurrency where agents interact by telling and asking constraints. Since their
inception, CCP-languages have been designed for having a strong connection to
logic. In fact, the underlying constraint system can be built from a suitable
fragment of intuitionistic (linear) logic -ILL- and processes can be interpreted
as formulas in ILL. Constraints as ILL formulas fail to represent accurately
situations where “preferences” (called soft constraints)
such as probabilities, uncertainty or fuzziness are present. In order to
circumvent this problem, c-semirings have been proposed as algebraic structures
for defining constraint systems where agents are allowed to tell and ask soft
constraints. Nevertheless, in this case, the tight connection to logic and proof
theory is lost. In this work, we give a proof theoretical meaning to soft
constraints: they can be defined as formulas in a suitable fragment of ILL with
subexponentials (SELL) where subexponentials, ordered in a c-semiring structure,
are interpreted as preferences. We hence achieve two goals: (1) obtain a CCP
language where agents can tell and ask soft constraints and (2) prove that the
language in (1) has a strong connection with logic. Hence we keep a declarative
reading of processes as formulas while providing a logical framework for
soft-CCP based systems. An interesting side effect of (1) is that one is also
able to handle probabilities (and other modalities) in SELL, by restricting the
use of the promotion rule for non-idempotent c-semirings.This finer way of
controlling subexponentials allows for considering more interesting spaces and
restrictions, and it opens the possibility of specifying more challenging
computational systems.