Problem Display
PID: 64587 (1K6/1Q6/1P6/rp6/kp1p4/1R1P4/1R1N4/r7 w - - 0 1)

Penrose, Lionel Sharples

2nd HM., Good Companions (March), 1916

1K6/1Q6/1P6/rp6/kp1p4/1R1P4/1R1N4/r7

#2

7 + 6


3132 The Good Companion Two-Mover 1922

SOLUTION


  • SOUND
  • Sets
    • 1...Rb1
      • 2.Ra2#
    • 1...Rc1
      • 2.Ra2#
    • 1...Rd1
      • 2.Ra2#
    • 1...Re1
      • 2.Ra2#
    • 1...Rf1
      • 2.Ra2#
    • 1...Rg1
      • 2.Ra2#
    • 1...Rh1
      • 2.Ra2#
    • 1...Ra2
      • 2.Rxa2#
    • 1...Ra3
      • 2.Rxb4#
    • 1...Ra6
      • 2.Qxa6#
    • 1...Ra7
      • 2.Qxa7#
    • 1...Ra8+
      • 2.Qxa8#
  • Tries
    • 1.Kc7?
      • 1...Ra6
        • 2.Qxa6#
      • 1...Ra7
        • 2.Qxa7#
      • 1...Ra8
        • 2.Qxa8#
      • 1...Rb1
        • 2.Ra2#
      • 1...Rd1
        • 2.Ra2#
      • 1...Re1
        • 2.Ra2#
      • 1...Rf1
        • 2.Ra2#
      • 1...Rg1
        • 2.Ra2#
      • 1...Rh1
        • 2.Ra2#
      • 1...Ra2
        • 2.Rxa2#
      • 1...Ra3
        • 2.Rxb4#
      • 1...Rc1+!
    • 1.Kc8?
      • 1...Ra8+
        • 2.Qxa8#
      • 1...Ra6
        • 2.Qxa6#
      • 1...Ra7
        • 2.Qxa7#
      • 1...Rb1
        • 2.Ra2#
      • 1...Rd1
        • 2.Ra2#
      • 1...Re1
        • 2.Ra2#
      • 1...Rf1
        • 2.Ra2#
      • 1...Rg1
        • 2.Ra2#
      • 1...Rh1
        • 2.Ra2#
      • 1...Ra2
        • 2.Rxa2#
      • 1...Ra3
        • 2.Rxb4#
      • 1...Rc1+!
    • 1.Sb1?
      • threat
        • 2.Rxb4#
      • 1...Ra8+
        • 2.Qxa8#
      • 1...Ra6
        • 2.Qxa6#
      • 1...Ra7
        • 2.Qxa7#
      • 1...Rxb1!
    • 1.Sc4?
      • threat
        • 2.Rxb4#
      • 1...Ra8+
        • 2.Qxa8#
      • 1...bxc4!
    • 1.Se4?
      • threat
        • 2.Sc5#
      • 1...Ra8+
        • 2.Qxa8#
      • 1...Ra6
        • 2.Qxa6#
      • 1...Ra7
        • 2.Qxa7#
      • 1...Rc1!
    • 1.Rc2?
      • 1...Ra8+
        • 2.Qxa8#
      • 1...Ra6
        • 2.Qxa6#
      • 1...Ra7
        • 2.Qxa7#
      • 1...Rb1
        • 2.Ra2#
      • 1...Rc1
        • 2.Ra2#
      • 1...Rd1
        • 2.Ra2#
      • 1...Re1
        • 2.Ra2#
      • 1...Rf1
        • 2.Ra2#
      • 1...Rg1
        • 2.Ra2#
      • 1...Rh1
        • 2.Ra2#
      • 1...Ra2
        • 2.Rxa2#
      • 1...Ra3!
    • 1.Qa6?
      • 1...Rb1
        • 2.Ra2#
      • 1...Rc1
        • 2.Ra2#
      • 1...Rd1
        • 2.Ra2#
      • 1...Re1
        • 2.Ra2#
      • 1...Rf1
        • 2.Ra2#
      • 1...Rg1
        • 2.Ra2#
      • 1...Rh1
        • 2.Ra2#
      • 1...Ra2
        • 2.Rxa2#
      • 1...Ra3
        • 2.Rxb4#
      • 1...Rxa6!
    • 1.Qa8?
      • 1...Ra6
        • 2.Qxa6#
      • 1...Ra7
        • 2.Qxa7#
      • 1...Rb1
        • 2.Ra2#
      • 1...Rc1
        • 2.Ra2#
      • 1...Rd1
        • 2.Ra2#
      • 1...Re1
        • 2.Ra2#
      • 1...Rf1
        • 2.Ra2#
      • 1...Rg1
        • 2.Ra2#
      • 1...Rh1
        • 2.Ra2#
      • 1...Ra2
        • 2.Rxa2#
      • 1...Ra3
        • 2.Rxb4#
      • 1...Rxa8+!
    • 1.Qa7?
      • 1...Ra6
        • 2.Qxa6#
      • 1...Rb1
        • 2.Ra2#
      • 1...Rc1
        • 2.Ra2#
      • 1...Rd1
        • 2.Ra2#
      • 1...Re1
        • 2.Ra2#
      • 1...Rf1
        • 2.Ra2#
      • 1...Rg1
        • 2.Ra2#
      • 1...Rh1
        • 2.Ra2#
      • 1...Ra2
        • 2.Rxa2#
      • 1...Ra3
        • 2.Rxb4#
      • 1...Rxa7!
  • Keys
    • 1.Qh1!
      • threat
        • 2.Qxa1#
      • 1...Ra8+
        • 2.Qxa8#
      • 1...Rxh1
        • 2.Ra2#
      • 1...Rb1
        • 2.Ra2#
      • 1...Rc1
        • 2.Ra2#
      • 1...Rd1
        • 2.Ra2#
      • 1...Re1
        • 2.Ra2#
      • 1...Rf1
        • 2.Ra2#
      • 1...Rg1
        • 2.Ra2#
      • 1...Ra2
        • 2.Rxa2#
      • 1...Ra3
        • 2.Rxb4#

