Historically the name India may referred to either the region of Greater India and the Indian subcontinent. Today it refers to the contemporary Republic of India located therein. But originally the name is derived from the name of the Sindhu (Indus River) which is in Pakistan today, and it has been in use in Greek since Herodotus (4th century BC). The term appeared in Old English as early the 9th century and reemerged in Modern English in the 17th century.
The Republic of India has two principal short names in both official and popular English usage, each of which is historically significant, India and Bharat. The first article of the Constitution of India states that "India, that is Bharat, shall be a union of states," implicitly codifying India and Bharat as equally official short names for the Republic of India. A third name, Hindustan, is a historical term for the north and northwestern subcontinent (especially during the British India period) that is now widely used as an alternative name for the region comprising most of the modern nations of the subcontinent when Indians speak among themselves. The usage of Bharat, Hindustan or India is dependent on the context and language of conversation.
According to Manusmṛti (2.21–22) North India (i.e., India north of the Vindhyas) is also known as Āryāvarta (Sanskrit: आर्यावर्त, abode of the Aryans).
The English term is from Greek Ἰνδία (Indía), via Latin India. Indía in Koine Greek denoted the region beyond the Indus (Ἰνδός) river in the Pakistan, since Herodotus (5th century BC) ἡ Ἰνδική χώρη, hē Indikē chōrē; "the Indian land", Ἰνδός, Indos, "an Indian", from Old Persian Hinduš and listed as a conquered territory by Darius I in the Persepolis terrace inscription). The name is derived ultimately from Sindhu, the Sanskrit name of the river which is a part of Pakistan today, but also meaning "river" generically. Latin India is used by Lucian(2nd century).