Use of text fragments in compression and searching of natural language databases