Constraints in ic are handled separately and individually. More global consistency techniques can be achieved using global constraints. Propia and CHRs provide alternative methods of achieving more global consistency. Propia allows any subproblem to be treated as a single constraint. CHRs allow any set of constraints to be handled by a single rule. Each technique has special strengths. Propia is good for handling complicated logical combinations of constraints. CHRs are good for combining sets of constraints to extract transitive closures, and cliques.
Both are fun to implement and use!