Ожидаются ваши результаты.
В стандарте IEEE 1800-2017, раздел 18.5.6 Значение , есть пример, аналогичный вашему, с 4-битными переменными.
Поскольку вы объявляете две 1-битные переменные, существует 4 комбинации:
{0,0}, {0,1}, {1,0}, {1,1}
Ограничение c
в классе исключает одну из них (a = 1, b = 1) оставляя эти 3 комбинации:
{0,0}, {0,1}, {1,0}
Встроенные with
силы ограничения b = 0, оставляя эти 2 комбинации:
{0,0}, {1,0}
Это означает, что a
может быть равно 0 или 1, и это то, что вы видите.