[sv-ec] RE: discarding soft constraints.

From: Arturo Salz <Arturo.Salz@synopsys.com>
Date: Mon Aug 29 2011 - 21:43:51 PDT

Ray,

That's a creative use of the disable keyword. I don't know if disable is clearer for this purpose - we should discuss it. I sort of like the symmetry between distribution over a an empty set (to discard) and distribution over a finite set (to discard and expand).
BTW, we could still use "soft: disable x" and not have to turn "soft: into a keyword, or even just "disable x", admittedly neither of these reads as well as your proposal.

                Arturo

From: owner-sv-ec@eda.org [mailto:owner-sv-ec@eda.org] On Behalf Of Ryan, Ray
Sent: Monday, August 29, 2011 3:36 PM
To: sv-ec@eda.org
Subject: [sv-ec] discarding soft constraints.

Arturo,

One of our engineers suggested the following syntax for discarding (disabling) soft constraints - as an alternative to the special interpretation of "soft dist".
                disable soft x;
This could also support disabling the soft constraints for a list of variables.
                disable soft x, y, z;

'disable' is already a keyword. This would make 'soft' a keyword.

Regards,
Ray

From: owner-sv-ec@eda.org [mailto:owner-sv-ec@eda.org] On Behalf Of Ryan, Ray
Sent: Monday, August 29, 2011 12:23 PM
To: sv-ec@eda.org
Subject: [sv-ec] FW: soft constraints

A couple minor items:

1) Probably should clarify that if a 'soft' constraint is discarded, the entire constraint is discarded. Given "soft (x == 3) && (y == 3)", the higher priority constraint "x != 3" will discard the entire soft constraint - thus not requiring y to be 3.

2) The constraint, "if (cond) {soft x == 3; soft y == 3; z == 5}" is equivalent to "if (cond) {soft x == 3}; if (cond) {soft y == 3}; if (cond) {z == 5};". In this case either or both of the constraints on x or y may be discarded, while the constraint on z cannot be discarded.

3) "soft" needs to be added to Table B.1 - Reserved keywords.

4) In the grammar due to the additional usage, I like to see term "solve_ before_primary" changed to "random_variable_primary".

5) Does a higher priority soft dist discard the 'reset' part of a lower priority soft dist? EG.
       Constraint c1 {
soft x == 5;
soft y == 4;
soft dist x+y { [0:10] };
soft dist x;
                              }
                              Is the constraint on y discarded?

               Ray

--
This message has been scanned for viruses and
dangerous content by MailScanner<http://www.mailscanner.info/>, and is
believed to be clean.
--
This message has been scanned for viruses and
dangerous content by MailScanner<http://www.mailscanner.info/>, and is
believed to be clean.
-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Mon Aug 29 21:44:59 2011

This archive was generated by hypermail 2.1.8 : Mon Aug 29 2011 - 21:45:04 PDT