개시된 발명은 자연어를 분석하는데 사용되는 문법을 생성함에 있어서, 공통된 요소를 포함하는 복수의 문법을 압축함으로써 입력 문장의 문법을 인식하는데 소요되는 자원과 시간을 줄일 수 있는 자연어 처리 방법, 문법 생성 방법 및 대화 시스템을 제공한다. 일 실시예에 따른 자연어 처리 방법은, 입력 문장을 형태소 단위로 분리하는 단계; 상기 형태소 단위로 분리된 입력 문장의 문법을 인식하는 단계; 및 상기 인식된 문법에 기초하여 상기 입력 문장의 의미를 분석하는 단계;를 포함하고, 상기 문법을 인식하는 단계는, 미리 저장된 복수의 문법 중에서 상기 형태소 단위로 분리된 입력 문장에 매칭되는 문법을 인식하는 것을 포함하고, 상기 미리 저장된 복수의 문법은, 하나의 문법을 구성하는 복수의 구성 요소 중 적어도 하나의 구성 요소가 공통되는 2 이상의 문법이 압축된 적어도 하나의 문법을 포함한다.