The document discusses using formal concept analysis (FCA) to identify traits in object-oriented code. It presents an approach involving two main stages: (1) generating input for FCA by detecting duplications and unnecessary implementations in a class hierarchy, and (2) applying FCA separately to each class and trait to identify formal concepts and potential refactorings into traits. It illustrates the approach on the Stream hierarchy from the ST-80 libraries, finding many methods were implemented "too high" in the hierarchy or duplicated across subclasses. The goal is to automatically identify traits to improve code reuse without the complexity of multiple inheritance.
Prototype-based Programming with JavaScriptlienhard
This are the slides from a 2 hour lecture introducing object-oriented prototype-based programming. It includes an introduction to JavaScript, delegation, constructors, and closures.
This document provides a tutorial on building concept lattices from numerical data using pattern structures. It introduces pattern structures as a way to handle numerical data in Formal Concept Analysis without needing to binarize the data. Pattern structures allow considering similarity between values using a similarity relation and meet operator on interval patterns. The document outlines key concepts of pattern structures, how numerical data can be treated as pattern structures, and how a similarity relation can be introduced to group similar objects in concepts. It also discusses ways to project patterns to change the granularity of the concept lattice.
Recommendation and Information Retrieval: Two Sides of the Same Coin?Arjen de Vries
Status update on our current understanding of how collaborative filtering relates far more closely to information retrieval than usually thought. Includes work by Jun Wang and Alejandro Bellogín. This presentation has been given at the Siks PhD student course on computational intelligence, May 24th, 2013
Cat x x
A⊂G A′ ⊂ M Oak x x
Potato x x
Formal concept analysis studies how objects can be grouped hierarchically based on their common attributes. It models concepts as units consisting of an extension (objects belonging to the concept) and an intension (attributes common to those objects). Formal contexts represent relationships between objects and attributes, and derivation operators identify the attributes common to a group of objects or the objects sharing a group of attributes.
The document discusses formal concept analysis (FCA), a mathematical theory for modeling concepts in data. FCA can be applied to large datasets to help manage and structure the information by discovering formal concepts and concept hierarchies. As an example, FCA is applied to a music library dataset to allow searching for songs based on genres, discover relationships between genres, and analyze a user's preferences through their music selections. FCA represents the dataset as a formal context and derives hierarchies of formal concepts from the context to help organize and understand the information in a mathematically rigorous way.
Context-Aware Recommender System Based on Boolean Matrix FactorisationDmitrii Ignatov
In this work we propose and study an approach for collaborative filtering, which is based on Boolean matrix factorisation and exploits additional (context) information about users and items. To avoid similarity loss in case of Boolean representation we use an adjusted type of projection of a target user to the obtained factor space.
We have compared the proposed method with SVD-based approach on the MovieLens dataset. The experiments demonstrate that the proposed method has better MAE and Precision and comparable Recall and F-measure. We also report an increase of quality in the context information presence.
Concept-Based Information Retrieval using Explicit Semantic AnalysisOfer Egozi
My master's thesis seminar at the Technion, summarizing my research work which was partly published in a AAAI-08 paper and now submitted to TOIS. Download and read notes for more details. Comments/questions are very welcome!
Multimedia content based retrieval slideshare.pptgovintech1
information retrieval for text and multimedia content has become an important research area.
Content based retrieval in multimedia is a challenging problem since multimedia data needs detailed interpretation
from pixel values. In this presentation, an overview of the content based retrieval is presented along with
the different strategies in terms of syntactic and semantic indexing for retrieval. The matching techniques
used and learning methods employed are also analyzed.
Prototype-based Programming with JavaScriptlienhard
This are the slides from a 2 hour lecture introducing object-oriented prototype-based programming. It includes an introduction to JavaScript, delegation, constructors, and closures.
This document provides a tutorial on building concept lattices from numerical data using pattern structures. It introduces pattern structures as a way to handle numerical data in Formal Concept Analysis without needing to binarize the data. Pattern structures allow considering similarity between values using a similarity relation and meet operator on interval patterns. The document outlines key concepts of pattern structures, how numerical data can be treated as pattern structures, and how a similarity relation can be introduced to group similar objects in concepts. It also discusses ways to project patterns to change the granularity of the concept lattice.
Recommendation and Information Retrieval: Two Sides of the Same Coin?Arjen de Vries
Status update on our current understanding of how collaborative filtering relates far more closely to information retrieval than usually thought. Includes work by Jun Wang and Alejandro Bellogín. This presentation has been given at the Siks PhD student course on computational intelligence, May 24th, 2013
Cat x x
A⊂G A′ ⊂ M Oak x x
Potato x x
Formal concept analysis studies how objects can be grouped hierarchically based on their common attributes. It models concepts as units consisting of an extension (objects belonging to the concept) and an intension (attributes common to those objects). Formal contexts represent relationships between objects and attributes, and derivation operators identify the attributes common to a group of objects or the objects sharing a group of attributes.
The document discusses formal concept analysis (FCA), a mathematical theory for modeling concepts in data. FCA can be applied to large datasets to help manage and structure the information by discovering formal concepts and concept hierarchies. As an example, FCA is applied to a music library dataset to allow searching for songs based on genres, discover relationships between genres, and analyze a user's preferences through their music selections. FCA represents the dataset as a formal context and derives hierarchies of formal concepts from the context to help organize and understand the information in a mathematically rigorous way.
Context-Aware Recommender System Based on Boolean Matrix FactorisationDmitrii Ignatov
In this work we propose and study an approach for collaborative filtering, which is based on Boolean matrix factorisation and exploits additional (context) information about users and items. To avoid similarity loss in case of Boolean representation we use an adjusted type of projection of a target user to the obtained factor space.
We have compared the proposed method with SVD-based approach on the MovieLens dataset. The experiments demonstrate that the proposed method has better MAE and Precision and comparable Recall and F-measure. We also report an increase of quality in the context information presence.
Concept-Based Information Retrieval using Explicit Semantic AnalysisOfer Egozi
My master's thesis seminar at the Technion, summarizing my research work which was partly published in a AAAI-08 paper and now submitted to TOIS. Download and read notes for more details. Comments/questions are very welcome!
Multimedia content based retrieval slideshare.pptgovintech1
information retrieval for text and multimedia content has become an important research area.
Content based retrieval in multimedia is a challenging problem since multimedia data needs detailed interpretation
from pixel values. In this presentation, an overview of the content based retrieval is presented along with
the different strategies in terms of syntactic and semantic indexing for retrieval. The matching techniques
used and learning methods employed are also analyzed.
The document provides a master test specification for testing the Simple Railroad Command Protocol (SRCP). It outlines the test plan including using black box and white box testing techniques. The test plan defines the test levels, environment, tools, and schedule. Key test areas are identified as network communication, SRCP connection modes, and general valid/invalid requirements. Requirements for testing are specified, including general requirements related to SRCP servers, commands, replies, and the handshake process.
Rakuten aims to become the number one global internet company. To achieve this goal, Rakuten plans to run their entire business in English to create value between the internet and traditional businesses worldwide. Founded in 1997 in Japan, Rakuten has expanded over the years through mergers and acquisitions to offer a variety of e-commerce, travel, fintech, and other services globally.
The document summarizes the activities of the Rotary Club of Makati South Lorenzo for September and early October 2009. It discusses relief efforts for victims of Typhoon Ondoy, including donating goods and coordinating with other clubs to distribute supplies. It also lists upcoming district events in October and birthdays being celebrated within the club that month. Key club projects discussed include a hair grooming training program and participation in cleaning up the Pasig River.
The document discusses various tax concepts related to rental properties and income, including:
1) There are three categories for vacation homes based on personal vs rental use, with different tax treatment for each. Rental losses from a property are limited if personal use exceeds limits.
2) Expenses must be allocated between rental and personal use based on days of use. Rental deductions are limited to rental income.
3) An example calculates deductions reported on Schedules E and A for a rental property based on days of personal vs rental use.
This document discusses the challenges of open source biological software projects including community engagement, integration with other tools, and increasing accessibility (democratization). It provides examples of how the Biopython project addresses these challenges such as through the Google Summer of Code program, improving documentation, and leveraging cloud computing resources to more easily distribute and access biological data and tools.
Ella purchased an apartment complex for $7 million in 1991. She accumulated $6.1 million in depreciation deductions by the time she sold it on 9/3/2011 for $8.5 million. Her realized gain is $1.4 million ($8.5 million sales price minus her $7 million original cost basis). This gain will be split between section 1231 gain and a 25% rate for the unrecaptured depreciation amount. The 25% rate applies to gains attributable to depreciation deductions taken in excess of what would have been allowed under the straight-line depreciation method.
The document discusses Rotary International's relief efforts in response to natural disasters that impacted the Philippines, Samoan Islands, and Indonesia in early October 2009. It details how local Rotary clubs distributed urgent relief supplies like food, water, shelter and clothing to over 500 families affected by Typhoon Parma in the Philippines. It also discusses how Rotary clubs partnered with other organizations to provide tents, blankets and emergency response kits containing necessities to victims of an earthquake in Indonesia and tsunami in the Samoan Islands. The summary highlights Rotary's work at the grassroots level through local clubs to immediately aid disaster victims and support long-term recovery efforts.
This document summarizes a study on the effects of compression stockings on venous symptoms and quality of life in pregnant women with venous insufficiency. The study followed pregnant women with various levels of venous insufficiency who either did or did not wear compression stockings. It found that symptoms like leg pain, heaviness, and edema either stabilized or improved in women who wore compression stockings, while symptoms worsened in women who did not. Wearing compression stockings appeared to prevent worsening of venous disease during pregnancy.
This document contains lecture slides for CSE340 - Principles of Programming Languages. It introduces lexical analysis and discusses how it is used to break source code into individual tokens by identifying strings and words. The key steps of lexical analysis are described, including reading the text line by line, grouping characters into strings, and verifying strings as valid words to create a vector of tokens. Regular expressions and deterministic finite automata are also introduced as techniques for defining token rules. Students are assigned to review these topics for lexical analysis in the provided textbook.
A. Apollonio - L. Benedetti Valentini - M. Catalano - F. Conti - A. D'Alessandro - M.
Danese - L. Irace - C. Pratesi - E. Rescigno - R. Serra
11.00 – 13.00 Joint symposium with Italian Society of Vascular Surgery (SICVE)
Vascular access for hemodialysis
President: G. Botta
Chairmen: L. Bagnato - S. Novo
G. Arpaia: Native arteriovenous fistula
L. Traina: Prosthetic arteriovenous graft
S. Camilli: End
This document contains lecture slides for CSE340 - Principles of Programming Languages. It discusses intermediate code for while loops, if statements, and switch statements. It also covers a homework assignment to translate source code to intermediate code using a switch statement. The slides were presented by Javier Gonzalez-Sanchez and include code examples, notes on symbol tables, and a review of programming assignment 4.
This document contains lecture slides for CSE340 on lexical analysis. It introduces key concepts like regular expressions, tokens, and deterministic finite automata (DFAs). Examples are provided for regular expressions defining tokens for integers, floats, identifiers, and binary numbers. DFAs are presented for binary numbers and strings. Students are assigned homework to define lexical rules for a programming language using regular expressions and DFAs.
Alice is an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web. Alice is a freely available tool designed to be a student's first exposure to object-oriented programming. It allows people to learn fundamental programming concepts in the context of creating animated movies and simple video games. In Alice, 3-D objects (e.g., people, animals, and vehicles) populate a virtual world and students create a program to animate the objects. In Alice we drag and drop graphic tiles to create a program, where the instructions correspond to standard statements in a production oriented programming language, such as Java, C++, and C#. Alice allows us to immediately see how our animation programs run.
A73A CQWW 2012 Contest operation from the Desert of QatarTobias Wellnitz
This presentation was given in the Contest forum at the HamRadio convention 2012 in Friedrichshafen, Germany.
A73A was a Multi/Multi contest participation in Fieldday style from the desert of Qatar. Vertical Antennas were used directly over salt water.
The document appears to be a slideshow containing various photos of people including someone named Ed at different events like weddings, pool halls, and veterans gatherings in locations such as D.C., Hope Mills, Fayetteville, and Kansas. The final sentence indicates the slideshow was made in loving memory of Charles E. Boldt also known as Eddie.
Slides from the guest lecture I gave on Virtual Machines during the Smalltalk course of the University of Bern on December 2, 2009.
http://scg.unibe.ch/teaching/smalltalk
1) Back-in-time debuggers record an execution's complete history to provide more context than a standard call stack when debugging errors. However, this large amount of data can slow programs and overwhelm developers.
2) Flow-centric debugging visualizes object flows through an execution to help developers understand where objects originate. It maps object flows to the execution trace to aid root cause analysis.
3) The Compass debugger implements flow-centric debugging by tracking object flows during program execution and providing a frontend that surfaces this flow data to help developers navigate traces and pinpoint bugs.
The document provides a master test specification for testing the Simple Railroad Command Protocol (SRCP). It outlines the test plan including using black box and white box testing techniques. The test plan defines the test levels, environment, tools, and schedule. Key test areas are identified as network communication, SRCP connection modes, and general valid/invalid requirements. Requirements for testing are specified, including general requirements related to SRCP servers, commands, replies, and the handshake process.
Rakuten aims to become the number one global internet company. To achieve this goal, Rakuten plans to run their entire business in English to create value between the internet and traditional businesses worldwide. Founded in 1997 in Japan, Rakuten has expanded over the years through mergers and acquisitions to offer a variety of e-commerce, travel, fintech, and other services globally.
The document summarizes the activities of the Rotary Club of Makati South Lorenzo for September and early October 2009. It discusses relief efforts for victims of Typhoon Ondoy, including donating goods and coordinating with other clubs to distribute supplies. It also lists upcoming district events in October and birthdays being celebrated within the club that month. Key club projects discussed include a hair grooming training program and participation in cleaning up the Pasig River.
The document discusses various tax concepts related to rental properties and income, including:
1) There are three categories for vacation homes based on personal vs rental use, with different tax treatment for each. Rental losses from a property are limited if personal use exceeds limits.
2) Expenses must be allocated between rental and personal use based on days of use. Rental deductions are limited to rental income.
3) An example calculates deductions reported on Schedules E and A for a rental property based on days of personal vs rental use.
This document discusses the challenges of open source biological software projects including community engagement, integration with other tools, and increasing accessibility (democratization). It provides examples of how the Biopython project addresses these challenges such as through the Google Summer of Code program, improving documentation, and leveraging cloud computing resources to more easily distribute and access biological data and tools.
Ella purchased an apartment complex for $7 million in 1991. She accumulated $6.1 million in depreciation deductions by the time she sold it on 9/3/2011 for $8.5 million. Her realized gain is $1.4 million ($8.5 million sales price minus her $7 million original cost basis). This gain will be split between section 1231 gain and a 25% rate for the unrecaptured depreciation amount. The 25% rate applies to gains attributable to depreciation deductions taken in excess of what would have been allowed under the straight-line depreciation method.
The document discusses Rotary International's relief efforts in response to natural disasters that impacted the Philippines, Samoan Islands, and Indonesia in early October 2009. It details how local Rotary clubs distributed urgent relief supplies like food, water, shelter and clothing to over 500 families affected by Typhoon Parma in the Philippines. It also discusses how Rotary clubs partnered with other organizations to provide tents, blankets and emergency response kits containing necessities to victims of an earthquake in Indonesia and tsunami in the Samoan Islands. The summary highlights Rotary's work at the grassroots level through local clubs to immediately aid disaster victims and support long-term recovery efforts.
This document summarizes a study on the effects of compression stockings on venous symptoms and quality of life in pregnant women with venous insufficiency. The study followed pregnant women with various levels of venous insufficiency who either did or did not wear compression stockings. It found that symptoms like leg pain, heaviness, and edema either stabilized or improved in women who wore compression stockings, while symptoms worsened in women who did not. Wearing compression stockings appeared to prevent worsening of venous disease during pregnancy.
This document contains lecture slides for CSE340 - Principles of Programming Languages. It introduces lexical analysis and discusses how it is used to break source code into individual tokens by identifying strings and words. The key steps of lexical analysis are described, including reading the text line by line, grouping characters into strings, and verifying strings as valid words to create a vector of tokens. Regular expressions and deterministic finite automata are also introduced as techniques for defining token rules. Students are assigned to review these topics for lexical analysis in the provided textbook.
A. Apollonio - L. Benedetti Valentini - M. Catalano - F. Conti - A. D'Alessandro - M.
Danese - L. Irace - C. Pratesi - E. Rescigno - R. Serra
11.00 – 13.00 Joint symposium with Italian Society of Vascular Surgery (SICVE)
Vascular access for hemodialysis
President: G. Botta
Chairmen: L. Bagnato - S. Novo
G. Arpaia: Native arteriovenous fistula
L. Traina: Prosthetic arteriovenous graft
S. Camilli: End
This document contains lecture slides for CSE340 - Principles of Programming Languages. It discusses intermediate code for while loops, if statements, and switch statements. It also covers a homework assignment to translate source code to intermediate code using a switch statement. The slides were presented by Javier Gonzalez-Sanchez and include code examples, notes on symbol tables, and a review of programming assignment 4.
This document contains lecture slides for CSE340 on lexical analysis. It introduces key concepts like regular expressions, tokens, and deterministic finite automata (DFAs). Examples are provided for regular expressions defining tokens for integers, floats, identifiers, and binary numbers. DFAs are presented for binary numbers and strings. Students are assigned homework to define lexical rules for a programming language using regular expressions and DFAs.
Alice is an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web. Alice is a freely available tool designed to be a student's first exposure to object-oriented programming. It allows people to learn fundamental programming concepts in the context of creating animated movies and simple video games. In Alice, 3-D objects (e.g., people, animals, and vehicles) populate a virtual world and students create a program to animate the objects. In Alice we drag and drop graphic tiles to create a program, where the instructions correspond to standard statements in a production oriented programming language, such as Java, C++, and C#. Alice allows us to immediately see how our animation programs run.
A73A CQWW 2012 Contest operation from the Desert of QatarTobias Wellnitz
This presentation was given in the Contest forum at the HamRadio convention 2012 in Friedrichshafen, Germany.
A73A was a Multi/Multi contest participation in Fieldday style from the desert of Qatar. Vertical Antennas were used directly over salt water.
The document appears to be a slideshow containing various photos of people including someone named Ed at different events like weddings, pool halls, and veterans gatherings in locations such as D.C., Hope Mills, Fayetteville, and Kansas. The final sentence indicates the slideshow was made in loving memory of Charles E. Boldt also known as Eddie.
Slides from the guest lecture I gave on Virtual Machines during the Smalltalk course of the University of Bern on December 2, 2009.
http://scg.unibe.ch/teaching/smalltalk
1) Back-in-time debuggers record an execution's complete history to provide more context than a standard call stack when debugging errors. However, this large amount of data can slow programs and overwhelm developers.
2) Flow-centric debugging visualizes object flows through an execution to help developers understand where objects originate. It maps object flows to the execution trace to aid root cause analysis.
3) The Compass debugger implements flow-centric debugging by tracking object flows during program execution and providing a frontend that surfaces this flow data to help developers navigate traces and pinpoint bugs.
This document discusses dynamic analysis techniques for understanding the runtime behavior of object-oriented programs. It describes various sources of runtime information, such as program output, resource usage, and internal instrumentation. Common tools for dynamic analysis include loggers, debuggers, and profilers. Reverse engineering techniques can combine static and dynamic views. Feature-based analysis aims to map features to source code by comparing execution traces.
This document summarizes Adrian Lienhard's PhD defense on dynamic object flow analysis. The defense addressed tracking object references and aliasing at runtime to visualize object flows between classes and features. The thesis proposed explicitly modeling object references using an object flow metamodel to capture activation contexts, object origins, and value transfers. This allows visualizing low-level object dependencies to support tasks like feature location, impact analysis, and test blueprint generation.
Rapid Prototyping Of Visualizations Using Mondrianlienhard
The document discusses rapid prototyping of visualizations using the Mondrian tool. It notes that requirements are often not fully known upfront, and prototyping can reveal new insights. It advocates for shortening development cycles by enabling changes to be applied and take effect immediately. Mondrian uses a declarative scripting language and dynamic container in Smalltalk to allow rapid prototyping through features like hot recompilation and debugging.
Tracking Objects To Detect Feature Dependencieslienhard
This document proposes tracking object flows at runtime to detect feature dependencies. It explains that object aliasing can cause dependencies that are not evident from object creation alone. The approach tracks how references to objects are transferred between features to identify dependencies. An example of detecting dependencies for an IRC client's "Receive Message" feature is provided. The approach is shown to more accurately detect dependencies than prior work.
This document describes an approach called Object Flow Virtual Machine (VM) that enables efficient back-in-time debugging by modeling object references and history as first-class objects. The VM uses garbage collection to delete irrelevant historical data, keeping memory usage low. Evaluation shows the approach retains important history with limited memory growth and reasonable overhead compared to no recording.
This document presents a technique for generating unit test blueprints from execution traces of existing code. The technique instruments a program to collect execution traces and object flow data. An analysis of the traces then extracts test scenarios to generate blueprints showing how to set up test fixtures, execute units under test, and verify expected behavior. An initial case study found the tool worked well at producing tests but had difficulties selecting execution units and initializing objects. The blueprints provide guidance for writing tests for legacy code even when it is not well understood.
The document proposes an object flow analysis technique to track how objects are passed between classes during program execution. It captures all references to an object, models the transfer of references through instantiation, field access, method calls and returns, and represents the flows using a graph with nodes for objects and relationships for passing references. This provides insight into how classes exchange objects and how objects propagate through the system.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Speck&Tech
ABSTRACT: A prima vista, un mattoncino Lego e la backdoor XZ potrebbero avere in comune il fatto di essere entrambi blocchi di costruzione, o dipendenze di progetti creativi e software. La realtà è che un mattoncino Lego e il caso della backdoor XZ hanno molto di più di tutto ciò in comune.
Partecipate alla presentazione per immergervi in una storia di interoperabilità, standard e formati aperti, per poi discutere del ruolo importante che i contributori hanno in una comunità open source sostenibile.
BIO: Sostenitrice del software libero e dei formati standard e aperti. È stata un membro attivo dei progetti Fedora e openSUSE e ha co-fondato l'Associazione LibreItalia dove è stata coinvolta in diversi eventi, migrazioni e formazione relativi a LibreOffice. In precedenza ha lavorato a migrazioni e corsi di formazione su LibreOffice per diverse amministrazioni pubbliche e privati. Da gennaio 2020 lavora in SUSE come Software Release Engineer per Uyuni e SUSE Manager e quando non segue la sua passione per i computer e per Geeko coltiva la sua curiosità per l'astronomia (da cui deriva il suo nickname deneb_alpha).
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!SOFTTECHHUB
As the digital landscape continually evolves, operating systems play a critical role in shaping user experiences and productivity. The launch of Nitrux Linux 3.5.0 marks a significant milestone, offering a robust alternative to traditional systems such as Windows 11. This article delves into the essence of Nitrux Linux 3.5.0, exploring its unique features, advantages, and how it stands as a compelling choice for both casual users and tech enthusiasts.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Maruthi Prithivirajan, Head of ASEAN & IN Solution Architecture, Neo4j
Get an inside look at the latest Neo4j innovations that enable relationship-driven intelligence at scale. Learn more about the newest cloud integrations and product enhancements that make Neo4j an essential choice for developers building apps with interconnected data and generative AI.
1. Identifying Traits with
Formal Concept Analysis
Adrian Lienhard, Stéphane Ducasse and Gabriela Arévalo
Software Composition Group
University of Berne, Switzerland
2. Overview
“too high”...
...cancelled
duplicated
methods
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 2 / 16
3. Overview
“too high”...
...cancelled
duplicated
methods
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 2 / 16
6. Background: Traits in a Nutshell
Generic properties
GraphicalObject
Colored Bordered
Circle Polygon
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 3 / 16
7. Background: Traits in a Nutshell
Generic properties
GraphicalObject
Colored Bordered
Circle Polygon
ColoredCircle BorderedColoredPol.
Colored Bordered
Colored
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 3 / 16
8. Background: Traits in a Nutshell
Generic properties
GraphicalObject
Colored Bordered
Circle Polygon
ColoredCircle BorderedColoredPol. Single inheritance: limited
expressiveness
Colored Bordered
Multiple inheritance:
Colored
complexity
Mixin inheritance: fragility
Goal of traits: reuse mechanism due to linearization
avoiding complexity
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 3 / 16
9. Background: Traits in a Nutshell
Reuse mechanism Trait = “interface with implementation”
complementary to TColored
inheritance [ECOOP’03]
{ }
red rgb
provided green rgb: required
Today in Perl 6, Squeak, =
Scala, Fortress, ... methods methods
hash
...
... ...
ColoredCircle BorderedColoredPol.
trait composition
TColored TBordered
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 4 / 16
10. Roadmap
‣ FCA in a nutshell
‣ Approach overview
‣ Illustration of our approach on case study
‣ Evaluation of case study
‣ Conclusion
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 5 / 16
11. FCA in a Nutshell
properties
small far moon
Mercur x
elements
y
Mars x x
Jupiter x x
Pluto x x x
Concept: maximal group of elements
based on their common properties
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 6 / 16
12. FCA in a Nutshell
properties
small far moon
Mercur x
elements
y
Mars x x
Jupiter x x
Pluto x x x
Concept: maximal group of elements
based on their common properties
{Mars, Pluto, Jupiter},{moon}
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 6 / 16
13. FCA in a Nutshell
properties
small far moon
Mercur x
elements
y
Mars x x
Jupiter x x
Pluto x x x
Concept: maximal group of elements
based on their common properties
{Mars, Pluto, Jupiter},{moon}
{Pluto, Jupiter},{moon, far}
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 6 / 16
14. FCA in a Nutshell
properties Me, Ma, Ju, Pl
small far moon
Mercur x
elements
y
Mars x x Me, Ma, Pl Ma, Ju, Pl
Jupiter x x small moon
Pluto x x x
Ma, Pl Ju, Pl
small, moon moon, far
Concept: maximal group of elements
Pl
based on their common properties
small, moon, far
Concept Lattice
{Mars, Pluto, Jupiter},{moon}
{Pluto, Jupiter},{moon, far}
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 6 / 16
15. FCA in a Nutshell
properties Me, Ma, Ju, Pl
small far moon
Mercur x
elements
y
Mars x x Me, Ma, Pl Ma, Ju, Pl
Jupiter x x small moon
Pluto x x x
Ma, Pl Ju, Pl
small, moon moon, far
Concept: maximal group of elements
Pl
based on their common properties
small, moon, far
Concept Lattice
{Mars, Pluto, Jupiter},{moon} less elements
{Pluto, Jupiter},{moon, far} more properties
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 6 / 16
16. Approach Overview
Stage 1
input generation FCA application filtering manual selection
{
Stage 2
for each class
and trait
input generation FCA application manual selection
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 7 / 16
17. Case Study
‣ ST-80 Stream and Collection libraries
‣ Comparison with purely manual refactoring
[OOPSLA’03]
‣ Illustration of our approach on example of
Stream hierarchy...
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 8 / 16
18. Generating Input for FCA
Detecting cancellations and duplications Stage 1
Identify real interface of a class taking into account...
...
Stream
Idiom “too high”
next
boolean ‣ implement methods “too
sends message next
int32
...
high” in common superclass
‣ (implicitly) cancel methods
WriteStream ReadStream
in inappropriate subclasses
... ...
next next
... ....
ReadWriteStream
...
next Fact ST-80 Collection library:
... 131 methods too high (~10%), and
of those, 106 implicitly cancelled
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 9 / 16
19. Generating Input for FCA
Detecting cancellations and duplications Stage 1
Identify real interface of a class taking into account...
invokes ...
Stream
Idiom “too high”
cancelled next
‣ implement methods “too
boolean
method int32 sends message next
high” in common superclass
...
‣ (implicitly) cancel methods
WriteStream ReadStream
in inappropriate subclasses
... ...
next next
... ....
ReadWriteStream
...
next Fact ST-80 Collection library:
... 131 methods too high (~10%), and
of those, 106 implicitly cancelled
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 9 / 16
20. Applying FCA Stage 1
Elements: all concrete classes
Properties: all concrete methods (identifying duplications)
Mapping: method in the real interface of the class
WS, RWS, RS
atEnd
WS, RWS RWS, RS
atEnd, nextPut:, atEnd, next,
next:put: boolean
WS RWS RS
atEnd, nextPut:, atEnd, nextPut:, atEnd, next,
next:put:, next:put:, next, boolean,
contents1 boolean, contents2 contents3
atEnd, nextPut:,
next:put: next,
boolean, contents1,2,3
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 10 / 16
21. Filtering Stage 1
‣ reduce properties-sets to delta between
sub-/superconcept
‣ remove concepts with no classes
WS, RWS, RS
atEnd
WS, RWS RWS, RS
nextPut:,
next, boolean
next:put:
WS RWS RS
contents1 contents2 contents3
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 11 / 16
22. Selecting Traits and Hierarchy
Reconstruction Stage 1
Partly manual task: deciding whether a
concept becomes a class or a trait
Stream
WriteStream ReadWriteStream ReadStream
TWriteableStream TReadableStream
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 12 / 16
23. Invocation Analysis Stage 2
Generating input: analyzing transitive method
invocations of the class/trait
Applying FCA
‣ elements: all methods of the class/trait
‣ properties: (transitive) method invocations
‣ mapping: identifying invocations with methods
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 13 / 16
24. Selecting Traits Stage 2
Manual task of selecting traits.
Lattice provides interesting alternatives:
‣ Additional methods in super-concepts
‣ Fewer methods in sub-concepts
Stream
ReadStream ReadWriteStream WriteStream
TReadableStream TWriteableStream
TReadableMultiple TWriteablePutData
TReadableFileIn TWriteablePutCharacter
TWriteableMultiple
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 14 / 16
25. Comparison with
Manual Refactoring
Stream library
‣ almost identical result: inheritance reshaping + two
main traits
‣ difference: conceptual vs. functional sub-traits
Collection library
‣ Manual refactoring has identified more traits
‣ Different layers of traits with overriding behavior
‣ Our approach curative, manual approach speculative
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 15 / 16
26. Conclusion
‣ Succeeded in curing problems by
restructuring hierarchy with traits (stage 1)
‣ Successful identification of fine-grained traits
also when code is not shared (stage 2).
‣ Limitations:
• Detection based on conceptual meaning of
methods alone not possible
• Missing methods can cause too small traits
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 16 / 16
27. Conclusion
‣ Succeeded in curing problems by
restructuring hierarchy with traits (stage 1)
‣ Successful identification of fine-grained traits
also when code is not shared (stage 2).
‣ Limitations:
• Detection based on conceptual meaning of
methods alone not possible
• Missing methods can cause too small traits
Questions?
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 16 / 16
28. Refactored Collection
Hierarchy
Legend:
Collection inherits from
composed from
Set SequenceableCollection
SortedCollection OrderedCollection Array
TRemoving- TOrderedSorted- TSequenced-
Elements Common ElementAccess
ASE‘05 - Identifying Traits with FCA Adrian Lienhard - lienhard@iam.unibe.ch 17 / 16