## Two-Candidate Notation

Everything about Sudoku that doesn't fit in one of the other sections

### Two-Candidate Notation

If I were to use the following legend for my solutions, would anyone have a problem following my meaning?

Code: Select all
` Legend:   Two-Candidate Notation   =( a   b )  ->  =( a & b )  -->  (  a AND  b )   -- pair       in two cells   -( a   b )  ->  -( a & b )  -->  ( -a XOR -b )   -- pair       in two cells   =( a ' b )                  -->  (  a AND  b )   -- both       true   -( a ' b )                  -->  ( -a AND -b )   -- both       false   =( a | b )                  -->  (  a XOR  b )   -- candidates in one cell   -( a | b )                  -->  ( -a AND -b )   -- candidates in one cell`

_
Last edited by daj95376 on Sun Aug 23, 2015 6:34 pm, edited 7 times in total.
daj95376
2014 Supporter

Posts: 2624
Joined: 15 May 2006

### Re: Two-Candidate Notation

daj95376 wrote:If I were to use the following legend for my solutions, would anyone have a problem following my meaning?

Code: Select all
` Legend:   Two-Candidate Notation   =( a   b )  -->  (  a AND  b )   -- pair       in two cells   -( a   b )  -->  ( -a  OR -b )   -- pair       in two cells   =( a + b )  -->  (  a AND  b )   -- pair       in two cells   (primarily SK-Loop or V-Loop)   -( a + b )  -->  ( -a AND -b )   -- pair       in two cells   (primarily SK-Loop or V-Loop)   =( a | b )  -->  (  a XOR  b )   -- candidates in one cell   -( a | b )  -->  ( -a AND -b )   -- candidates in one cell`

_

I follow it without any problem, but I don't care for it. The alternate that I would use for (a b) would be (a&b), not (a+b). To me, (a+b) means (a OR b).

Also, the | symbol means OR to me, not XOR. Finally, if | is taken to be XOR, then -(a|b) would be [(-a AND -b) OR (a AND b)]. Naturally, a AND b can't occur in one cell, but I still don't like using | for anything except OR.
Steve

SteveG48
2018 Supporter

Posts: 2401
Joined: 08 November 2013
Location: Orlando, Florida

### Re: Two-Candidate Notation

(a) I agree with Steve that + typically means 'or' as opposed to 'and'
(b) I disagree with the use of XOR in the definition, it should be OR
(c) What about three (or more) candidates?
sultan vinegar

Posts: 81
Joined: 27 August 2013

### Re: Two-Candidate Notation

The main question is where's the benefit, particularly with nodes containing more than two candidates as SV asks?

However I would be open to using another symbol in notation for SK Loops as they aren't AICs and only make eliminations when a continuous loop exists.

Without intending to insult anyone who already knows:
In an SK loop node (ab=cd)cells12 translates to either a) each of these pairs hold one truth or b) one of them holds two truths and the other none.
Considering the digits (c) & (d) in this pair of nodes (ab=cd)cells12 – (cd=ef)cells34 in a house, either (c) is true in one node and (d) is true in the other node or (cd) is true in one of them, so whichever way it is, any other (c)s and (d)s in that house must be false.
This requires the chain to close into a loop to make it impossible for (c) and (d) to be false in both nodes.

The notation could be changed to (ab/cd)cells12 - (cd/ef)cells34 which keeps it nice and tight and makes it clear that it isn't to be read as an AIC.
David P Bird
2010 Supporter

Posts: 1040
Joined: 16 September 2008
Location: Middle England

### Re: Two-Candidate Notation

