Ramon Ferrer-i-Cancho

121 papers B 1Journal 116Unranked 3
YearRankTypeTitle / Venue / Authors
2026 J jnl
Appl. Netw. Sci.
Ramon Ferrer-i-Cancho, Marta Arias
2025 J jnl
CoRR
Ramon Ferrer-i-Cancho
2025 J jnl
J. Quant. Linguistics
Ramon Ferrer-i-Cancho
2025 J jnl
Glottometrics
Sonia Petrini, Ramon Ferrer-i-Cancho
2025 J jnl
CoRR
Ramon Ferrer-i-Cancho
2025 J jnl
CoRR
Ramon Ferrer-i-Cancho, Marta Arias
2024 J jnl
CoRR
Ramon Ferrer-i-Cancho
2024 J jnl
CoRR
Víctor Franco-Sánchez, Arnau Martí-Llobet, Ramon Ferrer-i-Cancho
2024 J jnl
Inf. Process. Lett.
Lluís Alemany-Puig, Juan Luis Esteban, Ramon Ferrer-i-Cancho
2024 J jnl
CoRR
Ramon Ferrer-i-Cancho
2024 J jnl
J. Lang. Model.
Lluís Alemany-Puig, Ramon Ferrer-i-Cancho
2023 J jnl
CoRR
Sonia Petrini, Antoni Casas-i-Muñoz, Jordi Cluet-i-Martinell, Mengxue Wang, Chris Bentz, Ramon Ferrer-i-Cancho
2023 J jnl
Glottometrics
Sonia Petrini, Antoni Casas-i-Muñoz, Jordi Cluet-i-Martinell, Mengxue Wang, Christian Bentz, Ramon Ferrer-i-Cancho
2023 J jnl
CoRR
Stuart Semple, Ramon Ferrer-i-Cancho, Morgan L. Gustison
2023 J jnl
CoRR
Lluís Alemany-Puig, Juan Luis Esteban, Ramon Ferrer-i-Cancho
2023 J jnl
CoRR
Ramon Ferrer-i-Cancho, Savithry Namboodiripad
2023 J jnl
Glottometrics
Ramon Ferrer-i-Cancho, Savithry Namboodiripad
2022 J jnl
Comput. Linguistics
Lluís Alemany-Puig, Ramon Ferrer-i-Cancho
2022 J jnl
CoRR
Lluís Alemany-Puig, Ramon Ferrer-i-Cancho
2022 J jnl
Glottometrics
Carlos Gómez-Rodríguez, Morten H. Christiansen, Ramon Ferrer-i-Cancho
2022 J jnl
Inf. Process. Lett.
Lluís Alemany-Puig, Juan Luis Esteban, Ramon Ferrer-i-Cancho
2022 J jnl
J. Quant. Linguistics
Ramon Ferrer-i-Cancho, Christian Bentz, Caio Seguin
2022 J jnl
CoRR
Lluís Alemany-Puig, Juan Luis Esteban, Ramon Ferrer-i-Cancho
2022 J jnl
CoRR
Sonia Petrini, Ramon Ferrer-i-Cancho
2022 J jnl
CoRR
Sonia Petrini, Antoni Casas-i-Muñoz, Jordi Cluet-i-Martinell, Mengxue Wang, Christian Bentz, Ramon Ferrer-i-Cancho
2021 J jnl
J. Quant. Linguistics
Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez
2021 J jnl
CoRR
Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez
2021 J jnl
CoRR
Lluís Alemany-Puig, Ramon Ferrer-i-Cancho
2021 J jnl
CoRR
Lluís Alemany-Puig, Juan Luis Esteban, Ramon Ferrer-i-Cancho
2021 J jnl
CoRR
Lluís Alemany-Puig, Juan Luis Esteban, Ramon Ferrer-i-Cancho
2021 J jnl
CoRR
David Carrera-Casado, Ramon Ferrer-i-Cancho
2021 J jnl
CoRR
Neus Català, Jaume Baixeries, Ramon Ferrer-i-Cancho, Lluís Padró, Antoni Hernández-Fernández
2020 J jnl
CoRR
Lluís Alemany-Puig, Ramon Ferrer-i-Cancho
2020 J jnl
CoRR
Lluís Alemany-Puig, Mercè Mora, Ramon Ferrer-i-Cancho
2020 J jnl
CoRR
Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez, Juan Luis Esteban, Lluís Alemany-Puig
2020 J jnl
CoRR
Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez, Juan Luis Esteban
2019 J jnl
CoRR
Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez
2019 J jnl
CoRR
Lluís Alemany-Puig, Ramon Ferrer-i-Cancho
2019 J jnl
CoRR
Carlos Gómez-Rodríguez, Morten H. Christiansen, Ramon Ferrer-i-Cancho
2019 J jnl
CoRR
Ramon Ferrer-i-Cancho, Christian Bentz
2019 J jnl
CoRR
Bernardino Casas, Antoni Hernández-Fernández, Neus Català, Ramon Ferrer-i-Cancho, Jaume Baixeries
2019 J jnl
Comput. Speech Lang.
Bernardino Casas, Antoni Hernández-Fernández, Neus Català, Ramon Ferrer-i-Cancho, Jaume Baixeries
2018 J jnl
Glottometrics
Xinying Chen, Carlos Gómez-Rodríguez, Ramon Ferrer-i-Cancho
2018 J jnl
Glottometrics
Antoni Hernández-Fernández, Ramon Ferrer-i-Cancho
2018 J jnl
J. Quant. Linguistics
Ramon Ferrer-i-Cancho
2018 J jnl
CoRR
Ramon Ferrer-i-Cancho, Michael S. Vitevitch
2018 J jnl
J. Assoc. Inf. Sci. Technol.
Ramon Ferrer-i-Cancho, Michael S. Vitevitch
2017 J jnl
SIAM J. Comput.
Juan Luis Esteban, Ramon Ferrer-i-Cancho
2017 J jnl
Glottometrics
Ramon Ferrer-i-Cancho
2017 J jnl
CoRR
Xinying Chen, Carlos Gómez-Rodríguez, Ramon Ferrer-i-Cancho
2017 J jnl
CoRR
Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez, Juan Luis Esteban
2017 J jnl
CoRR
Antoni Lozano, Bernardino Casas, Chris Bentz, Ramon Ferrer-i-Cancho
2017 J jnl
Glottometrics
Ramon Ferrer-i-Cancho
2017 J jnl
Entropy
Christian Bentz, Dimitrios Alikaniotis, Michael Cysouw, Ramon Ferrer-i-Cancho
2017 J jnl
Glottometrics
Ramon Ferrer-i-Cancho
2017 J jnl
Glottometrics
Ramon Ferrer-i-Cancho
2017 J jnl
CoRR
Ramon Ferrer-i-Cancho
2017 J jnl
CoRR
Ramon Ferrer-i-Cancho
2016 J jnl
Complex.
Ramon Ferrer-i-Cancho
2016 J jnl
CoRR
Ramon Ferrer-i-Cancho
2016 J jnl
Complex.
Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez
2016 conf
Issues in Quantitative Linguistics 4 (Dedicated to Reinhard Köhler on the occasion of his 65th birthday)
Antoni Lozano, Bernardino Casas, Chris Bentz, Ramon Ferrer-i-Cancho
2016 J jnl
Glottometrics
Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez
2016 J jnl
CoRR
Ramon Ferrer-i-Cancho, David Lusseau, Brenda McCowan
2016 conf
SLSP
Antoni Hernández-Fernández, Bernardino Casas, Ramon Ferrer-i-Cancho, Jaume Baixeries
2016 J jnl
J. Quant. Linguistics
Antoni Hernández-Fernández, Ramon Ferrer-i-Cancho
2016 J jnl
CoRR
Antoni Hernández-Fernández, Ramon Ferrer-i-Cancho
2016 J jnl
Glottometrics
Ramon Ferrer-i-Cancho
2016 J jnl
CoRR
Bernardino Casas, Neus Català, Ramon Ferrer-i-Cancho, Antoni Hernández-Fernández, Jaume Baixeries
2016 J jnl
CoRR
Juan Luis Esteban, Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez
2016 J jnl
CoRR
Carlos Gómez-Rodríguez, Ramon Ferrer-i-Cancho
2015 J jnl
CoRR
Ramon Ferrer-i-Cancho
2015 J jnl
CoRR
Juan Luis Esteban, Ramon Ferrer-i-Cancho
2015 J jnl
CoRR
Ramon Ferrer-i-Cancho, Chris Bentz, Caio Seguin
2015 J jnl
CoRR
Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez
2015 J jnl
CoRR
Ramon Ferrer-i-Cancho
2015 J jnl
CoRR
Ramon Ferrer-i-Cancho, Carlos Gómez-Rodríguez
2014 J jnl
CoRR
Ramon Ferrer-i-Cancho
2014 J jnl
CoRR
Ramon Ferrer-i-Cancho
2014 J jnl
CoRR
Ramon Ferrer-i-Cancho
2014 J jnl
CoRR
Ramon Ferrer-i-Cancho
2014 J jnl
CoRR
Ramon Ferrer-i-Cancho
2014 J jnl
CoRR
Ramon Ferrer-i-Cancho
2014 J jnl
CoRR
Alvaro Corral, Gemma Boleda, Ramon Ferrer-i-Cancho
2013 J jnl
Cogn. Sci.
Ramon Ferrer-i-Cancho, Antoni Hernández-Fernández, David Lusseau, Govindasamy Agoramoorthy, Minna J. Hsu, Stuart Semple
2013 J jnl
CoRR
Ramon Ferrer-i-Cancho, Antoni Hernández-Fernández, David Lusseau, Govindasamy Agoramoorthy, Minna J. Hsu, Stuart Semple
2013 J jnl
CoRR
Ramon Ferrer-i-Cancho, Lukasz Debowski, Fermín Moscoso del Prado Martín
2013 B conf
CogSci
Ramon Ferrer-i-Cancho, Lukasz Debowski
2013 J jnl
Biosyst.
Ramon Ferrer-i-Cancho, Jaume Baixeries, Antoni Hernández-Fernández
2013 J jnl
Glottometrics
Ramon Ferrer-i-Cancho
2013 J jnl
CoRR
Ramon Ferrer-i-Cancho
2013 J jnl
CoRR
Andrea Baronchelli, Ramon Ferrer-i-Cancho, Romualdo Pastor-Satorras, Nick Chater, Morten H. Christiansen
2013 J jnl
CoRR
Ramon Ferrer-i-Cancho
2013 J jnl
J. Quant. Linguistics
Stuart Semple, Minna J. Hsu, Govindasamy Agoramoorthy, Ramon Ferrer-i-Cancho
2013 J jnl
J. Quant. Linguistics
Jaume Baixeries, Antoni Hernández-Fernández, Núria Forns, Ramon Ferrer-i-Cancho
2013 J jnl
Complex.
Ramon Ferrer-i-Cancho, Núria Forns, Antoni Hernández-Fernández, Gemma Bel Enguix, Jaume Baixeries
2013 J jnl
CoRR
Ramon Ferrer-i-Cancho
2013 J jnl
CoRR
Ramon Ferrer-i-Cancho
2013 J jnl
CoRR
Ramon Ferrer-i-Cancho, Haitao Liu
2013 J jnl
CoRR
Ramon Ferrer-i-Cancho
2012 J jnl
CoRR
Ramon Ferrer-i-Cancho, Fermín Moscoso del Prado Martín
2012 J jnl
Biosyst.
Jaume Baixeries, Antoni Hernández-Fernández, Ramon Ferrer-i-Cancho
2012 J jnl
CoRR
Ramon Ferrer-i-Cancho, Núria Forns, Antoni Hernández-Fernández, Gemma Bel Enguix, Jaume Baixeries
2012 J jnl
CoRR
Ramon Ferrer-i-Cancho, Antoni Hernández-Fernández
2012 J jnl
CoRR
Stuart Semple, Minna J. Hsu, Govindasamy Agoramoorthy, Ramon Ferrer-i-Cancho
2011 J jnl
Entropy
Antoni Hernández-Fernández, Jaume Baixeries, Núria Forns, Ramon Ferrer-i-Cancho
2010 J jnl
Complex.
Ramon Ferrer-i-Cancho, Núria Forns
2009 J jnl
Entropy
Ramon Ferrer-i-Cancho, Brenda McCowan
2009 J jnl
Complex.
Ramon Ferrer-i-Cancho, David Lusseau
2009 J jnl
J. Assoc. Inf. Sci. Technol.
Ramon Ferrer-i-Cancho, Ricard Gavaldà
2009 J jnl
CoRR
Alvaro Corral, Ramon Ferrer-i-Cancho, Gemma Boleda, Albert Díaz-Guilera
2008 J jnl
Adv. Complex Syst.
Ramon Ferrer-i-Cancho
2008 J jnl
Adv. Complex Syst.
Ramon Ferrer-i-Cancho
2007 conf
Exact Methods in the Study of Language and Text
Ramon Ferrer-i-Cancho
2007 J jnl
Int. J. Bifurc. Chaos
Ramon Ferrer-i-Cancho, Andrea Capocci, Guido Caldarelli
2005 J jnl
Glottometrics
Ramon Ferrer-i-Cancho, Vito Servedio
2005 J jnl
Glottometrics
Ramon Ferrer-i-Cancho
2003
Ramon Ferrer-i-Cancho
2002 J jnl
J. Quant. Linguistics
Ramon Ferrer-i-Cancho, Francesc Reina
2002 J jnl
Adv. Complex Syst.
Ramon Ferrer-i-Cancho, Ricard V. Solé
2001 J jnl
J. Quant. Linguistics
Ramon Ferrer-i-Cancho, Ricard V. Solé
redb/extractors/decompiler/bninja/analysis/scores.py
← Index redb/extractors/decompiler/bninja/analysis/scores.py python
from collections import deque
from binaryninja import highlevelil
from binaryninja.enums import HighLevelILOperation


