Patent application number | Description | Published |
20080256512 | OUT OF BAND DATA AUGMENTATION - Systems and methods facilitate data augmentation in a computer environment. Data collections of various forms are altered out of band with at least one augmentor specifying alterations thereto. The alterations are applied to an associated collection of data such as programmatic code. In this manner, data can be modified, extended and/or removed from the collection to enable specialization and/or personalization, among other things. | 10-16-2008 |
20090024683 | N-Dimensional Coordinates Conversion - Aspects of the subject matter described herein relate to converting between polar and rectangular coordinates. In aspects, the Nth polar angle is measured upward from the sine-projection of the Nth component in the (N−1)th dimension. The last polar coordinate is zero if and only if the corresponding last rectangular coordinate is zero. The conversion may be applied in any number of dimensions without re-writing the conversion logic. | 01-22-2009 |
20090024986 | RUNTIME CODE MODIFICATION - Source languages are translated to target dynamic programming languages. Runtime functionality including reflection and/or dynamic code modification exposed by a source language is mapped to a dynamic language implementation such as that of a script language. Target language dynamism is leveraged to efficiently support runtime functionality in a source language that is more static, for example. | 01-22-2009 |
20090030659 | SEPARABLE INTEGRATION VIA HIGHER-ORDER PROGRAMMING - Separable integration is provided for simulation contexts where modeling and integration can be considered separately when programmatically implementing the simulations, for example. Thus, modeling concepts can be defined relating to the simulation, and integration of the modeling concept can happen separately to provide more variety to meet modeling specifications. In one embodiment, a state-space form equation can be computed for a modeling concept equation (an equation of motion, for example) and an integration scheme can be applied to the state-space form equation regardless of the modeling equation from which it was computed. In this regard, integration can be focused on to provide a plurality of schemes for different contexts, for example. | 01-29-2009 |
20090049421 | AUTOMATIC AND TRANSPARENT MEMOIZATION - Functions are memoized automatically and transparently. Memoized code can be injected automatically within a program to facilitate efficient and/or expeditious execution thereof, among other things. The memoized code can intercept calls to an original function and return values in accordance with the code. Accordingly, callers of the function need not do anything special and can invoke the function without knowledge of it being memoized. | 02-19-2009 |
20090112975 | PRE-FETCHING IN DISTRIBUTED COMPUTING ENVIRONMENTS - Client-side performance is optimized through server-side pushing of content. Portions of content are requested and retrieved as required by a client-side application. Moreover, content likely to be needed in the near future is pre-fetched and pushed to the client. This is beneficial from an overhead standpoint since all content need not be provided to the client at once. Rather, content provisioning is throttled based on need, and wait time is mitigated by pre-fetching. | 04-30-2009 |
20090132998 | DEBUGGING MULTI-EXECUTION ENVIRONMENT APPLICATIONS - A framework is provided that allows for debugging of applications/systems that execute in multiple execution environments. Instead of using the native application programming interface to interact with an execution environment, an alternative implementation of at least some of the application programming interface of the native execution environment is employed to facilitate debugging in a disparate execution environment. | 05-21-2009 |
20090249282 | CROSS PLATFORM COMPOSITIONAL WIDGETS - Mechanisms are afforded for supporting cross platform widgets. A generic widget can be converted into a specialized widget of a corresponding platform. Dually, a specialized widget can be generalized to a generic widget for subsequent deployment on the same or different host. Furthermore, support is provided for compositional widgets across platforms. | 10-01-2009 |
20090276795 | VIRTUAL AUTOMATA - Computer-based machines can be modeled after a virtual automaton. The virtual automaton defines processes that are not bound statically to particular behavior but rather perform a lookup at runtime to bind behavior to a specific process mechanism. In accordance with one aspect, binding can be dependent upon runtime context information such as object type. Instances of virtual automaton are provided in the context of graph processing including serialization of object graphs and scanning/parsing, among others. | 11-05-2009 |
20090325694 | MACROSCOPIC QUANTUM EFFECTS FOR COMPUTER GAMES - The claimed subject matter provides a system and/or a method that facilitates providing a realistic simulation within a gaming environment. A gaming environment can enable at least one user to interact with a computer game in order to produce visual feedback in which the computer game includes a simulation that mimics an event in a physical real world. A macroscopic quantum effects (MQE) engine can utilize quantum physics as a basis for at least one simulation within the gaming environment, wherein the MQE engine leverages an equation related to quantum physics which enables the simulation to replicate a property associated with realistic quantum mechanics. An interface can allow data communication between the gaming environment and the MQE engine. | 12-31-2009 |
20090327183 | Analytical model solver framework - A solver framework for use with an analytical model. The analytical model includes multiple model parameters and includes definitions for analytical relationships between the model parameters. The solver framework coordinates the processing of multiple specialized solvers. In particular, the solver framework identifies which model parameters are input model variables and which are output model variables. The solver framework then analyzes dependencies to determine a solve order to solve for the output model variables. The solver framework then charged the specialized solvers with performing portions of the solve operation such that the specialized solvers solve for the output model variables in an order which considers the dependencies. In one embodiment, additional or replacement solvers may register with the solver framework to thereby make the specialized solver available for solving for output model variables in the future. | 12-31-2009 |
20100086208 | ALMOST RECTANGULAR TRIANGULATIONS - Triangulating quadrilaterals. A method includes accessing an irregular grid comprising a plurality of irregular quadrilaterals. A determination is made that each of the irregular quadrilaterals in the irregular grid is not a concave and is a convex quadrilateral. On a grid basis and as a result of determining that each of the irregular quadrilaterals in the irregular grid is not a concave and is a convex quadrilateral, each of the irregular quadrilaterals in the irregular grid is triangulated to create a triangular mesh by defining diagonals from at least one vertex point of each of the irregular quadrilaterals in the irregular grid to the diagonally opposed vertex point of the same irregular quadrilateral. The triangular mesh is stored in a computer readable storage medium that can be accessed by an application for performing tasks related to data visualization, computer graphics, computational geometry, etc. | 04-08-2010 |
20100156900 | IMPLIED ANALYTICAL REASONING AND COMPUTATION - Solving for output variable(s) of a model that includes multiple analytically related model variables. The identity of the output model variables and the analytical relationships between the model variables are separately designated. Regardless of the identity of the output variable(s), a solver framework interprets the analytical relationships and solves for the designated output variable(s). The output model variable(s) may be designated separately than the analytical relationships themselves. By simply changing the designation of the output model variable(s), the analytical relationships are reevaluated, and the output variable(s) are solved for. The solver framework itself stays the same regardless of the identity of the output model variable(s). | 06-24-2010 |
20100158245 | IMPLICIT ITERATION OF KEYED ARRAY SYMBOL - The use of a data structure that is a symbolic representation of a keyed array that has an array variable and an associated key variable. There is a correlation maintained between the variable type of the array variable and the corresponding keying set that is to be bound to the associated key variable. The keyed array may remain unbound thereby being simply symbolically represented, or the keying set may be bound to the key variable more immediately. In one embodiment, once the keying set is bound to the key variable, data may be bound to the array variable itself. This may be repeated for multiple keyed arrays. The data from multiple keyed arrays may be operated upon to about another array of values, which may then be aggregated in some way. | 06-24-2010 |
20100162218 | RELAXED AND EXTENDED DELEGATES - Systems and methods that enhance expressibility in a programming language (e.g., Visual Basic) via relaxation of artificial restrictions and extension of delegates associated therewith, without changing the runtime infrastructure. A stub is employed that can replace an impermissible expression in the programming language, to leverage the existing permissible expressions. | 06-24-2010 |
20100321391 | COMPOSING SHAPES AND DATA SERIES IN GEOMETRIES - A renderable geometry the may be populated with shapes and data series. The geometry defines a set of dimensions to be applied to the shapes. The geometry further defines and enforces a construction of the shapes around the set of dimensions, and applies the data series to the plurality of shapes against at least one of the set of dimensions. The formulate of the geometry may be recursively performed. For instance, the geometry may be provided as a shape in a set of shapes provided to yet another geometry with another data series. The data series might be reversibly applied to one of the dimensions, allowing for complex geometries to be created with data represented in very flexibly ways. | 12-23-2010 |
20100324870 | SOLVER-BASED VISUALIZATION FRAMEWORK - Visualization frameworks may include solvers. The solvers may be used to determine the properties of view components of view compositions. In some instances, the solvers may be explicitly composed using a relational structure, such as a dependency tree. In some instances, the solvers may be implicitly composed based on property-setters having solvers invoking other property-setters having solvers. | 12-23-2010 |
20100325196 | DATA-DRIVEN VISUALIZATION OF PSEUDO-INFINITE SCENES - The use of a data stream object to enumerate elements of a data stream to thereby drive rendering of a data-driven model. The data driven model includes multiple view components that may use their own construction logic to render visual items based on data provided to their input parameter(s). The data stream may be quite large, in which case, only a portion of the data stream is enumerated by the data stream object. The enumerated elements of the data stream may be used to populate the input parameters of the view components, and or may be provided to analytics, from which input parameters of the view components may be derived. Thus, a data stream, regardless of its size, may be dealt with in the consistent manner to thereby drive the data-driven model. | 12-23-2010 |
20100325564 | CHARTS IN VIRTUAL ENVIRONMENTS - The application of chart data to a virtual space. The chart data is accessed and a virtual space is formulated. The virtual space is a computerized representation of a plurality of spatially interrelated visual items. The chart data is merged with the virtual space. As an example, the chart data might represent spatially significant information. For instance, one data item in the chart data might represent information about a first point or region in the virtual space, another data item in the chart data might represent information about a second point or region in the virtual space, and so forth. Merging of the chart data might involve changing property(s) of corresponding regions of space depending on value(s) of the associated chart data. | 12-23-2010 |
20110060704 | DEPENDENCY GRAPH IN DATA-DRIVEN MODEL - The inference of a dependency graph that represents a graph of solves that leads from input model parameter(s) to output model parameters using analytics. In one embodiment, the dependency graph is part of visually driven analytics in which the output model parameter(s) are used to formulate data-drive scenes. As the identity of the input and/or output model parameter(s) change, or as the analytics themselves change, the dependency graph may also change. This might trigger a resolve of the analytics. In one embodiment, the intermediate parameters involved in the dependency graph may be viewed and evaluated by the user. | 03-10-2011 |
20110072413 | EMBEDDING EXPRESSIONS IN XML LITERALS - An architecture that that extends conventional computer programming languages that compile into an instance of an extensible markup language (XML) document object model (DOM) to provide support for XML literals in the underlying programming language. This architecture facilitates a convenient short cut by replacing the complex explicit construction required by conventional systems to create an instance of a DOM with a concise XML literal for which conventional compilers can translate into the appropriate code. The architecture allows these XML literals to be embedded with expressions, statement blocks or namespaces to further enrich the power and versatility. In accordance therewith, context information describing the position and data types that an XML DOM can accept can be provided to the programmer via, for example, an integrated development environment. Additionally, the architecture supports escaping XML identifiers, a reification mechanism, and a conversion mechanism to convert between collections and singletons. | 03-24-2011 |
20110239229 | PREDICATIVE AND PERSISTENT EVENT STREAMS - An event driven application may predict a future event and spawn an event stream from the predicted event. The spawned event stream may be performed as a predicted operation until the prediction is confirmed to be correct or incorrect. The predicted operation may generate results that may be present when the prediction is confirmed. In some cases, the results may be used prior to the predicted event, while in other cases, the results may be cached until the prediction is confirmed. In some cases, the predicted operation may be merged with an actual event stream when the predicted event occurs. The prediction mechanism may enhance performance, enable operations that would otherwise be difficult, and may save battery life or energy in some devices. | 09-29-2011 |
20110246549 | ADAPTIVE DISTRIBUTION OF THE PROCESSING OF HIGHLY INTERACTIVE APPLICATIONS - An application defined by expressions whose execution may be dynamically distributed over multiple devices. An application defined by expressions may include a number of expressions that provide a symbolic representation of computations to be performed. The application defined by expressions may have input variables and output variables and provide a solution for the output variables using the input variables and the expressions that define the application. In providing a solution for the output variables, an expression engine may determine dependencies for the expressions to be solved and distribute the solution of some of those expressions dynamically at runtime to other devices based on the capabilities of the devices, privacy and security concerns, communications bandwidth and latency, the resources available to devices, and commercial or cost implications of where the processing is done. | 10-06-2011 |
20110246962 | STATE MACHINE EXPRESSIONS IN DATABASE OPERATORS - A state machine may be represented using event-driven objects in a database query language. A bind operator from a database query language may be used as a state transition function, where the transition function has side effects defining the state. The objects may be manipulated with event driven expressions and operators and perform what would otherwise be complex operations with simple state machines. | 10-06-2011 |
20110264645 | INFORMATION PRESENTATION SYSTEM - An information presentation system that identifies information of interest to a user based on identifying tasks that may be relevant to the user given the user's current context. The user may be presented with an option to select from among relevant tasks and/or goals of completing the task. For each selected task and goal, the system may generate one or more sets of items that are relevant to completing the task. The user may be presented with the option to select from among the sets of items or to navigate among the sets of items. Such a system may be used to provide an easy-to-use interface on a portable computing device to support shopping applications. | 10-27-2011 |
20110314400 | ASSISTED FILTERING OF MULTI-DIMENSIONAL DATA - Interactive and dynamic exploring of filter criteria for large amounts of numerical data having multiple dimensions is described. Exploration occurs without excessive amounts of computation or querying of a database based on a data set summary that may be obtained from a server in a search system and applied by a client device. A data set is summarized so as to capture relationships between distributions of items in the data set along multiple dimensions. To explore filter criteria, a user may interactively adjust a range of values that act as a filter criteria along a dimension and determine an effect on a distribution of items along another dimension. The client device may apply the data summary in reverse to determine, based on user input specifying aspects of a distribution along one dimension, filter criteria for another dimension that would result in the specified distribution. | 12-22-2011 |
20120159312 | REPRESENTATION OF AN INTERACTIVE DOCUMENT AS A GRAPH OF ENTITIES - Techniques for representing and publishing an interactive document useful for analyzing data. The document may be represented as a directed acyclic graph of entities interconnected by edges. The entities may be of multiple types. Yet, a broad range of interactive documents may be represented by a limited number of types of entities and the capabilities to interconnect entities of different types and to share a data schema across entities of different types. A tool may enable a user to author such documents. The tool may also facilitate publishing of the document. For publishing, the document may be converted to an executable form. Prior to such a conversion, the graph may be modified for more efficient processing. The graph may also be partitioned such that portions of the graph, when distributed across tiers of a computing system, such as a cloud-based platform, execute on computing devices that provide efficient operation. | 06-21-2012 |
20120159333 | REPRESENTATION OF AN INTERACTIVE DOCUMENT AS A GRAPH OF ENTITIES - Techniques for representing and publishing an interactive document useful for analyzing data. The document may be represented as a directed acyclic graph of entities interconnected by edges. The entities may be of multiple types. Yet, a broad range of interactive documents may be represented by a limited number of types of entities and the capabilities to interconnect entities of different types and to share a data schema across entities of different types. A tool may enable a user to author such documents. The tool may also facilitate publishing of the document. For publishing, the document may be converted to an executable form. Prior to such a conversion, the graph may be modified for more efficient processing. The graph may also be partitioned such that portions of the graph, when distributed across tiers of a computing system, such as a cloud-based platform, execute on computing devices that provide efficient operation. | 06-21-2012 |
20120310527 | ASYMMETRIC DYNAMIC GEO-FENCING - Architecture that enables location based notifications (e.g., geo-fences) using standard polygons the capture of complex regions. As applied to geo-fencing, it extends geo-fencing beyond the mere representation of the virtual perimeter (fenced) area. More specifically, the architecture takes into consideration geographical and demographical features, such as the layout of the roads and streets, the types of available of transportation (e.g., car, bus, walk, biking, etc.), the traffic conditions, and the dynamic properties of a point of interest (POI) such as opening hours, total wait time, etc. More specifically, the architecture enables the dynamic modification of polygon geo-fence based on POI properties, dynamic modification of polygon geo-fence based on road/street layout, dynamic modification of polygon geo-fence based on means of transportation, dynamic modification of polygon geo-fence based on traffic conditions, dynamic modification of polygon geo-fence based on user's state, and dynamic recalculation of regions and directions tailored to user interests. | 12-06-2012 |
20130091197 | MOBILE DEVICE AS A LOCAL SERVER - Architecture that embeds a server (a local server) inside a mobile device operating system (OS) close to the data (but under the OS services) such that the server has access to native capabilities, and offers an Internet-like frontend with which a browser or application can communicate. The local server appears as a web server, and small programs can be pushed into the local server from the browser or a remote server such that the local server can be made to perform work more effectively. Local and remote events can be triggered such as launching a browser (or other application(s)), initiating remote server calls, triggering battery save mode, locking the phone, etc. The local server can run a script execution environment such as node.js, an event driven I/O model where callbacks are invoked to handle emergent conditions (e.g., explicit requests, state changes, etc.). | 04-11-2013 |
20130097440 | EVENT SERVICE FOR LOCAL CLIENT APPLICATIONS THROUGH LOCAL SERVER - In server/client architectures, the server application and client applications are often developed in different languages and execute in different environments specialized for the different contexts of each application (e.g., low-level, performant, platform-specialized, and stateless instructions on the server, and high-level, flexible, platform-agnostic, and stateful languages on the client) and are often executed on different devices. Convergence of these environments (e.g., server-side JavaScript using Node.js) enables the provision of a server that services client applications executing on the same device. The local server may monitor local events occurring on the device, and may execute one or more server scripts associated with particular local events on behalf of local clients subscribing to the local event (e.g., via a subscription model). These techniques may enable development of local event services in the same language and environment as client applications, and the use of server-side code in the provision of local event service. | 04-18-2013 |
20130290987 | TYPE INFERENCE AND TYPE-DIRECTED LATE BINDING - Systems and methods that enhance and balance a late binding and an early binding in a programming language, via supplying an option component to opt-in (or opt-out) late binding, and wherein a late binding is triggered based on a static type for the variable (e.g., object or a type/string.) Additionally, the variable is enabled to have different static types at different regions (e.g., a program fragment) of the programming language. | 10-31-2013 |
20130335337 | TOUCH MODES - Touch modes are described. In one or more implementations, a first mode of interaction is supported with a user interface displayed by a display device of a computing device having touchscreen functionality, the first mode usable to interact directly with a user interface using the touchscreen functionality. A second mode of interaction is supported with the user interface displayed by the display device of the computing device, the second mode usable to control a cursor using the touchscreen functionality to interact with the user interface. | 12-19-2013 |
20140164887 | EMBEDDED CONTENT PRESENTATION - Among other things, one or more techniques and/or systems are provided for presenting embedded content portraying an entity and/or for maintaining a user profile based upon user exposure to one or more entities. That is, content, such as an image or video, may portray one or more entities (e.g., a product, location, business, etc.). To aid a user in identifying an entity and/or remembering the entity, entity information may be embedded into the content. The entity information may describe the entity and/or provide one or more actions that the user may take with regard to the entity (e.g., open a shopping application to view a hand bag entity). Personalized recommendations may be provided to a user based upon a user profile derived from exposure of the user to various entities (e.g., a vacation recommendation may be provided based upon vacation entities exposed to the user in a positive light). | 06-12-2014 |
20140324503 | MULTI-SOURCE DATA SUBSCRIPTIONS - Techniques and/or systems are provided for performing an action based upon a subscription to multi-source data. That is, a subscription may specify one or more actions that are to be performed upon satisfaction of a set of conditions associated with one or more data sources. For example, a subscription for a user Joe may specify that a flower order is to be placed when a current date is Valentine's day, a social network profile for Joe indicates Joe has a significant other, and a local flower shop has roses in stock. In this way, a subscription may be based upon various data sources, such as a calendar, a social network, and a flower supply data source. Because a vast number of subscriptions may be maintained, conditions may be organized into a graph such that a condition, shared by multiple subscriptions, is represented by a single node within the graph. | 10-30-2014 |
20140344344 | PRE-FETCHING IN DISTRIBUTED COMPUTING ENVIRONMENTS - Client-side performance is optimized through server-side pushing of content. Portions of content are requested and retrieved as required by a client-side application. Moreover, content likely to be needed in the near future is pre-fetched and pushed to the client. This is beneficial from an overhead standpoint since all content need not be provided to the client at once. Rather, content provisioning is throttled based on need, and wait time is mitigated by pre-fetching. | 11-20-2014 |