I too would be open to using another symbol for SK loops. Another option for consideration is to use a different symbol for the inferences in SK-loops rather than on the grouped candidates, given that (in general?) two truths are transported in an SK-loop compared with just one in an AIC. (I think the puzzle called Cigarette is the typical exception, I can't remember the details for sure?) Something like:

a = b (at least one of a,b true) - AIC strong inference (existing)
a - b (at most one of a,b true) - AIC weak inference (existing)
ab == cd (at least two of a,b,c,d true) - SKL strong inference (proposed)
ab -- cd (at most two of a,b,c,d true) - SKL weak inference (proposed)

I.e. 'ab == cd' (SK loop) would have a different meaning [in terms of what the groupings (ab) and (cd) mean] compared to 'ab = cd' (grouped AIC) for example.

I'm happy to go with the majority on this one.
sultan vinegar

Posts: 81
Joined: 27 August 2013

### Re: Two-Candidate Notation

SteveG48 wrote:I follow it without any problem, but I don't care for it. The alternate that I would use for (a b) would be (a&b), not (a+b). To me, (a+b) means (a OR b).

Also, the | symbol means OR to me, not XOR. Finally, if | is taken to be XOR, then -(a|b) would be [(-a AND -b) OR (a AND b)]. Naturally, a AND b can't occur in one cell, but I still don't like using | for anything except OR.

I tried to not vary from what's being used or to introduce too many new symbols. I have expanded the definition of (ab) to show that it represents (a&b).

Code: Select all
` Legend:   Two-Candidate Notation   =( a   b )  ->  =( a & b )  -->  (  a AND  b )   -- pair       in two cells   -( a   b )  ->  -( a & b )  -->  ( -a XOR -b )   -- pair       in two cells   =( a + b )                  -->  (  a AND  b )   -- pair       in two cells   (SK-Loop or V-Loop)   -( a + b )                  -->  ( -a AND -b )   -- pair       in two cells   (SK-Loop or V-Loop)   =( a | b )                  -->  (  a XOR  b )   -- candidates in one cell   -( a | b )                  -->  ( -a AND -b )   -- candidates in one cell`

Now, =(a&b) matches =(a+b), but it's clear that -(a&b) does not match -(a+b). Thus the need for a separate symbol.

There was some discussion over the meaning of (ab). The loudest voice called for it to mean "the pair ab". My definition was aimed at conforming to this constraint. Thus, =(ab) represents both values in the pair being true, and -(ab) represents one value being false. As in:

Code: Select all
` +-----------------------------------+ |  .  .  .  |  .  .  .  |  .  .  .  | |  . 129 .  |  .  .  .  |  . 12  .  | |  .  .  .  |  .  .  .  |  .  .  .  | |-----------+-----------+-----------| ( 12 = 9 ) r2c28`

Again, I tried not to introduce too many new symbols. I think (|) for "only one can be true" is acceptable; i.e., XOR. It saves adding another symbol, like (~), to the fray.

[Edit: I changed OR to XOR in -(ab) because I don't want to allow for the interpretation that both values are eliminated.]

_
Last edited by daj95376 on Sun Aug 16, 2015 3:42 pm, edited 1 time in total.
daj95376
2014 Supporter

Posts: 2624
Joined: 15 May 2006

### Re: Two-Candidate Notation

David P Bird wrote:The main question is where's the benefit, particularly with nodes containing more than two candidates as SV asks?

However I would be open to using another symbol in notation for SK Loops as they aren't AICs and only make eliminations when a continuous loop exists.

Without intending to insult anyone who already knows:
In an SK loop node (ab=cd)cells12 translates to either a) each of these pairs hold one truth or b) one of them holds two truths and the other none.
Considering the digits (c) & (d) in this pair of nodes (ab=cd)cells12 – (cd=ef)cells34 in a house, either (c) is true in one node and (d) is true in the other node or (cd) is true in one of them, so whichever way it is, any other (c)s and (d)s in that house must be false.
This requires the chain to close into a loop to make it impossible for (c) and (d) to be false in both nodes.

The notation could be changed to (ab/cd)cells12 - (cd/ef)cells34 which keeps it nice and tight and makes it clear that it isn't to be read as an AIC.

The whole point of ( a + b ) was to introduce a term that could be used in an AIC.

Code: Select all
` ( a+b = c+d ) cells12`

If both "a" and "b" are assumed/forced false, then both "c" and "d" must be true.

_
daj95376
2014 Supporter

Posts: 2624
Joined: 15 May 2006

