Declarative encoding often considers programs as theories of the formal logic, and computations as deductions in this logic space. Declarative encoding may greatly de-stress writing parallel programs. Many languages utilizing this style seek to minimize or eliminate unwanted effects by describing what this software should accomplish in terms of the problem domain, rather than describing how to go about accomplishing it being a sequence of the programming language primitives.