FEATURES


  • Static
    • TYPE = BLOCK_THREAT
    • CHANGED MATES = 0
    • ADDED MATES = 0
    • REMOVED MATES = 2
  • Sets
    • R(a);N_GUARD::R(A)
    • R(a);N_GUARD::R(A),XR(a)
    • R(a);SBLOCK::R1(C),XP(c)
    • R(e);OGATEB::QAR2(F),XR(e)
    • R(e);OGATEB::QAR(F),XR(e)
    • R(e);CHECK,OGATEB::QAR(F),XR(e)
  • Tries
    • Try
      • K(G);S_FLIGHT
      • Vars
        • R(e);OGATEB::QAR2(F),XR(e)
        • R(e);OGATEB,P_PINQ(F)::QAR(F),XR(e)
        • R(e);OGATEB::QAR(F),XR(e)
        • R(a);N_GUARD::R(A)
        • R(a);N_GUARD::R(A),XR(a)
        • R(a);SBLOCK::R1(C),XP(c)
      • Refutation
        • R(a);CHECK
    • Try
      • K(G);P-FLIGHT
      • Vars
        • R(e);CHECK,OGATEB::QAR(F),XR(e)
        • R(e);OGATEB::QAR2(F),XR(e)
        • R(e);OGATEB::QAR(F),XR(e)
        • R(a);N_GUARD::R(A)
        • R(a);N_GUARD::R(A),XR(a)
        • R(a);SBLOCK::R1(C),XP(c)
      • Refutation
        • R(a);CHECK
    • Try
      • S(B);
      • Threat
        • R1(C),XP(c)
      • Vars
        • R(e);CHECK,OGATEB::QAR(F),XR(e)
        • R(e);OGATEB::QAR2(F),XR(e)
        • R(e);OGATEB::QAR(F),XR(e)
      • Refutation
        • R(a);XS(B)
    • Try
      • S(B);
      • Threat
        • R1(C),XP(c)
      • Vars
        • R(e);CHECK,OGATEB::QAR(F),XR(e)
      • Refutation
        • P(f);XS(B)
    • Try
      • S(B);
      • Threat
        • S(B)
      • Vars
        • R(e);CHECK,OGATEB::QAR(F),XR(e)
        • R(e);OGATEB::QAR2(F),XR(e)
        • R(e);OGATEB::QAR(F),XR(e)
      • Refutation
        • R(a);
    • Try
      • R(A);
      • Vars
        • R(e);CHECK,OGATEB::QAR(F),XR(e)
        • R(e);OGATEB::QAR2(F),XR(e)
        • R(e);OGATEB::QAR(F),XR(e)
        • R(a);N_GUARD::R(A)
        • R(a);N_GUARD::R(A),XR(a)
      • Refutation
        • R(a);
    • Try
      • Q(F);P_PINR(e)
      • Vars
        • R(a);N_GUARD::R(A)
        • R(a);N_GUARD::R(A),XR(a)
        • R(a);SBLOCK::R1(C),XP(c)
      • Refutation
        • R(e);N_SPINR(e),XQ(F)
    • Try
      • Q(F);P_PINR(e)
      • Vars
        • R(e);OGATEB::QAR2(F),XR(e)
        • R(e);OGATEB::QAR(F),XR(e)
        • R(a);N_GUARD::R(A)
        • R(a);N_GUARD::R(A),XR(a)
        • R(a);SBLOCK::R1(C),XP(c)
      • Refutation
        • R(e);CHECK,N_SPINR(e),XQ(F)
    • Try
      • Q(F);P_PINR(e)
      • Vars
        • R(e);OGATEB::QAR2(F),XR(e)
        • R(a);N_GUARD::R(A)
        • R(a);N_GUARD::R(A),XR(a)
        • R(a);SBLOCK::R1(C),XP(c)
      • Refutation
        • R(e);N_SPINR(e),XQ(F)
  • Actual
    • Q(F);
    • Threat
      • QAR(F),XR(a)
    • Vars
      • R(e);CHECK,OGATEB::QAR(F),XR(e)
      • R(a);N_GUARD,XQ(F)::R(A)
      • R(a);N_GUARD::R(A)
      • R(a);N_GUARD::R(A),XR(a)
      • R(a);SBLOCK::R1(C),XP(c)


Developed and maintained by Brian Stephenson.
Implemented with HTML5, MySQL, Perl (with, inter alia, CGI::Simple, HTML::Template & XML::LibXML) & CSS/Javascript (jQuery, Bootstrap & DataTables).