### Re: Two-Candidate Notation

sultan vinegar wrote:I too would be open to using another symbol for SK loops. Another option for consideration is to use a different symbol for the inferences in SK-loops rather than on the grouped candidates, given that (in general?) two truths are transported in an SK-loop compared with just one in an AIC. (I think the puzzle called Cigarette is the typical exception, I can't remember the details for sure?) Something like:

a = b (at least one of a,b true) - AIC strong inference (existing)
a - b (at most one of a,b true) - AIC weak inference (existing)
ab == cd (at least two of a,b,c,d true) - SKL strong inference (proposed)
ab -- cd (at most two of a,b,c,d true) - SKL weak inference (proposed)

I.e. 'ab == cd' (SK loop) would have a different meaning [in terms of what the groupings (ab) and (cd) mean] compared to 'ab = cd' (grouped AIC) for example.

I'm happy to go with the majority on this one.

It seems there is some agreement on a new symbol being needed to express SK-Loop and V-Loop logic. Obviously, my throwing out (+) as the symbol went over like a lead balloon. What single symbol would (plural) you suggest?

Code: Select all
`   =( a ? b )                  -->  (  a AND  b )   -- pair       in two cells   (SK-Loop or V-Loop)   -( a ? b )                  -->  ( -a AND -b )   -- pair       in two cells   (SK-Loop or V-Loop)`

_

Southerners in the USA have such a nice way of handling the possible plurality of "you":

Code: Select all
`You All  come back -- singularYou Alls come back -- plural`
daj95376
2014 Supporter

Posts: 2624
Joined: 15 May 2006

### Re: Two-Candidate Notation

(a) I agree with Steve that + typically means 'or' as opposed to 'and'
(b) I disagree with the use of XOR in the definition, it should be OR
(c) What about three (or more) candidates?

Let's try to reach an agreement on two candidates before jumping into deeper water.
daj95376
2014 Supporter

Posts: 2624
Joined: 15 May 2006

### Re: Two-Candidate Notation

David P Bird wrote:Without intending to insult anyone who already knows:
In an SK loop node (ab=cd)cells12 translates to either a) each of these pairs hold one truth or b) one of them holds two truths and the other none.
Considering the digits (c) & (d) in this pair of nodes (ab=cd)cells12 – (cd=ef)cells34 in a house, either (c) is true in one node and (d) is true in the other node or (cd) is true in one of them, so whichever way it is, any other (c)s and (d)s in that house must be false.
This requires the chain to close into a loop to make it impossible for (c) and (d) to be false in both nodes.

As you must remember, Steve Kurzhals first uncovered what became known as the SK-loop while solving the Easter Monster puzzle. Steve used hidden pairs and he used the term hidden-pair-loop. As such, your red-colored chain above should actually be:

Code: Select all
`(ab-cd)cells12 = (cd-ef)cells34`

Or do you know some logic math that equates the two?
ronk
2012 Supporter

Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

### Re: Two-Candidate Notation

daj95376 wrote:Let's try to reach an agreement on two candidates before jumping into deeper water.

No, it's short sighted to come up with a new symbols that handles only pairs of digits. Whatever symbol conventions are adopted they should be able to represent any of the true/false conditions that can occur in any number of cells. You therefore need to consider how any alternatives would work over a whole variety of situations.

DPB wrote:Changing subject, here's the existing convention for group nodes (nodes that consist of more than one cell)

(1)r1c123 true when any of these cells holds 1, false otherwise
(12)r1c123 true when two of these hold 1 AND 2, false otherwise
(123)r1c123 true when together these cells hold 1 AND 2 AND 3, false otherwise

Therefore there are implied logical AND operations between the listed candidates which saves having to write (1&2&3)r1c123

(1|2)r1c123 uses a logical OR symbol to mean true when these cells hold either candidate, false when they hold when neither of them.

So when the candidates in a cell are 123 we can write (1=2|3)r1c1 and the link to the next node then becomes 2 OR 3.

This can be used in group nodes too eg (12=3|4)r1c12

