NEW RESOLUTION THEORY. My new RT uses not only links and truths but also a third type of assertion, which I will call an arrow. An arrow is a truth contingent on another truth - it says that if any of a given set of candidates (I'll call this the left-hand side, LHS) is true in the solved grid, then at least one of the candidates in a second set (the RHS) also is. Thus, if the LHS is empty then the arrow is a truism, and if the RHS is empty then the arrow equates to the falsehood of all candidates in the LHS. However, unlike links and truths, either (or both) of the LHS and RHS can consist of only one candidate. No candidate appears in both the LHS and RHS of an arrow, because if any did, it could be deleted from the LHS without changing the meaning.
Arrows may sound innocent enough at first: seemingly they are just merges of two steps in a standard AIC (a link followed by a truth). However, in their full generality they turn out to be far more powerful than that.
I will write arrows thusly:
|L>>R|
and I will again use capital letters to denote the (possibly empty) sets of candidates appearing in each subset of a rule's sets of candidates. (As just explained, no letter ever appears in both sides of an arrow.) I believe that the power afforded by arrows is fully captured by the following six resolution rules (again named by reference to the various constituent assertion types):
LLLL: >A,B,D,G< + >B,C,E,G< + >A,C,F,G< gives >A,B,C,G< (unchanged from TLC)
LTA: >A,B< + <B,C> gives |A>>C|
ALA: |A,B>>C,D| + >A,C,E< gives |A>>D|
ATT: |A,B>>C,D| + <A,C,E> gives <C,D,E>
ALL: |A,B>>C| + >A,C,E< gives >b,E< for each maximal link b within B (note: no "D")
AAA: |A,B,E>>C,D| + |A,C,G>>B,D,H| gives |A,C,E,G>>B,D,H| (note: no "F")
and I'm calling this theory "ATLC", for "arrow-truth-link contraction". (But you can call it "Aubrey's tender loving care" if you like

)
Rule LLLL is the same as in TLC. All the other rules have two premises rather than three, and that seems to be where much of the power (see RESULTS) comes from. There's no explicit elimination rule, but that's fine, because eliminations arise when LTA or ALA derive an arrow with an empty RHS or when ATT derives a single-candidate truth. The absence of "D" in ALL says that all candidates in the arrow's RHS must also appear in the link. Similarly, the absence in rule AAA of a letter appearing in the RHS of the first arrow but nowhere else says that all candidates in the first arrow's RHS must also appear in one or other side of the second arrow. In rule ALL, "maximal link" means any subset of B that is also a subset of some link and is not a subset of a larger such subset of B. This is needed because the whole of B may not be a subset of a link.
ATLC is easily seen to be at least as powerful as TLC, because the TLC rules TLTT, LTLL and L*T! can be reconstituted by combining ATLC rules:
LTA: >B,C,E,G< + <A,C,F,G> gives |B,E>>A,F|
ATT: |B,E>>A,F| + <A,B,D,G> gives <A,F,D,G>
------------------------------------------------------------
TLTT: <A,B,D,G> + >B,C,E,G< + <A,C,F,G> gives <A,D,F,G>
LTA: >A,B,D,G< + <B,C,G> gives |A,D>>C|
ALL: |A,D>>C| + >A,C,F,G< gives >D,F,G< (because D is a subset of a link)
------------------------------------------------------------
LTLL: >A,B,D,G< + <B,C,G> + >A,C,F,G< gives >D,F,G<
LTA: >A,B1,C1< + <B1,B2,...Bn> gives |A,C1>>B2,...Bn|
ALA: |A,C1>>B2,...Bn| + >A,B2,C2< gives |A>>B3,...Bn| repeated n-2 times
ALA: |A>>Bn| + >A,Bn,Cn< gives |A>>|
------------------------------------------------------------
L*T!: >A,B1,C1< + >A,B2,C2< + ... + <B1,B2,...> gives |A>>|
and additional power arises (or does it?? - see below) from the presence of rule AAA and the fact that rule ALA can generate arrows that are not eliminations (i.e. that have a non-empty RHS), as well as the ability to combine the rules in other ways than the above. We also have two new ways in which assertion A trivially implies assertion B: one is if they are both arrows, every candidate in B's LHS is also in A's LHS, and every candidate in A's RHS is also in B's RHS, and the other is if A is a truth, B is an arrow, and every candidate in A is also in B's RHS.
So obviously I wrote a solver (i.e., a resolution-path-discoverer) based on ATLC...