class ObfuscationScores:
    def __init__(self, hlil_function):
        self.function = hlil_function
        self._basic_blocks = list(hlil_function.basic_blocks) if hlil_function and hlil_function.basic_blocks else []
        self._block_count = len(self._basic_blocks)

    def flattened_score(self):
        """
        A heuristic for detecting control flow flattening from Tim Blazytko.
        Source: https://www.synthesis.to/2021/03/03/flattening_detection.html
        """
        if self._block_count == 0:
            return 0.0

        max_flattening_ratio = 0.0

        for basic_block in self._basic_blocks:
            dominated = get_dominated_by(basic_block)
            if not any(edge.source in dominated for edge in basic_block.incoming_edges):
                continue
            ratio = len(dominated) / self._block_count
            if ratio > max_flattening_ratio:
                max_flattening_ratio = ratio

        return max_flattening_ratio

    def MBA_score(self):
        """
        Score for MBA is obtained by the number of instructions that have at least one arithmetic operation and
        one logic operation DIVIDED by the number of instructions.
        """
        total = 0
        mba_count = 0

        for ins in self.function.instructions:
            total += 1
            if uses_mba(ins):
                mba_count += 1

        if total == 0:
            return 0.0

        return mba_count / total

def get_dominated_by(dominator):
    """
    Get the dominators that are dominated by the given dominator.
    (To recall the theory, a basic block B is called dominator for A if every path from START
    to A must include B)
    """
    result = set()
    worklist = deque([dominator])

    while worklist:
        block = worklist.popleft()
        if block in result:
            continue
        result.add(block)
        worklist.extend(block.dominator_tree_children)

    return result

