Completed successor function