Myth Jellies suggested using (12=34#1)r1c12 where #1 signifies the minimum number of truths to be held by 3 & 4 to make the second term true.
Checking this out, 12 will be false when one or both of these digits is false, so 34#1 will be true when one or both of them are true.

I like this because it stands out better and (123#2) is awkward to express using logical operators. I've been using this for several years now and it handles the AAHS situations that concern you.

I wrote that <Here> and have referred to it since. These understandings are the ones you need to improve on to make them clearer - simply matching them wouldn't win the day.

daj95376 wrote:The whole point of ( a + b ) was to introduce a term that could be used in an AIC.
Code: Select all
` ( a+b = c+d ) cells12`
If both "a" and "b" are assumed/forced false, then both "c" and "d" must be true.

The possible alternative (ab/cd) notation for SK Loops is because they are NOT AICs and the logic covers three divisions of the truths not two.

DAJ wrote:It seems there is some agreement on a new symbol being needed to express SK-Loop and V-Loop logic. Obviously, my throwing out (+) as the symbol went over like a lead balloon. What single symbol would (plural) you suggest?

Four people are hardly a quorum here and it would require a lot more support before any change could be made.

Your posts of late seem to swaying whichever way the wind is blowing. One minute you're trying to make notations as terse as possible and the next you're extending them with extra symbols.

While I'm on the subject, you're also talking in terms of discontinuous loops which belong to Nice Loops and using Eureka AIC notations for them where a un-branched chain is either an open chain or a closed loop. You shouldn't be mixing the terminology for NLs and AICs when advising newcomers on their solutions.

DPB
David P Bird
2010 Supporter

Posts: 1040
Joined: 16 September 2008
Location: Middle England

### Re: Two-Candidate Notation

Wikipedia's List of Logic Symbols shows ' v ' as one of two symbols for xor. I don't know of a single keyboard character available for this but it is easily constructed with an underline. Since the xor symbol has been mostly unrequired in the past, it shouldn't be a burden to occasionally underline in the future.
ronk
2012 Supporter

Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

### Re: Two-Candidate Notation

⊕ also works

JasonLion
2017 Supporter

Posts: 640
Joined: 25 October 2007
Location: Silver Spring, MD, USA

### Re: Two-Candidate Notation

Thanks ronk and JasonLion for the symbol suggestions.

_
daj95376
2014 Supporter

Posts: 2624
Joined: 15 May 2006

### Re: Two-Candidate Notation

Code: Select all
`Legend:   Two-Candidate Notation   =( a   b )  ->  =( a & b )  -->  (  a AND  b )   -- pair       in two cells   -( a   b )  ->  -( a & b )  -->  ( -a XOR -b )   -- pair       in two cells   =( a + b )                  -->  (  a AND  b )   -- pair       in two cells   (SK-Loop or V-Loop)   -( a + b )                  -->  ( -a AND -b )   -- pair       in two cells   (SK-Loop or V-Loop)   =( a | b )                  -->  (  a XOR  b )   -- candidates in one cell   -( a | b )                  -->  ( -a AND -b )   -- candidates in one cell`

I'm working from swiss-cheese memory, but here's what I recall on logical operators OR and XOR:

Code: Select all
`OR(X,Y):1) either      X       is  true, or2)                   Y is  true, or3)        both X and Y are true`

Code: Select all
`XOR(X,Y):1) either      X       is  true, or2)                   Y is  true`

Now, because no one wants conditon OR(-A,-B):(3) to be true/possible for "-(ab)" in two cells, I changed it to XOR.

Similarly, no one wants condition OR(A,B):(3) to be true/possible for "=(a|b)" in a single cell. I'm staying with XOR.

If some people had accepted OR(X,Y):(3) being acceptable in (ab=cd), then a lot of discussion would never have occurred because OR(-a,-b):(3) would mean that both of (ab) are presumed false, and OR(c,d):(3) would mean that both of (cd) are presumed true.

_
daj95376
2014 Supporter

Posts: 2624
Joined: 15 May 2006

Next