CREATE TABLE paperdataset (paperid NUMBER, datasetid NUMBER)
CREATE TABLE keyphrase (keyphraseid NUMBER, keyphrasename VARCHAR2)
CREATE TABLE paperfield (fieldid NUMBER, paperid NUMBER)
CREATE TABLE venue (venueid NUMBER, venuename VARCHAR2)
CREATE TABLE cite (citingpaperid NUMBER, citedpaperid NUMBER)
CREATE TABLE journal (journalid NUMBER, journalname VARCHAR2)
CREATE TABLE author (authorid NUMBER, authorname VARCHAR2)
CREATE TABLE dataset (datasetid NUMBER, datasetname VARCHAR2)
CREATE TABLE paper (paperid NUMBER, title VARCHAR2, venueid NUMBER, year NUMBER, numciting NUMBER, numcitedby NUMBER, journalid NUMBER)
CREATE TABLE paperkeyphrase (paperid NUMBER, keyphraseid NUMBER)
CREATE TABLE writes (paperid NUMBER, authorid NUMBER)
CREATE TABLE field (fieldid NUMBER)

who writes about Multiuser Receiver for Decision Feedback
SELECT DISTINCT writes.authorid FROM keyphrase, paper, paperkeyphrase, writes WHERE keyphrase.keyphrasename IN ('Multiuser Receiver', 'Decision Feedback') AND paperkeyphrase.keyphraseid = keyphrase.keyphraseid AND paper.paperid = paperkeyphrase.paperid AND writes.paperid = paper.paperid GROUP BY writes.authorid HAVING COUNT(DISTINCT keyphrase.keyphrasename) > 1
SELECT DISTINCT "writes"."authorid" FROM "keyphrase" JOIN "paperkeyphrase" ON "keyphrase"."keyphraseid" = "paperkeyphrase"."keyphraseid" JOIN "paper" ON "paper"."paperid" = "paperkeyphrase"."paperid" JOIN "writes" ON "paper"."paperid" = "writes"."paperid" WHERE "keyphrase"."keyphrasename" IN ('Multiuser Receiver', 'Decision Feedback') GROUP BY "writes"."authorid" HAVING COUNT(DISTINCT "keyphrase"."keyphrasename") > 1