optimize planner by: 1. reduce duplicated calculation on equals, getOutput, computeOutput eq. 2. getOnClauseUsedSlots: the two side of equalTo is centainly slot, so not need to use List.
optimize planner by: 1. reduce duplicated calculation on equals, getOutput, computeOutput eq. 2. getOnClauseUsedSlots: the two side of equalTo is centainly slot, so not need to use List.