added prenexing part