Automated Documentation Generation from Symbolic Code Representations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The process of generating documentation from computer-readable symbolic representations is time-consuming, especially for computer programs, as human interpreters need to painstakingly understand source code and translate it into natural language, which is challenging for non-programmers and requires significant time and effort.

Innovation Solution

A method involving reification of input into coded objects in a dynamic language, data mining to determine relationships, and using a content-reasoning library to generate a document object model, which is then converted into natural language documentation using an interface library, facilitating automated documentation generation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual interpretation and translation of source code into natural language is performed, then documentation accuracy is improved, but time consumption increases significantly

Engineering Contradiction:
Improvedocumentation accuracyVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent introduces an intermediary system consisting of symbolic representation parsers and natural language generation engines that act as mediators between source code and human readers. The system parses source code into symbolic representations (intermediate form) and then generates natural language documentation from these symbols, eliminating the need for manual interpretation while maintaining accuracy through structured transformation rules.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical process of manual code interpretation with an automated computational system. The manual cognitive process of reading, understanding, and translating code is substituted by computer-based parsing, symbolic representation, and natural language generation mechanisms that operate automatically without human intervention.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Measurement precision

If detailed manual examination of source code is performed to understand its meaning, then interpretation accuracy is improved, but productivity decreases

Engineering Contradiction:
Improveinterpretation accuracyVSAvoiddocumentation generation speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent performs preliminary action by automatically parsing source code and generating symbolic representations before natural language documentation is needed. The system pre-processes the code into an intermediate symbolic form that captures the essential meaning and structure, making subsequent documentation generation rapid and accurate without requiring detailed manual examination at the time of documentation creation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a symbolic copy or representation of the source code that preserves its meaning and structure in a different, more processable form. This symbolic representation serves as an accurate copy that can be manipulated and converted into natural language documentation automatically, eliminating the need for repeated manual examination of the original code.

Inventive Principle:
Principle #26Copying

3Ease of operation

If source code is manually remarked to improve understandability, then ease of understanding is improved, but device complexity increases

Engineering Contradiction:
Improvecode understandabilityVSAvoidsystem complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent extracts the documentation generation function from the source code itself. Instead of modifying the code with remarks to improve understanding, the system separates the documentation creation process into an independent automated system that reads the code and generates explanations externally, keeping the original code clean and unchanged.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces symbolic representations as an intermediary layer between source code and natural language documentation. This intermediary symbolic form captures the meaning and structure of the code without requiring modifications to the code itself, maintaining code simplicity while enabling automated documentation generation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8473911B1Documentation generation from a computer readable symbolic representation
Publication Date: 2013.06.25 XILINX INC
  • US8473911B1 patent drawing
  • US8473911B1 patent drawing
  • US8473911B1 patent drawing

AI summary

Generation of documentation from a computer readable symbolic representation is described. In an embodiment, a reified version of an input is obtained as coded objects. The input is readable by a programmed computer for execution, and is in an applied form of a symbolic representation of knowledge for a defined domain of knowledge. The reified version is a coded form of the applied form, wherein the coded objects are in a dynamic language. A content sequence library is accessed by the programmed computer responsive to the coded objects to extract content for a document plan. A reasoning library is then accessed by the programmed computer responsive to the content extracted to provide a sequenced organization of phrase structure for the content extracted. A natural language representation of the input is output from a realization of the sequenced organization of phrase structure.