London - Novak Djokovic produced a tennis masterclass on Saturday to beat Kevin Anderson and set up a title decider at the ATP Finals against Alexander Zverev, who ousted Roger Federer thanks to a bizarre ball boy blunder.
World number one Djokovic comfortably saw off the South African fourth seed 6-2, 6-2, the Serb never looking remotely troubled as he targets a record-equalling sixth end-of-season title at London's O2 Arena.
Earlier, 21-year-old Zverev beat Federer 7-5, 7-6 (7/5), denying the Swiss veteran a tilt at his 100th title.
Anderson came into the evening contest knowing his serve had to be firing on all cylinders if he was to stand any chance against Djokovic - one of the greatest returners in the history of the game.
But the giant South African landed just 48 percent of first serves in the first set and Djokovic was ruthless in punishing his opponent, breaking in the first game and repeating the feat before serving out for the set.
Hitting the ball with mesmeric accuracy, Djokovic broke his fading opponent at the start of the second set and again in the fifth game to underline his total domination.
His serving numbers are even more phenomenal than his returning - he has not been broken once in four matches in London and has faced just two break points.
The 14-time Grand Slam champion has only lost two matches since July as he makes up for lost time following elbow surgery and poor form earlier in the season.
The end of the Federer-Zverev match was overshadowed by an unusual incident, Zverev stopping a rally with Federer leading 4-3 in the second-set tie-break after a ball boy dropped a ball.
Zverev won the replayed point with an ace and nudged into a 5-4 lead before Federer inexplicably netted with a simple forehand volley to hand the German two match points, the second of which he took on his own serve.
On-court interviewer Annabel Croft told the pro-Federer O2 crowd to be "more respectful" after they showered him with boos, as Zverev had been playing by the rules.
"Obviously the crowd didn't appreciate it, which I was a little bit upset -- not upset, but I was a little bit sad at the end with the booing and reaction of the crowd," said Zverev.
"Maybe they didn't know what actually happened. That was maybe part of the reaction. But, you know, at the end of the day I said sorry to Roger at the net. He said 'Look, you don't even have to apologise'."
Federer described it as a "big call" but said Zverev was not to blame.
Serve dominated the first set of a high-class match but the Swiss, a six-time champion at the Finals, eventually faltered in the 12th game.
The second seed regrouped and drew first blood in the second set, breaking in the third game with a thunderous backhand down the line that drew enormous cheers from the partisan crowd.
But the frustrated 20-time Grand Slam winner could not consolidate his position, losing the next game as Zverev levelled at 2-2.
The eventual tie-break went with serve until the 10th point, when Federer netted to hand Zverev a mini-break -- an advantage he did not squander.