Good thinking, Ronk.
ronk wrote:Firstly, make the opening statement)s) of Node and Strong Node read as much alike as possible so it's easy to spot the differences, e.g.,
Node - a node with n cells containing at least n+1 candidates.
Strong Node - a node with n cells containing exactly n+1 candidates.
You are right; they should be alike. However, are you aware that a strong node is not necessarily limited to n cells with n+1 candidates? For example, a node having n+2 candidates can be a strong node with a strong inference that if 2 of its candidates (entering link label with 2 candidates) are false, then the remaining candidates are true. These possibilities may require the definition of "strong node" to be expanded. This is why I am not keen to use n and n+1 to define "node". Proposed revision as follows:
Node - a cell or a group of cells joining 2 links in a chain propagation. A node is multi-valued and may contain any number of candidates. Each node has a weak inference ..............
Strong Node - a node that has an additional strong inference that implies if a candidate or a group of candidates is false .............
ronk wrote:"If a candidate is true, then at least one of the remaining candidates must be false", I don't think any candidate becomes false (is eliminated) until n=0. I think the statement should read something like ...
"For each candidate set true within the set of n cells, n is decremented until n=0 at which point all remaining candidates must be false".
Your suggestion is very correct and precise. However, these precise descriptions are of academic interest because they are not required to propel a chain. In chain propagation, the status of the remaining candidates in a node is only important when it is a strong node and it is used to connect 2 links with weak inference. Consider the following examples:
=5=[x5xx]-5- (stronglink node link)
If 5 is true, the status of the remaining candidates is not important.
=5=[x57x]=7= (stronglink node stronglink)
If 5 is true, the status of the remaining candidates is not important, except that the node must contain 7 which is the pre-requisite for a link.
=4=[xx4][x4xx][xx4xx]-4- (stronglink node link)
If 4 is true, the status of the remaining candidates is not important.
=4=[xx4][x4xx][xx4xx]=x= (stronglink node stronglink)
If 4 is true, there will not be enough information to allow a strong link leaving the node to made a strong inference. It means a strong link cannot be established anyway; Therefore the status of the remaining candidates is again not important.
In conclusion, every node has a trivial weak inference that if a candidate set {a,b,c....} in the node is true, then at least one of the remaining candidates must be false; but this information is not important in terms of chain propagation.
As such, the definitions can be written as:
Node - a cell or a group of cells joining 2 links in a chain propagation. A node is multi-valued and may contain any number of candidates. Each node has a weak inference that implies a candidate or a group of candidates (labelled candidate(s) of the link entering the node) in the node is true; along the flow of an implication stream.
Strong Node - a node that has an addition strong inference that implies if a candidate or a group of candidates (labelled candidate(s) of the link entering the node) is false, then all remaining candidates are true; along the flow of an implication stream. A bivalue cell and an almost locked set are examples of a strong node.