Jaime Peraire

41 papers C 1Journal 37Unranked 3
YearRankTypeTitle / Venue / Authors
2024 J jnl
J. Sci. Comput.
Ngoc Cuong Nguyen, Jaime Peraire
2024 J jnl
J. Comput. Phys.
Ngoc Cuong Nguyen, R. Loek Van Heyningen, Jordi Vila-Pérez, Jaime Peraire
2023 J jnl
CoRR
R. Loek Van Heyningen, Ngoc Cuong Nguyen, Patrick Blonigan, Jaime Peraire
2023 J jnl
J. Comput. Phys.
Ngoc Cuong Nguyen, Jordi Vila-Pérez, Jaime Peraire
2023 J jnl
CoRR
Ngoc Cuong Nguyen, Jaime Peraire
2023 J jnl
J. Comput. Phys.
Ngoc Cuong Nguyen, Jaime Peraire
2023 J jnl
CoRR
Ngoc Cuong Nguyen, Jaime Peraire
2023 J jnl
J. Comput. Phys.
Ferran Vidal-Codina, Cristian Ciracì, Ngoc Cuong Nguyen, Sang-Hyun Oh, Jaime Peraire
2023 J jnl
CoRR
Ngoc Cuong Nguyen, R. Loek Van Heyningen, Jordi Vila-Pérez, Jaime Peraire
2021 J jnl
J. Comput. Phys.
Ferran Vidal-Codina, Ngoc Cuong Nguyen, Cristian Ciracì, Sang-Hyun Oh, Jaime Peraire
2020 J jnl
J. Comput. Phys. X
C. Ciuca, Pablo Fernández, Alexandra Christophe, Ngoc Cuong Nguyen, Jaime Peraire
2019 J jnl
J. Comput. Phys. X
Ferran Vidal-Codina, Joel Saà-Seoane, Ngoc Cuong Nguyen, Jaime Peraire
2018 J jnl
J. Comput. Phys.
Ferran Vidal-Codina, Ngoc Cuong Nguyen, Sang-Hyun Oh, Jaime Peraire
2018 J jnl
SIAM J. Sci. Comput.
Ngoc Cuong Nguyen, Pablo Fernández, Robert M. Freund, Jaime Peraire
2018 J jnl
J. Comput. Phys.
Ferran Vidal-Codina, Ngoc Cuong Nguyen, Jaime Peraire
2018 J jnl
J. Sci. Comput.
Pablo Fernández, Alexandra Christophe, Sébastien Terrana, Ngoc Cuong Nguyen, Jaime Peraire
2018 J jnl
CoRR
Pablo Fernández, Ngoc Cuong Nguyen, Jaime Peraire
2017 J jnl
J. Comput. Phys.
Manuel A. Sánchez, C. Ciuca, Ngoc Cuong Nguyen, Jaime Peraire, Bernardo Cockburn
2017 J jnl
J. Comput. Phys.
Pablo Fernández, Ngoc Cuong Nguyen, Jaime Peraire
2016 J jnl
SIAM/ASA J. Uncertain. Quantification
Ferran Vidal-Codina, Ngoc Cuong Nguyen, Michael B. Giles, Jaime Peraire
2016 J jnl
J. Comput. Phys.
Ngoc Cuong Nguyen, Jaime Peraire
2016 J jnl
CoRR
Pablo Fernández, Ngoc Cuong Nguyen, Xevi Roca, Jaime Peraire
2015 J jnl
J. Comput. Phys.
Ngoc Cuong Nguyen, Jaime Peraire, Bernardo Cockburn
2015 J jnl
J. Comput. Phys.
Ferran Vidal-Codina, Ngoc Cuong Nguyen, Michael B. Giles, Jaime Peraire
2015 J jnl
J. Comput. Phys.
Ngoc Cuong Nguyen, Jaime Peraire, Fernando Reitich, Bernardo Cockburn
2015 J jnl
Eng. Comput.
Abel Gargallo-Peiró, Xevi Roca, Jaime Peraire, Josep Sarrate
2015 J jnl
Math. Comput.
Jayadeep Gopalakrishnan, F. Li, Ngoc Cuong Nguyen, Jaime Peraire
2014 J jnl
Oper. Res.
Han Men, Robert M. Freund, Ngoc Cuong Nguyen, Joel Saà-Seoane, Jaime Peraire
2013 conf
IMR
Abel Gargallo-Peiró, Xevi Roca, Jaime Peraire, Josep Sarrate
2012 conf
IMR
Abel Gargallo-Peiró, Xevi Roca, Jaime Peraire, Josep Sarrate
2009 J jnl
J. Comput. Phys.
Duc-Vinh Le, Jacob K. White, Jaime Peraire, Kian Meng Lim, B. C. Khoo
2008 J jnl
SIAM J. Sci. Comput.
Per-Olof Persson, Jaime Peraire
2008 J jnl
SIAM J. Sci. Comput.
Jaime Peraire, Per-Olof Persson
2006 J jnl
J. Comput. Phys.
Duc-Vinh Le, Boo Cheong Khoo, Jaime Peraire
2004 J jnl
SIAM J. Numer. Anal.
A. M. Sauer-Budge, Javier Bonet, Antonio Huerta, Jaime Peraire
2004 J jnl
SIAM J. Sci. Comput.
A. M. Sauer-Budge, Jaime Peraire
2004 J jnl
Comput. Phys. Commun.
Shannon Cheng, Mark Santi, Murat Celik, Manuel Martínez-Sánchez, Jaime Peraire
2003 conf
ICCSA (1)
Z. C. Xuan, K. H. Lee, Jaime Peraire
1999 J jnl
Graph. Model. Image Process.
Wonjoon Cho, Takashi Maekawa, Nicholas M. Patrikalakis, Jaime Peraire
1998 J jnl
Comput. Aided Des.
Wonjoon Cho, Nicholas M. Patrikalakis, Jaime Peraire
1998 C conf
Computer Graphics International
Wonjoon Cho, Takashi Maekawa, Nicholas M. Patrikalakis, Jaime Peraire
redb/extractors/decompiler/bninja/analysis/strings.py
← Index redb/extractors/decompiler/bninja/analysis/strings.py python
from collections import Counter
import math

class StringAnalysis:
    def __init__(self, bv, functions):
        self.bv = bv
        self.functions = functions

    def entropy(self, s: str) -> float:
        """Compute Shannon entropy of a string."""
        if not s:
            return 0.0
        freq = Counter(s)
        length = len(s)
        return -sum((count / length) * math.log2(count / length) for count in freq.values())

    def analyze(self):
        """
        Extract unique strings from the binary.

        Deduplicates by (string, encoding) within the same binary, keeping the
        first occurrence (lowest offset). Cross-binary deduplication and
        aggregation is handled by ClickHouse materialized views.
        """
        strings = {}

        # Sort strings by their starting address
        sorted_entries = sorted(self.bv.strings, key=lambda e: e.start)

        for entry in sorted_entries:
            # Key is the string and its encoding
            key = (entry.value, entry.type.name)

            # Skip if this string (value + encoding) was already added.
            # Because entries are sorted by address, the first one is always kept.
            if key in strings:
                continue

            # Store only the first occurrence with schema-matching field names
            # entry.length is the raw byte length, len(entry.value) is decoded string length
            string_entry = {
                "string": entry.value,
                "string_raw": entry.raw,
                "string_encoding": entry.type.name,
                "string_offset": entry.start,
                "string_length": len(entry.value),
                "string_raw_length": entry.length,
                "string_entropy": self.entropy(entry.value),
            }

            strings[key] = string_entry

        # Return as list for export compatibility
        return list(strings.values())