最长公共子序列
计算机科学
子序列
算法
架空(工程)
并行算法
表达式(计算机科学)
时间复杂性
数学
有界函数
操作系统
数学分析
程序设计语言
标识
DOI:10.1142/s0129626421500079
摘要
Given a mathematical expression in LaTeX or MathML format, retrieval algorithm extracts similar expressions from a database. In our previous work, we have used Longest Common Subsequence (LCS) algorithm to match two expressions of lengths, [Formula: see text] and [Formula: see text], which takes [Formula: see text] time complexity. If there are [Formula: see text] database expressions, total complexity is [Formula: see text], and an increase in [Formula: see text] also increases this complexity. In the present work, we propose to use parallel LCS algorithm in our retrieval process. Parallel LCS has [Formula: see text] time complexity with [Formula: see text] processors and total complexity can be reduced to [Formula: see text]. For our experimentation, OpenMP based implementation has been used on Intel [Formula: see text] processor with 4 cores. However, for smaller expressions, parallel version takes more time as the implementation overhead dominates the algorithmic improvement. As such, we have proposed to use parallel version, selectively, only on larger expressions, in our retrieval algorithm to achieve better performance. We have compared the sequential and parallel versions of our ME retrieval algorithm, and the performance results have been reported on a database of 829 mathematical expressions.
科研通智能强力驱动
Strongly Powered by AbleSci AI