Доктор Саураб Джоши

Директор по исследованиям и разработкам

PhD в области компьютерных наук
Индийский технологический институт, Канпур
github-icongoogle-icon
Research Team Member

О нас

Доктор Саураб Джоши является ведущим исследователем в Supra. Он получил степень магистра в IIT Bombay, после чего присоединился к группе разработки программного обеспечения в IBM India Research. Он получил степень PhD в IIT Kanpur, сосредоточившись на верификации программного обеспечения. Во время своей исследовательской стажировки в Microsoft Research он был соавтором патента США. Он внес ключевые вклады в разработку алгоритмов и реализацию OpenWBO, удостоенного награды MaxSAT решателя, во время своего постдока в Оксфордском университете. После кратковременной работы в качестве преподавателя в IIT Guwahati он присоединился к IIT Hyderabad в качестве преподавателя. Он был удостоен премии за ранние исследования в карьере от DST, Индия. Он разработал Pinaka, быстрый движок символического выполнения, который занимал топ-3 места на конкурсе по верификации программного обеспечения (SVCOMP) в нескольких подкатегориях в течение нескольких лет подряд. Он наставлял нескольких магистров и докторантов по их дипломным работам и завершил несколько спонсируемых и консультационных исследовательских проектов, финансируемых различными частными компаниями и государственными учреждениями. Он возглавлял команду в группе по безопасности продуктов в Qualcomm, отвечающую за улучшение безопасности в низкоуровневом стеке программного обеспечения.

Web3 предоставляет платформу, требующую решений для проблем в нескольких областях исследований компьютерных наук, таких как распределенные системы, криптография, теория игр, комбинаторика, языки программирования и формальная верификация. Очарованный таким разнообразием проблем, он присоединился к Supra. В настоящее время он работает над разработкой масштабируемого, быстрого, прозрачного и устойчивого блокчейн-оракула.

Как исследователь, он любит изучать и применять различные математические и инженерные методы и инструменты для решения задач, имеющих реальные промышленные приложения.

Интересы и экспертиза

Традиционные методы тестирования, хотя и эффективны для крупных приложений, никогда не могут доказать, что программное обеспечение свободно от ошибок. Критически важные области применения, такие как авиация, космические исследования, транспорт, здравоохранение и финансы, требуют, чтобы используемое в этих областях программное обеспечение строго соответствовало спецификации. Ущерб, нанесенный ошибочным программным обеспечением в этих областях, может привести к огромным финансовым потерям, а в худшем случае — к многочисленным жертвам. Область формальной верификации и формальных методов сосредоточена на разработке техник и инструментов, чтобы обеспечить наивысший уровень гарантий безопасности, стремясь доказать, что базовая система не содержит ошибок. Я начал изучать эту область около двух десятилетий назад в рамках своей магистерской диссертации.

Хотя общие методы формальной верификации обеспечивают основу для исследования пространства состояний для общей системы, понимание семантики языков программирования, систем типов, анализа программ и компиляторов позволяет адаптировать некоторые методы формальной верификации для программных систем. Языки программирования, такие как Rust и Move, стремятся улучшить качество программного обеспечения, следуя принципу «Предупреждение лучше лечения» через свои сильные системы типов. Функциональное программирование сейчас активно внедряется и популяризируется в рамках многих популярных императивных языков программирования. Такие принципы разработки языков программирования значительно помогают в автоматизированных рассуждениях о программном обеспечении. Я был автором/внес ключевой вклад в разработку нескольких инструментов анализа программ/верификации программного обеспечения/автоматизированного исправления, таких как Pinaka, CBugs, AtomicInf, CBMC-Repair, 2LS, LLOV, GPURepair и другие.

Многие инструменты автоматизированного рассуждения полагаются на представление программы в виде набора ограничений. Решение этих ограничений часто можно сопоставить с ошибкой, которая может проявиться во время выполнения. Отсутствие какого-либо решения для ограничений означает отсутствие ошибок. Современные решатели ограничений (например, SAT/SMT-решатели) способны обрабатывать миллионы ограничений. Область программирования ограничений сосредоточена на разработке техник для поиска решения данного набора ограничений с высокой скоростью или доказательства того, что решение не существует. Я был автором/внес ключевой вклад в разработку решателей, таких как OpenWBO, OpenWBO-Inc, Shesha и CryptoMiniSAT.

Блокчейн можно рассматривать как выполнение детерминированной машины состояний. Выполнение этого «исполнения» в децентрализованной и отказоустойчивой манере требует знаний из области исследований распределенных систем. В Supra мы разработали DORA как новый протокол распределенного согласования оракулов для разработки быстрого, масштабируемого, прозрачного и устойчивого блокчейн-оракула."

Комментарий

В Supra я занимался разработкой высокоустойчивого, быстрого, масштабируемого и прозрачного протокола оракула. Блокчейн как область исследований предлагает много возможностей, так как он имеет несколько важных приложений в реальной жизни. Мы уже стали свидетелями использования блокчейна в финансах и играх. Некоторые правительства уже используют блокчейны как неизменяемый реестр для хранения данных об объектах недвижимости (например, земельные участки) и цифровых валютах центральных банков.

Потенциал блокчейна для сокращения судебных споров в бизнес-транзакциях безграничен. Он имеет потенциал для реализации множества бизнес-транзакций между ненадежными сторонами с соблюдением согласованных SLA и условий, что ускоряет процесс этих бизнес-транзакций. Наряду с этими приложениями требуются решения для ряда исследовательских задач, связанных с конфиденциальностью и гарантиями справедливости.

наставничество

Саураб Джоши наставлял нескольких магистров и докторантов по их дипломным работам в IIT Hyderabad. Как преподаватель, он преподавал Принципы языков программирования, Введение в программирование, Основы разработки программного обеспечения, Программную инженерию на уровне бакалавриата, а также Программирование ограничений, Верификацию программного обеспечения на уровне магистратуры.

2023

SUPRATECH

DORA: Соглашение распределенного Oracle с простым большинством

с Прасантом Чаккой, Доктор Аникет Кейт, Джошуа Д. Тобкин и Доктор Дэвид Янг • 43-я Международная конференция IEEE по распределенным вычислительным системам (ICDCS), 2023 • Прочитать litepaper

2019

Pinaka: Символическое выполнение встречает инкрементальное решение

с Эти Чаудхари • Часть серии книг Lecture Notes in Computer Science (LNTCS, том 11429)

2017

Точный предсказательный анализ для обнаружения взаимных блокировок в коммуникациях в MPI-программах

с Войтехом Форейтом, Дэниелом Кроенингом, Ганешем Нараянасвами и Субодом Шармой • ACM Transactions on Programming Languages and Systems

2014

Инкрементальные ограничения на кардинальность для MaxSAT

с Рубеном Мартинсом, Васко Манкиньо и Инес Линче • Часть серии книг Lecture Notes in Computer Science (LNPSE, том 8656)

2012

Недоопределённые инструменты и переплетённые ошибки

с Шувенду К. Лахири и Акашем Лалом • POPL '12: Труды 39-го ежегодного симпозиума ACM SIGPLAN-SIGACT по принципам языков программирования

Потенциал блокчейна для сокращения судебных споров в бизнес-транзакциях безграничен. Он имеет потенциал для реализации множества бизнес-транзакций между ненадежными сторонами с соблюдением согласованных SLA и условий, что ускоряет процесс этих бизнес-транзакций.

Доктор Саураб Джоши

Познакомьтесь с остальной командой