DonM, I understand your position on trying to make a solution as clear as possible. I'll give it further consideration.

David P Bird wrote:You say the notation in full should be:

(1=3)r6c7 - (3268=2681)r5c3589 => r5c7 <> 1

but there is no need to give the full digit set for the two ANS options as if we split them into two terms

(2368)r5c3589 = (1)r5c3589

it makes sense as each node is a Boolean and they can't both be false.

For a bivalue cell, we can write (3=2)r3c6 ... or we can write (3)r3c6 = (2)r3c6 without loss of context. I'm saying that the quad strong inference in r5c3579 should be written (3268=2681)r5c3589 -- and that it can be interpreted as (3268)r5c3589 = (2681)r5c3589. In the case of (2368=1)r5c3589, the expression can't be split and still make sense.

David P Bird wrote:Then you suggest

(1=3)r6c7 - (3=1)r5c8953 => r6c3 <> 1

but this creates an extra burden on readers as they must trawl through the cells (which aren't listed in ascending order) counting the passenger digits. If you make a mistake it's then difficult for us to work out whether you've miscounted or mistyped!

Actually, my (condensed) expression comes as close as any other for being accurate. I've actually taken the burden off of the reader because I've listed the cells in the order the ANS network would decompose in the relationship.

- Code: Select all
`r5c8<>3 , r5c8=2 , r5c9=6 , r5c5=8 , r5c3=1 ==>> (3=1)r5c8953`

The reader now knows (from my chain) that an assumption of r6c7<>1 leads to r5c3=1. Since r6c3

sees both cells, the elimination r6c3<>1 follows.

As for my making a mistake,

anyone who presents a chain with a mistake will place some level of burden on the reader. Do you reallllllly want to get into what levels of

possible mistakes are acceptable and not acceptable?

Note: Sometimes multiple cells are needed for intermediate pairs/triples. As long as these cells are listed next to each other, that should be sufficiently clear to determine their relationship. Consider the ANS reading right-to-left:

- Code: Select all
`r5c3<>1 , r5c3=8 , r5c5<>8 , r5c59=26 , r5c8<>2 , r5c8=3 ==>> (1=3)r5c3598`