Abstract. We propose to use bilattice as a constraint valuation structure in order to represent truth and belief at the same time. A bilattice is a set which owns two lattices orderings. They have been used in Artificial Intelligence in order to model incomplete information. We present a framework for Bilattice-valued Constraint Programming which allows to represent incomplete or conflicting information and to combine constraints with a set of operators. It allows to model a variety of situation such as open constraints and the integration of machine learning into constraint programming, reconciliation of divergent opinions in distributed systems or constraint modules in a software engineering perspective.