_ARITHMETIC_OPS = frozenset({
    HighLevelILOperation.HLIL_ADD,
    HighLevelILOperation.HLIL_NEG,
    HighLevelILOperation.HLIL_SUB,
    HighLevelILOperation.HLIL_MUL,
    HighLevelILOperation.HLIL_DIVS,
    HighLevelILOperation.HLIL_MODS,
})

_LOGIC_OPS = frozenset({
    HighLevelILOperation.HLIL_NOT,
    HighLevelILOperation.HLIL_AND,
    HighLevelILOperation.HLIL_OR,
    HighLevelILOperation.HLIL_XOR,
    HighLevelILOperation.HLIL_LSR,
    HighLevelILOperation.HLIL_LSL,
})

_MBA_OPS = _ARITHMETIC_OPS | _LOGIC_OPS

def uses_mba(hlil_instruction):
    uses_logic = False
    uses_arithmetic = False
    stack = [hlil_instruction]

    while stack:
        instruction = stack.pop()

        if not isinstance(instruction, highlevelil.HighLevelILInstruction):
            continue

        op = instruction.operation

        if op not in _MBA_OPS:
            for operand in instruction.operands:
                if isinstance(operand, highlevelil.HighLevelILInstruction):
                    stack.append(operand)
            continue

        if op in _ARITHMETIC_OPS:
            uses_arithmetic = True
        else:
            uses_logic = True

        if uses_logic and uses_arithmetic:
            return True

        for operand in instruction.operands:
            if isinstance(operand, highlevelil.HighLevelILInstruction):
                stack.append(operand)

    return False