Apart from vy/by, are there any other cases in Pali where v = b?

As is well known, manuscripts oscillate between vy/by, eg. vyākaraṇa vs. byākaraṇa. For machine processing of Pali text, this must be handled.

Are there any other cases of this v/b substitution?


That is literally the same: vy/by.

There’s kabala and kabalinkāra.

And a few proper nouns:

Vakkula Bakkula Bākula
Veluva Beḷuva
Vindusāra Bindusāra (Asoka’s dad)
Vārāṇasī Bārāṇasī (the v spelling only in later texts)


Right, yes. Spelling variations in names are a whole other level!

Oh, and a few others in Cone:

  • beluva/veluva
  • bilāra/vilāra

Not so many though. It looks like maybe the best way to handle it on the machine end is simply to make a list of ambiguous cases.

1 Like

Thanks so much for starting this topic!

I found that although in the roman iast spelling there might not be that many changes, in the conversion to Bengali f.i. it changes considerably. Maybe Bengali does not make a difference between ‘b’ and ‘v’? It also happens with other asian languages.

For instance if you use the Aksharamukha converter (which is used on SuttaCentral):

Original input text: ekaṁ samayaṁ bhagavā rājagahe viharati jīvakassa komārabhaccassa ambavane mahatā bhikkhusaṅghena saddhiṁ aḍḍhateḷasehi bhikkhusatehi.

Bengali output: একং সময়ং ভগবা রাজগহে বিহরতি জীবকস্স কোমারভচ্চস্স অম্ববনে মহতা ভিক্খুসঙ্ঘেন সদ্ধিং অড্ঢতেঌঅসেহি ভিক্খুসতেহি।

And then put the Bengali output again in the input and convert it back:
ekaṃ samaẏaṃ bhagabā rājagahe biharati jībakassa komārabhaccassa ambabane mahatā bhikkhusaṅghena saddhiṃ aḍḍhateḷasehi bhikkhusatehi.

This is unfortunately messing with our ability to auto-translate such sentences and I’m not entirely sure how to deal with this right now. At least for scripts like Devanagari it works fine. And at least letting the system know that it can convert vy/by as well as a few other exceptions will already be a great help.


I’d recommend reaching out to the creator of that site if you haven’t already. I believe his PhD is related to Asian scripts. If anyone would know he probably would.

1 Like

Indeed, Aksharamukha should be lossless, let Vinodh know, he will be grateful for the feedback.

1 Like

It’s not just Aksharamukha that has this problem. Sanscript Transliterator (GitHub - indic-transliteration/sanscript.js: Transliteration package for Indian scripts) also has the same problem so I suspect it has more to do with certain Asian languages. But I will ask Vinodh what he thinks and get back to you here!

To find a solution to our problem, I would like to ask for the opposite question too: Are there any words where the change from ‘v’ to ‘b’ gives a different meaning (and not just a non-existent word)?

The reasoning behind this is that if we tell the computer that ‘v’ == ‘b’, in other words that bhagavā == bhagabā and use the same translation for both, it won’t spit out rubbish any more for words it doesn’t recognize.

(Ps … found this in the SC source code :

            if (wordForMatch.match(/vy/)) {
              wordForMatch = wordForMatch.replace(/vy/g, 'by');
            } else if (wordForMatch.match(/by/)) {
              wordForMatch = wordForMatch.replace(/by/g, 'vy');
            } else {



Yeah. Bengali (and Oriya) don’t differentiate between /v/ and /b/ at intervocalic positions. In fact, the mainstream Bengali orthography has a single grapheme <b> that is realized as /w/ at post-consonantal positions (<sba> /swa/) and as /b/ at intervocalic positions (<naba> /naba/).

(This may be why Tibetan Sanskrit always almost uses /b/ at intervocalic position, where you’d normally expect /v/. It’s possibly because the texts were transmitted through East India. FWIW Many of the Mahasiddhas were from what is now Odisha and Bengal).

You can use some extra letters (some publishers have done that) if you want to be pedantic about preserving /v/ at all positions. As in: bhagavā as ভগভ়া (bhagab̈hā) instead of ভগবা (bhagabā). But the general audience wouldn’t be able to recognize the words at first sight.



IIRC many languages of India do not have the phoneme /v/ and (in almost all cases) it has merged with /b/. The name of the Indian state of Bihar comes from the fact that it was filled with Buddhist Viharas in the past( Bihār < Bihār(a) < Vihāra ).

1 Like

It was on Digital Palaeography :smile:



Thanks so much @virtualvinodh ! This is very helpful!

1 Like